The following tables list all the Visual Basic language keywords.

151 Reserved Keywords

The following keywords are reserved, which means you cannot use them as names for your programming elements such as variables or procedures. You can bypass this restriction by enclosing the name in brackets ([ ]). For more information, see "Escaped Names" in Declared Element Names.
Note
Using escaped names is not recommended, because it can make your code hard to read, and can lead to subtle errors that can be difficult to find.
AddHandler AddressOf Alias And
AndAlso As Boolean ByRef
Byte ByVal Call Case
Catch CBool CByte CChar
CDate CDec CDbl Char
CInt Class CLng CObj
Const Continue CSByte CShort
CSng CStr CType CUInt
CULng CUShort Date Decimal
Declare Default Delegate Dim
DirectCast Do Double Each
Else ElseIf End EndIf
Enum Erase Error Event
Exit False Finally For
Friend Function Get GetType
Global GoSub GoTo Handles
If Implements Imports In
Inherits Integer Interface Is
IsNot Let Lib Like
Long Loop Me Mod
Module MustInherit MustOverride MyBase
MyClass Namespace Narrowing New
Next Not Nothing NotInheritable
NotOverridable Object Of On
Operator Option Optional Or
OrElse Overloads Overridable Overrides
ParamArray Partial Private Property
Protected Public RaiseEvent ReadOnly
ReDim REM RemoveHandler Resume
Return SByte Select Set
Shadows Shared Short Single
Static Step Stop String
Structure Sub SyncLock Then
Throw To True Try
TryCast TypeOf Variant Wend
UInteger ULong UShort Using
When While Widening With
WithEvents WriteOnly Xor #Const
#Else #ElseIf #End #If
- & &= *
*= / /= \
\= ^ ^= +
+= = -=
Note
EndIf, GoSub, Let, Variant, and Wend are retained as reserved keywords, although they are no longer used in Visual Basic.

Unreserved Keywords

The following keywords are not reserved, which means you can use them as names for your programming elements. However, doing this is not recommended, because it can make your code hard to read and can lead to subtle errors that can be difficult to find.
Ansi Assembly Auto Binary
Compare Custom Explicit IsFalse
IsTrue Mid Off Preserve
Strict Text Unicode Until
#ExternalSource #Region