Keywords (Visual Basic)

The following tables list all Visual Basic language keywords.

Reserved Keywords

The following keywords are reserved, which means that you cannot use them as names for 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

We do not recommend that you use escaped names, because it can make your code hard to read, and it 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 CDbl CDec Char
CInt Class Constraint Class Statement 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 Statement
End <keyword> EndIf Enum Erase
Error Event Exit False
Finally For (in For…Next) For Each…Next Friend
Function Get GetType GetXMLNamespace
Global GoSub GoTo Handles
If If() Implements Implements Statement
Imports (.NET Namespace and Type) Imports (XML Namespace) In In (Generic Modifier)
Inherits Integer Interface Is
IsNot Let Lib Like
Long Loop Me Mod
Module Module Statement MustInherit MustOverride
MyBase MyClass Namespace Narrowing
New Constraint New Operator Next Next (in Resume)
Not Nothing NotInheritable NotOverridable
Object Of On Operator
Option Optional Or OrElse
Out (Generic Modifier) 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 Constraint Structure Statement Sub SyncLock
Then Throw To True
Try TryCast TypeOf…Is UInteger
ULong UShort Using Variant
Wend When While Widening
With WithEvents WriteOnly Xor
#Const #Else #ElseIf #End
#If = & &=
* *= / /=
\ \= ^ ^=
+ += - -=
>> Operator >>= Operator << <<=
Note

EndIf, GoSub, Variant, and Wend are retained as reserved keywords, although they are no longer used in Visual Basic. The meaning of the Let keyword has changed. Let is now used in LINQ queries. For more information, see Let Clause.

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.

Aggregate Ansi Assembly Async
Auto Await Binary Compare
Custom Distinct Equals Explicit
From Group By Group Join Into
IsFalse IsTrue Iterator Join
Key Mid Off Order By
Preserve Skip Skip While Strict
Take Take While Text Unicode
Until Where Yield #ExternalSource
#Region
Title Description
Arrays Summary Lists language elements that are used to create, define, and use arrays.
Collection Object Summary Lists language elements that are used for collections.
Compiler Directive Summary (Visual Basic) Lists directives that control compiler behavior.
Control Flow Summary Lists statements that are used for looping and controlling procedure flow.
Conversion Summary Lists functions that are used to convert numbers, dates, times, and strings.
Data Types Summary Lists data types. Also lists functions that are used to convert between data types and verify data types.
Dates and Times Summary Lists language elements that are used for dates and times.
Declarations and Constants Summary Lists statements that are used to declare variables, constants, classes, modules, and other programming elements. Also lists language elements that are used to obtain object information, handle events, and implement inheritance.
Directories and Files Summary Lists functions that are used to control the file system and to process files.
Errors Summary Lists language elements that are used to catch and return run-time error values.
Financial Summary Lists functions that are used to perform financial calculations.
Input and Output Summary Lists functions that are used to read from and write to files, manage files, and print output.
Information and Interaction Summary Lists functions that are used to run other programs, obtain command-line arguments, manipulate COM objects, retrieve color information, and use control dialog boxes.
Math Summary Lists functions that are used to perform trigonometric and other mathematical calculations.
My Reference Lists the objects contained in My, a feature that provides access to frequently used methods, properties, and events of the computer on which the application is running, the current application, the application's resources, the application's settings, and so on.
Operators Summary Lists assignment and comparison expressions and other operators.
Registry Summary Lists functions that are used to read, save, and delete program settings.
String Manipulation Summary Lists functions that are used to manipulate strings.

See Also

Visual Basic Runtime Library Members