VBAの予約語をまとめました

VBAの予約語一覧をアルファベット順にまとめました。

VBAの予約語

予約語をWikipediaで確認してみると・・・

予約語(よやくご、英: reserved word)とは、プログラミング言語において字句的には
識別子(変数名、関数名、クラス名など)としてのルールを満たしているにもかかわらず
識別子にならない字句要素。

出典:Wikipedia 予約語

VBAではifやforなどが予約語になります。
予約語で変数名、関数名、クラス名を宣言するとエラーになります。

 1Option Explicit
 2
 3Sub test()
 4  
 5  Dim if As Long  '予約語で宣言はできない
 6  Dim IF As Long  '大文字でも予約語であれば宣言できない
 7  Dim iF As Long  '大文字と小文字を混在させても、予約語であれば宣言できない
 8
 9End Sub
10
11Sub if() '関数名の宣言も予約語ではできない
12
13End Sub

クラス名をifにしてみます。

「オブジェクト名が不正です」とエラーになります。

VBAの予約語一覧

以下の単語を使用して変数名、関数名、クラス名を宣言するとエラーになります。

定数
Abs AddressOf And Any Array
As Attribute Boolean ByRef Byte
ByVal Call Case Cbool Cbyte
Ccur Cdate CDbl Cdec Cdecl
Cint Circle CLng CLngLng CLngPtr
Close Const CSng CStr Currency
CVar CVErr Date Debug Decimal
Declare DefBool DefByte DefCur DefDate
DefDbl DefDec DefInt DefLng DefLngLng
DefLngPtr DefObj DefSng DefStr DefVar
Dim Do DoEvents Double Each
Else ElseIf empty End EndIf
Enum Eqv Erase Event Exit
False Fix For Friend Function
Get Global GoSub GoTo If
Imp Implements In Input InputB
Int Integer Is Lbound Len
LenB Let Like LINEINPUT Lock
Long LongLong LongPtr Loop Lset
Me Mod New Next Not
nothing null On Open Option
Optional Or ParamArray Preserve Print
Private PSet Public Put RaiseEvent
ReDim Rem Resume Return Rset
Scale Seek Select Set Sgn
Shared Single Spc Static Stop
String Sub Tab Then To
True Type TypeOf Ubound Unlock
Until Variant VB_Base VB_Control VB_Creatable
VB_Customizable VB_Description VB_Exposed VB_Ext_KEY VB_GlobalNameSpace
VB_HelpID VB_Invoke_Func VB_Invoke_Property VB_Invoke_PropertyPut VB_Invoke_PropertyPutRefVB_MemberFlags
VB_Name VB_PredeclaredId VB_ProcData VB_TemplateDerived VB_UserMemId
VB_VarDescription VB_VarHelpID VB_VarMemberFlags VB_VarProcData VB_VarUserMemId
Wend While With WithEvents Write
Xor

全部で171個あります。
“friend”も宣言できないんですね。知らなかった。

関連ページ