e-note

remind memo

Excel VBA リファレンス

マクロ操作を自動化するプログラム
VBAマクロを記述するためのプログラミング言語
マクロ名アルファベット
マクロ名ひらがな、カタカナ、漢字
マクロ名数字*、記号(_)*、(*:先頭以外)
変数宣言
Dim 変数名 as 型変数宣言
Const 定数名 as 型=値定数宣言,値設定
Static 変数名 as 型変数宣言(値保持)
private変数宣言(宣言セクション、プロジェクト内有効)
public変数宣言(宣言セクション、プロシージャ内有効)
Dim オブジェクト変数 As オブジェクト型変数宣言(オブジェクト型)
Set オブジェクト変数= オブジェクトオブジェクト代入
Set オブジェクト変数= Nothingクリア
プロパティ
Active Cellアクティブセル
Selection選択しているオブジェクト
Current Region連続しているセル範囲
Used Range使用しているセル範囲
Rows(i)i行
Colums(i)i列
Numver Format="書式記号"書式設定
Select選択範囲移動
Activateアクティブセル移動
Clear Contents消去(値)
Clear Formats消去(書式)
Clear消去(値、書式)
Offset(行、列)選択セル移動
Resize(行、列)選択範囲移動
条件分岐
IF 条件式 Then 処理条件を満たす場合の処理
IF 条件式1 and(or)条件式2 Then 処理条件1,2を両方(片方)満たす場合の処理
IF 条件式1 Then
処理1条件式1を満たす場合の処理
ElseIf 条件式2 Then
処理2条件式2を満たす場合の処理
End IF
Select Case オブジェクト(判断の対象)
case 対象の条件
 case 1,2対象が1or 2の場合
 case 1 To 10対象が1~10の場合
 case Is > 10 対象が10より大きい場合
処理条件を満たす場合の処理
case Else
処理条件を満たさない場合の処理
End Select
ループ
For 変数=1 To 100 Step 2変数の開始、終了、変化量を設定
処理繰返す処理
Next変数を次の値に変える
Do 条件条件を満たすか判定 (前判定)
処理条件を満たす場合の処理
Loop
Do
処理条件判定する前に行う処理
Loop 条件条件を満たすか判定 (後判定)
For Each 変数名 In オブジェクトグループ変数にオブジェクトを格納
処理オブジェクトの入った変数に対する処理
Next
関数1
Dir(ファイルパス)ファイル有:ファイル名、ファイル無:""
Val(文字列)文字列の数→数字の数
Msg Box("メッセージ")メッセージ表示
Input Box("メッセージ","タイトル","初期値")インプットボックス表示
Now現在時
Year(now)
Month(now)
Day(now)
Hour(now)
Minute(now)
Second(now)
Len("文字列")文字数
Left("文字列,文字数")左文字取得
Right("文字列,文字数")右文字取得
Mid("文字列,開始位置,文字数")文字取得
Lcase("文字列")小文字化
Ucase("文字列")大文字化
Ltrim("文字列")左端スペース削除
Rtrim("文字列")右端スペース削除
trim("文字列")両端スペース削除
Replace("文字列","被置換字","置換字")置換
Instr("文字列"、"文字")文字位置
StrConv("文字列",文字種)文字種変換
Format(元の値、"書式記号"書式設定
Int(数値)整数変換
Abs(数値)絶対値変換
セル
Range("A1:B2")
cells(行,列)
Range(開始セル,終端セル)
Range(cells(i,1),(cells(i,10))
ブック
Workbooks("ブック名".xlsm)ブック指定
Workbooks.Activateブック表示
Workbooks.Selectブック選択
Workbooks.Addブック追加
Workbooks.Open Filename:=ファイルのパスブックを開く
Workbooks("ブック名".xlsm).Saveブック保存
Workbooks("ブック名".xlsm).Save As Filename:=ファイルのパスブック保存(名前を付けて)
Workbooks("ブック名".xlsm).Closeブックを閉じる
Workbooks("ブック名".xlsm).Close Savechanges:=Trueブックを閉じる(保存して)
シート
Worksheets("シート名".xlsm)シート指定
Worksheets().Selectシート選択(要ブック表示)
Worksheets.Activateシート選択
Worksheets.Name="名前"シート名
Worksheets.Countシート数
Worksheets.Visible=Falseシート表示
Worksheets.Visible=Deleteシート削除
Worksheets.Copy Before:=シートオブジェクトシートコピー(左に)
Worksheets.Copy After:=シートオブジェクトシートコピー(右に)
ユーザー定義関数
Function 関数名(引数 As 型) As 型ユーザー定義関数
処理
関数名=処理(戻り値)
End Function
Call
Call 呼び出すマクロ名(引数に渡す値)マクロ呼出し
呼び出されるマクロ名(引数 As 型)呼び出されるマクロ
値渡し
Sub マクロ名(Byval変数 As 型)値渡し(変わらない)
Sub マクロ名(Byref変数 As 型)参照渡し(変わる)
Sub マクロ名optional 変数 As 型=初期値)変数省略
Sub マクロ名optional 変数)変数省略
If IsMissing(n)=True Then n=""変数省略
配列
Dim 配列名() as 型宣言(配列数=不明)
Dim 配列名(i) as 型宣言(配列数=i+1)
ReDim 配列名(i)配列再設定(上書き)
ReDim Preserv配列名(i)配列再設定(追加)
関数2
Lbound(配列名)配列の最小インデックス番号
Ubound(配列名)配列の最大インデックス番号
Split(文字列,区切り文字)区切った文字を配列で返す
IsArray(引数)配列の時True
IsDate(引数)日付の時True
IsNumeric(引数)数値の時True
エラー
On Error Resume Nextエラーを無視
On Error GoTo ラベル名エラー時ラベルへ移動
ラベル名:エラー時の移動先
Application.DisplayAlerts=true警告メッセージ表示
イベント
Openブックを開いた時
Before Saveブックを保存した時
Before Closeブックを閉じた時
New sheetシートを追加した時
Change値が変わった時
SelectionChange選択セルが変わった時
BeforeDoubleclickダブルクリック前
BeforeRightclick右クリック前
_Activate()アクティブになった直後
_deactivate()アクティブになる直前
ApplicationEnableEvents=Falseイベント抑止
フォーム
UserForm1.Showフォーム表示
UserForm1.Show vbModelessフォーム表示(操作可)
UserForm1.Show vbModalフォーム表示(操作不可)
Unload UserForm1フォーム非表示(メモリからクリア)
Lavel1.Captionラベル表示文字
TextBox1.Textテキストボックス文字列
ListBox1.AddItemデータ追加
ListBox1.RemoveItemデータ削除
ListBox1.Textデータ取得
ListBox1.Listデータ取得(配列形式)
ListBox1.Listcountデータ件数
ListBox1.Listindexデータ順(最上部=0)
ListBox1.List(i)データ(i番目)
CheckBox1.value=Trueチェックボックス(オン)
OptionButton1.value=Folseオプションボタン(オフ)
Controls("CheckBox" & i).value=Trueチェックボックス(オン)
ファイル操作
Open パス For Output As #1ファイルを開く
Print #1,"データ"上書き
Close #1ファイルを閉じる
File Copy コピー元パス,コピー先パスファイルコピー
File Name 旧ファイル名 As 新ファイル名ファイル名変更
Cur Dirカレントフォルダ
ChDir パスカレントフォルダ移動
ChDriveドライブ名カレントドライブ移動
MkDir パスフォルダ作成
RmDir パスフォルダ削除
kill ファイル名ファイル削除

ページTOPへ