入門者のExcel VBAがとっても良書

入門者のExcel VBAがかなり良い本だったので紹介します。


用語

まず、基本的なお話し。
VBAとは
Visual Basic for Applications(ビジュアルベーシック・フォー・アプリケーションズ、VBA)は、マイクロソフト社製のMicrosoft Officeシリーズに搭載されているプログラミング言語である。Visual Basic for Applications – Wikipedia Visual Basic for Applications - Wikipedia

VBAの本に書かれているマクロとは
マクロ (Macro) は「大きい」「巨大な」といったような意味の語であるが、コンピュータ関係では、アプリケーションソフトウェアなどの操作などといった、プログラミング言語と比較して粒度が大きい操作をまとめて自動化したりする機能を指して良く使われる。マクロ (コンピュータ用語) – Wikipedia マクロ (コンピュータ用語) - Wikipedia

要は、VBAというプログラミング言語で書かれたプログラムをマクロというようです。

覚え書き

以下は、自分にとって重要だった部分のメモです。

  • [Alt] + F8: マクロ画面表示
  • [Alt] + F11 : VBA起動
  • 初心者が実際にプログラムを書く場所は「標準モジュール」フォルダの「Module 1」:[挿入] → [標準モジュール] → [Module 1]ダブルクリック → タイトルバーに[Module1(コード)]と表示される。
  • Subプロシージャは命令文の“枠組み”
    Sub プロシージャ名()
    処理の内容
    End Sub
  • 命令文は[Tab]で字下げする
  • MsgBox: メッセージボックス
  • Subプロシージャ―はVBE上から実行可能 ▶ ボタン:VBE上の実行は命令文の動作確認に便利
  • 図形を右クリック[マクロの登録]で図形にマクロを設定できる
  • 「オブジェクト」:セルやワークシートなどExcel上にある“もの”の総称。オブジェクト名を暗記する必要はとりあえずなし。
    セル Range, ワークシート Worksheets, グラフ ChartObjects, オートシェイプ Shapes。
  • 「プロパティ」:セルやワークシートなどのオブジェクトの“状態”。データ Value、フォント、色 Color、サイズ、セルの幅 ColumnWidth や高さ、罫線Bordersなど。
  • プロパティで行える操作は「取得」(プロパティにある値を取りだす)と「設定」(プロパティに別の値を入れて内容を設定する)。
  • 「取得」: オブジェクト名.プロパティ名
    セルのデータはvalueプロパティで取得
  • 「設定」: オブジェクト名.プロパティ名 = 設定値
    セルのデータ設定は value = “文字列”
  • エラーメッセージ「コンパイルエラー」:書いたプログラムが書式に反している場合。「実行時エラー」:オブジェクト名やプロパティ名が間違っている場合。 ⇒ デバッグ:誤りがある行が黄色で強調される(その行だけでなく、前後の行もチェックする)
  • 親オブジェクト名.子オブジェクト名
  • 「メソッド」:コピー Copyや切り取りCut、貼付Paste、データの削除 ClearContents などのオブジェクトの“動作”のこと。
  • 「メソッド」: オブジェクト名.メソッド名
  • 比較演算子は、If関数と同じという認識で構わない
    値1 比較演算子 値2
  • = は比較演算子と代入演算子の両方で用いるが、意味合いは待ったっことなる
  • 条件分岐:指定した条件が成立するか、成立しないかによって、処理内容を使い分ける仕組み
    ステートメント(Statement: 陳述、陳述文、計算式)
  • 条件が成立する場合のみ処理を実行
    If 条件式 Then
    処理の内容
    End If
  • 条件が成立する/しないで、異なる命令文を実行
    If 条件式 Then
    処理の内容1
    Else
    処理の内容2
    End If
  • 複数条件に応じて命令文を実行させる場合 ElseIf
  • For…Nextステートメントの基本
    For 変数名 = 初期値 To 最終値
    処理の内容
    Next
  • 複数の文字列を組み合わせる時には、「&」演算子が必要

売上データシートから請求書を作成するマクロを作る演習でしたが、とても面白い。「&」と演算子と繰り返しの組み合わせ方など、非常に勉強になりました。

 

このエントリーをはてなブックマークに追加