1
6

More than 3 years have passed since last update.

VBAの基礎文法等(VBAを使うときに自分がよく使う基本的な内容)

Last updated at Posted at 2020-04-09

変数の宣言・代入

Dim hoge As 型
hoge = 1             オブジェクトではない基本型
set hoge = Worksheets(1)     オブジェクトの場合はsetで代入

Integer    整数型
Single    単精度浮動小数点型
String    文字列型

参考:Excel VBA 入門講座へようこそ!!-5章 2.変数のデータ型

while文

Do While 条件式
 処理
Loop

参考:よねさんとWordとExcelの部屋
参考:よねさんとWordとExcelの部屋-繰り返し処理(For~Next,Do~Loop)

For文

For i=0 To 10 (Step 1)
 処理
Next

参考:よねさんとWordとExcelの部屋
参考:よねさんとWordとExcelの部屋-繰り返し処理(For~Next,Do~Loop)

If文

If 条件式1 And 条件式2 then
 処理
Elseif
 処理
Else
 処理
End if

連想配列

●連想配列オブジェクト作成
Dim dic As Object
Set dic = CreateObject(“Scripting.Dictionary”)

●データ追加
dic.Add "key1", "data1"
dic.Add "key2", "data2"
dic.Add "key3", "data3"

●データ取り出し
hoge = dic("key1")       ←どこで調べたか忘れたけど、Itemプロパティを付けなくてもこれで取り出せる。
hoge = dic.Item("key1")

参考:Samurai Blog-VBA入門】Dictionaryオブジェクト(連想配列)の使い方

クラスの作成・使い方

●クラスの作成
1.vba画面の「挿入」-「クラスモジュール」クリック
→プロジェクトエクスプローラーのクラスモジュールフォルダ内に「Class1」クラスが作成される

参考:いつも隣にITのお仕事-【初心者でもできる】エクセルVBAで最も簡単なクラスを作る方法

●クラス名変更
1.プロパティウィンドウを開いて、プロジェクトエクスプローラーの作成したクラスをクリック
2.プロパティウィンドウのオブジェクト名を変更

参考:いつも隣にITのお仕事-エクセルVBAでクラスに最も簡単なプロパティを追加する方法

●プロパティの宣言
作成したクラスのファイルにコードを追加
public hoge as Integer
public hogehoge as String

参考:プチモンテ-クラスの作成と使い方[ExcelのVBA]

●クラスオブジェクトを使う
Dim clsobj As HogeClass
Set clsobj = New HogeClass
clsobj.hoge = 1
clsobj.hogehoge = "aaa"

参考:プチモンテ-クラスの作成と使い方[ExcelのVBA]

ワークシートの取得

Dim tSheet As Worksheet
Set tSheet = Worksheets(インデックス番号)
Set tSheet = Worksheets("シート名")

Office Pro 初心者でもわかりやすいサイト-Worksheetオブジェクトの取得

セルの値取得

x = WorkSheetsオブジェクト.Cells(行番号, 列番号)

セルの列の表示を数字に切り替える方法(バージョン確認していない)

[ファイル]→[オプション]→[数式]→[R1C1参照形式をを使用する]

参考:Tipsfound-列の表示を数字とアルファベットで切り替える

入力ダイアログ

No = inputBox("番号を入力してください。", "番号入力ダイアログ", "")

その他

VBA公式リファレンス(日本語)

1
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
6