アドインを作る

マクロ / VBA

ユーザー定義関数やマクロというのは、コードを書いたそのエクセルファイルにしか適用されません。便利な定義関数やマクロを他のファイルでも使えるようにするのに、いちいちVBEからコードをコピーしていたんじゃあ面倒です。
そこで今回はアドインを自分で作ってエクセル本体にマクロ、定義関数を登録してみましょう。
これをすると
・ 登録されたパソコンのエクセルで常に使える状態になる。
・ 他のパソコンにも提供したい場合アドインファイルを渡すだけ。
よくネットにもアドインは出回っていますが、大概この方法でアドインを作成しています。
良いアドインが出来ればネットで提供してもいいかもしれません。
範囲指定しているデータの中から値だけをクリア!
を作ってみたいと思います。

範囲指定いているデータの中から値だけをクリアする方法(手動)

30-1.jpg
このデータの品名は残して数量と金額だけ消したい時、単純にB4からC8を範囲指定し消せばいいんですが、複雑な表になると消したい項目を一気に範囲指定出来ない時がしばしば。
A3からC8まで範囲指定して、数値だけを消したい場合
メニューの編集からジャンプを選択
30-2.jpg
セル選択をクリック
30-3.jpg
選択オプションで「定数」を選択
そして数値、文字、論理値、エラー値にチェックが入っているので数値だけチェックを残し「OK」
30-4.jpg
そうすると今範囲選択していた部分の数値だけを選択した状態になります。
そこでDeleteキーを押してデータを消せば数値だけを消す事が出来ます。
この方法で文字だけを選択、エラーだけを選択も可能です。

コード

これを自動でするマクロコードはこちら

Sub data_clear()
Selection.SpecialCells(xlCellTypeConstants, 1).Select
Selection.ClearContents
End Sub

すごく簡単にしか書いていませんが、内容は今選択してる内の値だけを選択し、クリアする。という処理です。

アドイン化

このコードをVBEのモジュールに書いたらアドイン化です。
30-5.jpg

エクセルファイルを名前をつけて保存する時に[Microsoft Office Excel アドイン (*.xla)]で保存します。保存場所は通常変更しないように注意してください。
30-6.jpg

アドインの有効化 & マクロ登録

これでアドインの登録が終わりましたので、次にアドインを有効にさせないと動きません。
メニューの「ツール」→「アドイン」でアドイン画面を開きます。
30-7.jpg
先ほど登録した「Dataclear」というのにチェックを入れます。
これでこのアドインは有効化されました。
あとはマクロボタンをメニューに付けましょう。
【形式を選択して貼り付け裏ワザ】を参考にメニューボタンを追加します。
30-8.jpg
ボタンを右クリックでマクロの登録が出来ますので、マクロの登録画面を開き、「Date_clear」と入力しOKで完成です。
※マクロの登録画面では通常マクロ一覧が出てきますが、アドインの場合出てきません。よって自分で入力してください。
30-9.jpg
あとはこのボタンを押すだけで範囲指定の中から数値だけを消す処理を行ってくれます。しかも登録したパソコンならどのエクセルファイルでもこのボタンが有効なのです。

Comment

  1. 佐野 より:

    はじめまして、こんにちは。
    私は「エクセルサーチ(→http://www.excel-search.net/)」
    というエクセルTipsサイトを運営しております
    株式会社ユニークの佐野と申します。
    今回、貴公の運営されるサイトと
    エクセルサーチとの相互リンクのお願いをしたく、
    誠に恐縮ながらコメントを差し上げた次第であります。
    もし問題ございませんでしたら、下記のアドレスまで
    ご返信頂けますでしょうか。宜しくお願いいたします。
    sano@uniquestyle.org

  2. 佐野 より:

    リンクありがとうございました。
    こちらもリンクさせていただきましたので、ご確認ください。
    「エクセルサーチ(→http://www.excel-search.net/)」

  3. はじめまして より:

    はじめまして。
    とても勉強になります。
    ありがとうございます。
    コンサルティング業務を行っているのですが
    こちらすごく助かりました
    無料でご奉仕頂き恐縮です。
    これからも宜しくお願いします。

佐野 へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  • ▼お小遣い稼ぎしませんか?▼ 日々の生活にhappyをプラスする|ハピタス

    クレジットカード・FX口座を作るだけで簡単に3万円GETです。一切支出はありません。

置換 コピペ DATE INDEX HLOOKUP TODAY フロー図 目標 テンプレート MATCH 検索 VLOOKUP 無料 図形 ワイルドカード バーコード COLUMN COUNTIF グラフ 作業効率UP SUMIFS 印刷 条件付き書式 日付 ユーザー定義関数 SUMIF XLSTART 変換 NA() SUM
  • 関西在住の30代サラリーマン。事務職で毎日Excelと戯れています。
    システム導入なんて資金が無い!Excelでなんとかやりたい零細中小の社長さん・事務員さんの力になればと思います。
    詳しいプロフィール


PAGE TOP ↑