ユーザー定義関数やマクロというのは、コードを書いたそのエクセルファイルにしか適用されません。便利な定義関数やマクロを他のファイルでも使えるようにするのに、いちいちVBEからコードをコピーしていたんじゃあ面倒です。
そこで今回はアドインを自分で作ってエクセル本体にマクロ、定義関数を登録してみましょう。
これをすると
・ 登録されたパソコンのエクセルで常に使える状態になる。
・ 他のパソコンにも提供したい場合アドインファイルを渡すだけ。
よくネットにもアドインは出回っていますが、大概この方法でアドインを作成しています。
良いアドインが出来ればネットで提供してもいいかもしれません。
範囲指定しているデータの中から値だけをクリア!
を作ってみたいと思います。
範囲指定いているデータの中から値だけをクリアする方法(手動)
このデータの品名は残して数量と金額だけ消したい時、単純にB4からC8を範囲指定し消せばいいんですが、複雑な表になると消したい項目を一気に範囲指定出来ない時がしばしば。
A3からC8まで範囲指定して、数値だけを消したい場合
メニューの編集からジャンプを選択
セル選択をクリック
選択オプションで「定数」を選択
そして数値、文字、論理値、エラー値にチェックが入っているので数値だけチェックを残し「OK」
そうすると今範囲選択していた部分の数値だけを選択した状態になります。
そこでDeleteキーを押してデータを消せば数値だけを消す事が出来ます。
この方法で文字だけを選択、エラーだけを選択も可能です。
コード
これを自動でするマクロコードはこちら
Sub data_clear() Selection.SpecialCells(xlCellTypeConstants, 1).Select Selection.ClearContents End Sub |
すごく簡単にしか書いていませんが、内容は今選択してる内の値だけを選択し、クリアする。という処理です。
アドイン化
このコードをVBEのモジュールに書いたらアドイン化です。
エクセルファイルを名前をつけて保存する時に[Microsoft Office Excel アドイン (*.xla)]で保存します。保存場所は通常変更しないように注意してください。
アドインの有効化 & マクロ登録
これでアドインの登録が終わりましたので、次にアドインを有効にさせないと動きません。
メニューの「ツール」→「アドイン」でアドイン画面を開きます。
先ほど登録した「Dataclear」というのにチェックを入れます。
これでこのアドインは有効化されました。
あとはマクロボタンをメニューに付けましょう。
【形式を選択して貼り付け裏ワザ】を参考にメニューボタンを追加します。
ボタンを右クリックでマクロの登録が出来ますので、マクロの登録画面を開き、「Date_clear」と入力しOKで完成です。
※マクロの登録画面では通常マクロ一覧が出てきますが、アドインの場合出てきません。よって自分で入力してください。
あとはこのボタンを押すだけで範囲指定の中から数値だけを消す処理を行ってくれます。しかも登録したパソコンならどのエクセルファイルでもこのボタンが有効なのです。