Visual Basic for Applications(更新中) - user000422/0 GitHub Wiki

Visual Basic Editor起動Alt + F11

モジュール挿入挿入 -> 標準モジュール モジュール削除(解放)対象のモジュールを右クリック -> xxxの解放 -> いいえ(エクスポート) モジュール名変更対象のモジュールをダブルクリック -> 左下プロパティウィンドウのオブジェクト名 ※モジュール名は長さに制約がある

Enterキーで自動整形されることを意識しておく 自動整形を利用することを前提とし、入力は全て小文字で行うこと プロシージャ作成Sub プロシージャ名 を入力しEnter(プロシージャ名は任意の名前で)

オブジェクト.プロパティ = 値

コメントアウト … シングルクォーテーションの後ろの文字列

データ型

意味
String 文字列(よく使う)
Long 長整数型(よく使う)

基本技術

' 変数宣言
Dim sample_text As String

' セルの値を変数に代入
sample_text = Range("A1").Value
Sub Sample()

  Range("A1") = "いぬ" ' セルに文字入力
  Worksheets("Sheet1").Range("A1") = "ねこ" ' シートを指定し、セルに文字入力

  Range("A1:B2") ' セル範囲指定
  Range("A:A") ' 列全体指定
  Range("A:C") ' 列全体複数指定

End Sub

オートシェイプ 基本型 … ActiveSheet.Shapes.AddShape(シェイプ種類, 左端を基準にした位置, 上端を基準にした位置, シェイプ幅, シェイプ高さ) シェイプ種類「四角形」… msoShapeRectangle シェイプ種類「円/楕円」… msoShapeOval

Sub SampleShape()
  Dim sample As Shape ' データ型「シェイプ」の変数
  Set sample = ActiveSheet.Shapes.AddShape(msoShapeRectangle, 0, 0, 100, 100)
End Sub

選択したセルに図形を挿入

Sub AddShape()
  Dim Sample As Range
  Set Sample = Selection
  With ActiveSheet.Shapes.AddShape(msoShapeRectangle, Sample.Left, Sample.Top, 50, 50)
  End With
End Sub

選択したオブジェクトに枠線を設定(青)

Sub AddShape()
  Selection.ShapeRange.Line.Visible = msoTrue
  Selection.ShapeRange.Line.ForeColor.SchemeColor = 30
End Sub