情報処理実習 第05回 Excelマクロ機能入門 操作マクロ入門
Excelのマクロ機能 Excelマクロ(操作の記録・自動実行) Excel VBA 比較的簡単 ユーザーの操作を記録し、自動的に実行させる 比較的難しい(結構難しい) VBAというプログラミング言語によるプログラミング VisualBasic for Applications プログラムさえ作成すればなんでもできる 新しい関数の作成 ユーザーインターフェースの作成 Excelをベースにしたアプリの開発(電子カルテ, etc.)
準備:「開発」タブの表示 ファイルメニューの「オプション」をクリックして「Excelのオプション」を表示し、 「リボンのユーザー設定」で右側の「開発」に チェックを 入れ「OK」を クリック 「開発」タブが 表示される
開発タブ 開発タブは上述の手順を踏まないと表示されない バージョンにより手順が多少異なるので注意 マクロ関係の機能が集められている
はじめてのマクロ登録(1/2) 開発タブの「マクロの記録」をクリック 「マクロの記録」ダイアログ が表示されるので、 マクロ名を 「はじめてのマクロ」とし 「OK」ボタンをクリック。
はじめてのマクロ登録(2/2) C3セルを選択し、“はじめてのマクロ”と入力し、フォントサイズを14にし、太字、斜体にし、文字を赤色にし、背景を黄色にする。 開発タブの「記録終了」ボタンをクリック
マクロの実行 開発タブの 「マクロ」ボタンを クリックすると 「マクロ」ダイアログが 表示されるので、 「はじめてのマクロ」を 選択して 「実行」ボタンを クリックする。 7
実行結果の確認 「はじめてのマクロ」は対象をC3セルに限定して実行されるため、同じマクロを繰り返し実行しても見た目の変化はない。 Sheet1で実行しても何も変わらない。 Sheet2に移動して実行してみる。
相対参照マクロ 常に同じセルを対象にマクロが実行されるのは、マクロの記録時に「絶対参照」として記録したため。 「相対参照で記録」ボタンを押し込んだ状態で記録すると、相対参照マクロになる。 相対参照マクロは対象セルを選択して実行できる。
練習1 「はじめての相対マクロ」を作成せよ。 内容は「はじめてのマクロ」と同じとする。 ただし相対参照で記録し、選択した任意のセルを対象に実行できるようにすること。
マクロのあるファイルの保存 「名前をつけて保存」で、「ファイルの種類」として「Excelマクロ有効ブック」を選択して保存。
マクロ有効ブックを開く(コンテンツ有効化) マクロ有効ブックを開き直すとセキュリティ警告が出るので、「コンテンツの有効化」をチェックし、「OK」をクリック
マクロの正体を確認する 開発タブの「マクロ」をクリックし「マクロ」ダイアログを表示する 「マクロ」ダイアログで「はじめてのマクロ」を選択し「編集」ボタンをクリック
VBEが表示される VBE(VisualBasic Editor)が表示され、VBAのコードが表示される マクロを表現した (これがマクロの正体)
文字列を変更してみる コード中の“はじめてのマクロ”を“最初のマクロ”に変更して上書き保存し、実行してみる。
マクロ実行用ボタンの作成 開発タブの「挿入」ボタンのフォームコントロール一覧から「ボタン」を選択 ドラッグしてボタンを作成 「マクロの登録」ダイアロ グが表示されるので 「はじめての相対マクロ」 を選択して「OK」をクリック ボタンの名前を 「相対マクロ」に変更する
ボタンからのマクロ実行 「相対マクロ」ボタンをクリックするとマクロが実行される
今日のまとめ Excelでマクロと呼ばれる機能は大きく二つ。 一つはユーザーの行った操作を記録して自動実行する機能(操作マクロ) もう一つはVBAプログラム 操作マクロの中身もExcelが自動生成したVBAのプログラム ボタンを配置してアプリのように実行することもできる リボンの中にボタンを追加することも可能 マクロ・VBAを利用するとさまざまなことが自動実行できる。アプリも作製可能。