前提知識
参考リンク
※変数の概要
ExcelVBAを1から学ぶ! #4 ~変数って何?~
https://techpjin.sakura.ne.jp/techpjin_new/blog/2017/04/15/vba-whatis-variable/
※データ型の概要
ExcelVBAを1から学ぶ! #5 ~データ型について~
https://techpjin.sakura.ne.jp/techpjin_new/blog/2017/05/08/vba-about-datatypes/
問題
①VBEを操作し、標準モジュールを追加してください。
②①で追加した標準モジュールにSubプロシージャpractice2を作成してください。
③②のプロシージャ内で変数orgvalをデータ型Stringで定義し、セルD2の値を変数に格納してください。
※今回使用するExcelシートをダウンロードできます。ご使用は自己責任でお願い致します。
解答・解説
①VBEを操作し、標準モジュールを追加する
まずはVBEを開かなければなりません。VBEは、
ⅰ) [開発]タブ → Visual Basic
ⅱ) Alt + F11
のどちらかで開くことができます。
VBEを開いたら、標準モジュールを追加します。
ⅰ) 上部メニューの挿入 → 標準モジュール
ⅱ) プロジェクトエクスプローラの任意の場所を右クリックし、挿入 → 標準モジュール
のどちらかで標準モジュールの追加を行ってください。プロジェクトエクスプローラとは下図の赤枠の部分です。
②追加した標準モジュールにSubプロシージャpractice2を作成する
追加された標準モジュールに記述をしていきます。追加したタイミングで、画面右側にエディタ画面が開いたはずなので、そこに記述をしていけばOKです。誤って閉じてしまった場合には、プロジェクトエクスプローラより標準モジュールの中にあるModule1を選択してください。
Subプロシージャの定義方法
Sub [Subプロシージャ名] () ~処理内容を記述~ End Sub
実際には、Sub [Subプロシージャ名]まで入力してEnterキーを押下すれば自動的に補完されるはずです。
今回の場合ならこのようになります。
③Subプロシージャ内で変数orgvalをデータ型Stringで定義し、セルD2の値を変数に格納する
上記のSubプロシージャ内の処理内容として記述を行います。まずは変数の定義からです。
■変数の定義方法
Dim [変数名] As [データ型]
今回の場合なら、
Dim orgval As String
です。
次に、定義した変数にセルD2の値を格納します。
■変数への値の格納方法
[変数名] = [値]
セルD2の値を格納したいので、
orgval = Range(“D2”).Value
となります。実際には、RangeではなくCellsを使うとか、.Valueは省略できるとか色々あるのですが、今回は説明を割愛します。(今後の連載でやっていくと思われます。)
これで今回の操作は完了です。変数に格納された値をメッセージボックスに表示して確認しましょう。
上図のように、Msgbox orgvalと最後に記述してF5キーを押下してください。メッセージボックスに東京都と表示されれば成功です。