「VBA」カテゴリーアーカイブ

【Microsoft Office Home and Business 2010】ExcelでVBA(マクロ)を使う為の準備


マクロを使う為の準備作業

Microsoft Office Home and Business 2010でExcelマクロを組む為には、いくつか準備をしておく必要があります。名前が長いので以下は、Office 2010と略します。

その手順をまとめておきます。

ファイルの拡張子をxlsmに変更する

メニュー > ファイル > 名前を付けて保存

ダイアログが起動したら

ファイルの種類(T):でExcel マクロ有効ブック(*.xlsm)を選択しファイルを保存します。

するとファイルの拡張子が xlsx → xlsm として保存されます。

Office 2010でVBAの開発を行う場合、事前に必ずxlsmのファイル形式にしておきましょう。

メニュー見出しに開発タブを表示する

初期状態では、開発タブがありません。

Excelでマクロ(VBA)を組む場合、事前に開発タブを出しておく必要があります。

メニュー > ファイル > オプション > リボンのユーザ設定

Excelのオプションというダイアログが起動します。

開発にチェックを入れます。

OKを押します。

するとメニューに開発タブが追加されます。

マクロを組む場合には、この開発タブの中から必要に応じた項目を選択して利用していきます。

なお、余談ですがVisual StudioなどでC#を使ってコーディングをする時には、「プログラムを組む」と言いますが、VBAでコーディングをする場合、「マクロを組む」という表現が使われます。

なぜかは不明です。どっちでも良いでしょう。

マクロ実行時のトリガーとしてボタンを使う方法

ユーザが[実行]ボタンを押した時に定義したマクロを実行する様な場合には、

開発タブ > 挿入 > フォームコントロール

よりボタン(フォームコントロール)をクリックしExcelシート状で適当な大きさにドラッグします。

ボタンをクリックすると↑の様な表示になります。

〇の部分をドラッグする事でサイズ変更を行う事が出来ます。

また、文字列の編集をする場合、文字の部分をクリックすると文字列を編集する事が出来る様になります。

ボタンにマクロを割り当てる方法

ボタンの上で右クリック > マクロの登録(N)…

定義済のマクロを選択しOKボタンを押します。

ここでは、テストというマクロを既に定義しています。

これで実行ボタンが押された場合には、「テスト」のコードが実行されます。

マクロブックを保存しようとした時に、「プライバシーに関する注意:」が出た場合

初めて作成したマクロブックを保存しようとした時に

プライバシーに関する注意:このドキュメントには、マクロ、ActiveX コントロール、XML 拡張パックの情報、または Web コンポーネントが含まれています。これらはドキュメント検査機能で削除することができない個人情報が含まれる場合があります。

といったエラーメッセージが表示される場合があります。

この表示を消す方法は

メニュー > ファイル > オプション > セキュリティセンター > セキュリティセンターの設定(T)… >プライバシー オプション >

ファイルを保存するときにファイルのプロパティから個人情報を削除する(R) 

のチェックを外します。

これでマクロを保存する時におせっかいな確認ダイアログが表示されなくなります。

Excel関数は、VBAさへ覚えていれば覚える必要が無い

Excelには色々な関数が定義されています。

しかし、いちいちあんな関数群を覚える必要はありません。

基本的な、SUM・AVERAGE・ROUND関数当たりを覚えておけばOKです。

なぜなら、VBAさへ理解しておけば自分で必要な関数を独自の名前、俺俺関数を定義する事が出来るからです。

最後に

今回は、VBAを初めてExcel2010で組む人に向けてかなり基本的な事のみ解説してみました。

他にも色々と便利な使い方・効率の良い開発方法など色々とノウハウがあります。

私が忘れそうになったらノウハウツリーにメモっていきます(^^)b


VBA(マクロ)を使う上で覚えておいた方が良い便利なショートカットコマンド


ショートカットコマンドを覚えると開発の生産性が上がる

Visual Studioはもちろんのこと、VBAであったとしてもよく使うショートカットコマンドは便利なので覚えておくと良いです。開発スピードが全く違います。プログラマやSEをしていながらブラインドタッチも出来ない人が極稀にいますが本当にヤバイです。今時ブラインドタッチが出来ないというのは本当にヤバイので特打PLUSでも買って今すぐブラインドタッチをマスターしましょう。OLでもブラインドタッチは当たり前に出来ます。

なお、生産性があがる事は良い事ですが、火を噴いた開発プロジェクト(俗に言うデスマプロジェクト)では、仕事の出来る人には、次々と仕事が振られてしまい収集が付かなくなります。どんなスーパープログラマも異常な仕事量を振られると消火不良を絶対に起こします。突出した開発スキルのある人はそれを隠して普通のプログラマぶりましょう。それがIT業界の波をうまく乗る秘訣です。

VBAのショートカットコマンド

マクロ実行の中断

Control + Break

無限ループを走らせてしまった場合などに重宝します。

ブレークポイントの設定・解除

F9

VBAエディタ上でブレークポイントを設定したい箇所にフォーカスを設定しF9ボタンを押すとブレークポイントの設定が出来ます。ブレークポイントとは、プログラム開発においてプログラムの実行を一時的に中断し、要所要所での変数の値を確認する場合などに使用されます。言葉では分かり辛いのでテストコードを書いて自分で実際に動かしてみると良いでしょう。

ステップイン

F8

ステップオーバー

Shift + F8

ステップアウト

Control + Shift + F8

1つ前に戻す(直前の修正前にコードなどを戻す)

Control + Z

Windows全体でも使えるショートカットコマンドです。

変数の定義箇所へジャンプ

調べたい変数を選択するか、変数の上で1クリックして

Shift + F2

を押します。Visual Studioの場合には、F12を押すだけなのでマクロエディタは、若干糞ですね。

マクロの実行

F5

よく使うので絶対覚えておきましょう。

 


VBAエディターのツールバーにデバッグメニューを表示するには?


ツールバーにデバッグメニューを表示すると効率が上がる

VBA(マクロ)で開発を行う際に、頻繁に使うデバッグ操作(ステップイン、ステップオーバー、ステップアウト、選択範囲のコメントアウト)などはツールバーに表示させておくと開発効率があがります。ショートカットを覚えてしまってもいいですが、覚えるのは嫌だけど開発効率をあげたいという人は必ず設定しましょう。

ツールバーの何も無い所で右クリック > デバッグにチェック

VBA-1

 

こんな感じでよく使うデバッグメニューが表示されました。VBA-2

 

開発効率が全然違うので確実に出しておきましょう。