|
VBAとは
VBAとはプロシージャ※を作成するときに使用するプログラミング言語です。
マクロの自動記録ではできない複雑な処理も実行できるようになります。
※エクセルでいうマクロのことをVBAでは「プロシージャ」と呼びます。
ひとつのプロシージャでひとつのマクロを実行することができます。
まぁこれもぐだぐだ言葉で説明するよりも実際に見て使ってみましょう。
では、先ほどのシートで以下の状態に移行してください。
「Visual Basic Editor」をクリックしてください。
Visual Basic Editor:VBAの編集をする際に使用するツール
以下の画面が表示されたら左下テーブルの標準モジュールファイル横にある「+」をクリックしてください
左下のテーブルに「Module1」というファイルが出現します。
「Module1」をダブルクリックしてください。
右側に先ほど自動記録したエクセル操作のVBAが表示されます。
では、さっそく具体的に先ほど自動記録したVBAの内容を見ていきましょう。
以下はとりあえず読み流す程度の感じで読んで言ってください。
すぐに実戦に移りますんで p(≧田≦)スタタタタ
「習うより慣れろ」です。
頭で覚えるよりも実際にやる方が確実に身につきます。
注)VBAは全て半角入力(半角スペース)
================
Sub マクロ名 ( )
End Sub
----------------
>Subプロシージャ
この間に記述されたVBAを実行します。
================
================
ステートメントA(前半) _(アンダーバー)
ステートメントA(後半)
ステートメントA: ステートメントB
----------------
>ステートメント
プロシージャ内の1行1行のこと。
1行がひとつの命令文になる。
1行が長い場合は「半角スペース + _ (Shift + ろ)」で1ステートメントを複数行に記述できる。
逆に、1行が短い場合は「: (コロン)」で1行に複数のステートメントを記述できる。
================
================
' (シングルクォーテーション「Shift + 7」)
----------------
>コメント
この後ろに記述した文字はVBAと認識されません。
注意書きや、ステートメントを一時的に実行したくないときに用います。
================
ステートメントの記述形式(VBAの構文)ですが、大雑把に言えば
「対象.(ドット)対象がどんな状態か」=「オブジェクト.プロパティ」
「対象.(ドット)対象をどうするか」 =「オブジェクト.メソッド」
です。
では、自動記録された各ステートメントを見ていきましょう。
(最初のスペースは「Tabキー」によるものです。見やすくするためのものでVBA的な意味はありません)
Range("A1").select →A1.選択
Selection.clearContents→選択したもの.データを消去
と、言った内容のものです。
上の2ステートメントを1つにまとめることもできます。
Range("A1").ClearContents→A1.データを消去
試しに自動記録された2ステートメントを消して、上記ステートメントを入力してみましょう。
入力し終わったら元のエクセルシートに戻り、セルA1に「データ」ともう一度入力してください。
では、「Ctrl + z」を押してプロシージャを実行させてください。
セルA1の「データ」という文字が消えたはずです。
どうでしたか?なんとなく「感じ」は掴めていただけたでしょうか?(^^;ゞ
「実践編」では実際に利用して役立つマクロの作り方を紹介していきます♪
ページTOPに戻る
|
|