world)VBAに限らず、プログラミング言語の入門には定番があります。world!"を表示するプログラムを書くこと。world!"という言葉自体に重要な意味はなく、プログラムを使って文字列を表示するという点に意義があります。何事においても基本は大事ですし、簡単なようで奥が深い、重要な儀式といえます。プログラムを書く準備まずエクセルのファイルを作りましょう。エクセルを起動して『ファイル』→『名前をつけて保存』で拡張子(.xlsx等)の前のファイル名をHelloにします。マクロ有効ブック(*.xlsm)』にしておきましょう。ブック(*.xlsb)』形式は過去のバージョンとの互換性等に問題がある可能性がありますが、保存時の容量を小さく抑えることができるため、こちらを使用しても構いません。Editor)の起動VBAでプログラムを書くにはVBEというエディタを使います。作成したファイル(Hello.xlsm)を開き、AltキーとF11キーを同時に押してください。Basicアイコンをクリックします。VBEの画面が開いたでしょうか。VBAのプログラム開発にはこのエディタを使用します。参考図ではプロジェクトエクスプローラー、プロパティウィンドウ、ローカルウィンドウ、ウォッチウインドウを表示していますが、このようになっていると使いやすいので、ツールバーの『表示』から該当するものを選んで、参考図のように配置してみてください。標準モジュールを追加するプロジェクトエクスプローラーの下の空いているところを右クリックして開くメニュー、又はツールバーから『挿入』→『標準モジュール』をクリックしてください。プロジェクトに標準モジュール(Module1)が追加され、空のモジュール全体が表示されます。VBAではこのモジュール単位でプログラムを作成していきます。追加した標準モジュールの名前(オブジェクト名)はプロパティウィンドウで変更することができます。分かりやすい名前をつけておくと、モジュールが増えてきたときに機能が分かりやすく、管理するのに便利です。標準モジュールを削除したい場合は、プロジェクトエクスプローラーで対象のモジュールを右クリックし、『(モジュール名)の解放』をクリックします。このとき、『エクスポート』を選択すると、モジュールをブックから独立したファイルとして保存することができ、他のブックで使用することもできます。最初のプログラムVBEが起動できればプログラムを書く準備は整いました。プログラムを書いてみます。以下のコードを空のモジュールに書いてみてください。コピーして貼り付けるのではなく、自分で入力してください(練習のため)。subが自動入力されます。自動的にsubをSubにしたり、msgboxをMsgBoxにしたりと(先頭が小文字→大文字になっている)、VBAの文法に従って入力内容を補完してくれる便利な機能です。他にも、途中まで入力した時点でその後に続く可能性のある候補を表示してくれたりするので、効率的な作業を行うための必須機能ともいえます。入力途中に『Ctrl』キー+『スペース』キーで呼び出すこともできます。覚えておくと後々必ず役に立つでしょう。subまでをsubプロシージャ(VBAのプログラムの単位)と呼び、ここではHelloという名前のsubプロシージャ(関数、サブルーチン、メソッドとも呼ばれる)を作成したことになります。入力カーソルを実行したいsubプロシージャ内に置いて『F5』キーを押すと、そのsubプロシージャのプログラムを全部実行することができます。ツールバーの『実行』からも実行することができます。ちなみに『F8』キーを押すと、プログラムを一行ずつ実行すること(ステップ実行)ができます。プログラムの開発段階で、処理の内容を確認しながらプログラムを追うのに便利ですから、覚えておきましょう。カーソルがsubプロシージャ内にない場合、以下のようなダイアログウィンドウが表示されますので、実行したいマクロ(subプロシージャ)名を選択して実行します。それでは実行してみましょう。world"という文字列を表示することができました。1行目はsubプロシージャの開始、3行目は終了を示すだけですから、実質的な処理は一行だけです。MsgBoxはVBAに予め組み込まれたメッセージボックスを表示する関数で、MsgBoxの後に表示したい文字列を記述することで、その文字列を表示することができます。world!』というコードはエラー)。world!")を表示するプログラム』という部分はプログラムに影響しないコメントです。適切なコメントを書いておくことで、何の処理なのかが一目で分かりやすくなり、開発効率を高めることにつながります。以下に書いた文字はコメントと見なされます。付いていることを疑問に思うかもしれませんが、この括弧は引数(ひきすう)と呼ばれる情報を記述するためのもので、引数がない場合でも関数を定義するときには関数名の後に()をつけます。関数を呼び出す際には関数名の後の括弧を省略することも多いです。いうか、引数の無い関数には括弧を付けて呼び出すことができません。引数とは関数を呼び出す際に、呼び出し先で参照(使用)するために渡す(広義の)値です。ここでは関数名の後には括弧()を付けるものだと覚えておいてください。world!"という文字列もMsgBox関数に渡される引数です。("aaa")』も同じ動作をします。msgbox("aaa")』も前の2つの例と動作は同じです。callは省略することができます。("aaa")』は異なります。条件分岐とジャンプで多少説明しています。以上でVBAを使って文字列を表示するプログラムが作れるようになりました。おめでとうございます。VBAを使いこなすためにはもう少し勉強する必要がありますが、あとは簡単なものです。始めてみるという壁を越えた時点で、最も大きな難関を乗り越えたといってもよいからです。このまま進むのも、一旦コーヒーを飲んで休憩するのも、ブラウザを閉じるのもよいですが、せっかく始めたのですから、もう少しVBAの練習を楽しんでいただけたら幸いです。Reserved.免責事項・管理人への連絡について。