Excel VB メモ
VBの予備知識と基礎設定

Function プロシージャを定義して実行

=SUM()のようにExcelで標準的に組み込まれている関数もの以外の独自の関数を定 義する。

Sub プロシージャを定義して実行

ボタンをクリックして文字列をA1に表示するマクロの作成をする。

  1. [開発]->[挿入]->[フォームコントロール]->[ボタン(フォームコントロール)]
  2. 十字キーがあらわれるのでボタンを作成する
  3. [マクロの登録]のポップアップメニューがでる->[新規作成]
  4. Microsoft Visual Basic for Applications が表示され、 VBE(Visual Basic Editor) に「Sub XXX()... End Sub」というプログラムの枠が現れる。 (XXX の部分は procedure の名前が入る。 現れなければ [開発]->[Visual Basic] (Excel2010以降))
  5. Sub の中に書き加える。
    Sub XXX()
       Worksheets("Sheet1").Range("A1") = "すばらしいYMCA!"
    End Sub
    
  6. [ファイル]->[終了してExcelへ戻る]
  7. 図形をクリックして実行する。->A1のセルに文字が出力される

上記の手続に沿って新たなボタンで以下のように消去するボタンを作成してもよい。

Sub YYY()
   Cells(1, 1).Clear
End Sub

Sub プロシージャの例

A1からA10まで番号を書く (1列目に1から10までの数値が出れば成功)

	Sub YYY()
       For i = 1 To 10
        Cells(i, 1).Value = i
       Next i
      End Sub
      
シート1の内容をクリア
Sub all_clear()
Worksheets("Sheet1").Cells.Clear
End Sub
Sub の実行、デバッグ

VBEの画面でSubの実行

  1. [開発]->[Visual Basic Editor] (ショートカットとしてAlt+F11)
  2. マクロプログラム「Sub XXX() End Sub」の中にカーソルを入れる。
  3. VBエディタから[実行]->[Sub/ユーザーフォームの実行]

VBプログラム作成中に1行ずつ実行

  1. [開発]->[Visual Basic Editor] (ショートカットとしてAlt+F11)
  2. マクロプログラム「Sub XXX() End Sub」の中にカーソルを入れる。
  3. Excel の画面を横に並べてVBエディタから[デバッグ]->[ステップ イ ン](ショートカットとしてF8)
  4. F8を繰り返しおして、変化の様子を見る。
  5. [実行]->[リセット]でデバッグモードの終了。

VBAの簡単な文法

セルに値を書き込む

      Cells(セルの縦の番号, セルの横の番号).Value = 値
      


連絡先: 中田研究室の
場所、連絡先