Excel の マクロ って何 ですか? プログラミング のこと?
Excel の マクロ の記録が出来たのでプログラマーという表現は賛否あると思いますが、れっきとした プログラミング のひとつです。マクロ って何 ?と思っている方、プログラミングに足を踏み込むことに勇気が出ない方、VBAでプログラマーとしての一歩踏み出しませんか?
目的:今回はマクロのイメージをつかむ
要件①:マクロの記録をしたことがない方
要件②:VBA の編集(VB Editor)を実行したことがない方
結果:プログラマーの仲間入りをする
ExcelVBAを始めてみたいです。
では、環境の設定(確認)をしながら進めていきましょう。
まずはマクロについて
仕事でExcelを使っているとマクロって聞いたことありませんか?
Excelの画面でも確認できると思います。
簡単に言うとプログラミングの言語のひとつと思ってもらえれば良いです。
『マクロを記録』を実行してもらうと、手動で操作した動作がプログラミング言語(正式にはVBA)で記録されます。
まずはその見方やイメージをつかんでみましょう。
(イメージをつかんでもらうことが第一ですので、今回はコマンドや関数には特にふれません。今後細かく実例と共に紹介していきます)
①事前準備
まずは『マクロの記録』というボタンを表示させましょう。
(筆者のパソコンはWindows-Office365環境です)
【ファイル】→
左一番下→
【オプション】を選択
【リボンのユーザ設定】→
基本的なコマンドを選択→
【開発】にチェック
上部メニューバーに
【開発】が表示されていることを確認
↓
②早速マクロの記録
シートを選択したり、セルを選択したり、セルをコピーしたりする一つ一つの動作がVBAと呼ばれるプログラミング言語で自動的に保存されます。
【開発】→
『マクロの記録』を選択→
『OK』
(何かを処理する)→
『記録の終了』をクリック
※必ず実施してください
③記録された内容の確認
VBAの編集は、VBEと呼ばれるEditor(エディター)で作成・編集することが出来ます。
それでは、エディターで内容を確認してみましょう。
【開発】→
『Visual Basic』を選択
(左上のプロジェクト内)
標準モジュール→
Module1をダブルクリック
Module1のウィンドウが右側エリアに表示される
動作を記録した、セルの値(A1やA2)と、プログラミング毎に定義された関数と呼ばれる単語・・・コマンド(言語毎に定義された処理)、英単語が確認できると思います。
共通するイメージは以下のとおりで、処理した内容により、プログラムの部分が変化していきます。
【マクロタイトル】(Sub ~( )というのがタイトルです。)
【プログラム】(Excelで操作したものが記載されます。)
【クローズ】マクロの定義完了(End Subというのがマクロの定義完了地点です)
④ファイルの保存
作成したマクロは保存することを忘れないようにしましょう。
通常Excelのファイルは、~.xlsxですが、マクロ有効ブックは、~.xlsmとなります。
通常のExcelファイル
マクロ有効ファイル
保存する方法は、ファイル名を指定して保存する際に、ファイル形式を選択するだけです。
⑤ではマクロを実行してみよう
プログラミングとは、プログラム(ソースコード)を作ることが目的ではなく、やりたいこと/処理したいことを、プログラムという伝達手段(指示書)でパソコンに指示、自動で処理・動かすことです。
このマクロ作成も同じ目的ですので、先ほど記録(実行)した動作を繰り返し実行させてみましょう。
メニューより『マクロ』を選択してください。(先ほどマクロ名を変更しなれば以下画面と同じ名前でマクロが登録されているはずです。)
①【マクロ】を選択
②Macro1を選択
③結果の確認
※必ずプログラミングを実施した後は思ったとおりの動作が実行されるか確認が必要です。
どうでしたか?
同じ動作になるはずです。
特殊な動作をするとうまく動かない可能性がありますが、まずは簡単な動作でイメージをつかんでください。
これであなたもプログラマー。言い過ぎではありませんよ。
それでは、同じように以上の動作がをご自身でやってみましょう。
①事前準備
↓
②マクロの記録
↓
③マクロの停止
↓
④エディターで確認
↓
⑤マクロの実行
↓
⑥動作確認
以上!
確認できましたか?
はい、同じ結果になりました!
プログラマーの仲間入りです。
と、一気に敷居を低くしてしまいましたが、本当なんです。
プログラマーはプログラミング言語毎に定義された多くの関数数を、やりたいことに置き換える作業を行っています。
マクロの記録ではご自身がやりたいこと、例えばセルをコピーする。貼り付けるといった動作を記録してくれました。今回はExcelが補助してくれただけでプログラマーと同じことをやりました。
プログラマーの仲間入りというわけです。
今後、詳細には説明しますが、マクロの記録では無駄なコマンドや限界がありますので、VBAで直接編集しながら、少しずつコマンドやコツを覚えていきましょう。
では、今回はここまで。
クリア!→【結果:プログラマーの仲間入りをする】