Enum-Anweisung

Deklariert einen Typ für eine Enumeration.

Syntax

[ Öffentlich | Privat ] Enumnamemembername [= constantexpression ] membername [= constantexpression ] . . .Endenumeration

Die Enum-Anweisung besteht aus folgenden Komponenten:

Teil Beschreibung
Public Optional. Gibt an, dass der Enum-Typ im gesamten Projekt sichtbar ist. Für Enum-Typen gilt standardmäßig der Typ Public.
Private Optional. Gibt an, dass der Enum-Typ nur innerhalb des Moduls sichtbar ist, in dem er erscheint.
name Erforderlich. Der Name des Enum-Typs. name muss ein gültiger Visual Basic-Bezeichner sein und wird als Typ angegeben, wenn Variablen oder Parameter vom Enum-Typ deklariert werden.
Membername Erforderlich. Ein gültiger Visual Basic-Bezeichner, der den Namen angibt, mit dem ein Teilelement des Enum-Typs bezeichnet wird.
Constantexpression Optional. Dies ist der Wert des Elements (Auswertung zu Long). Wenn kein Konstantenausdruck angegeben wird, ist der zugewiesene Wert entweder 0 (wenn es sich um den ersten Membernamen handelt) oder 1 größer als der Wert des unmittelbar vorangehenden Membernamens.

HinwBemerkungeneise

Enumerationsvariablen sind Variablen, die mit einem Enum -Typ deklariert werden. Sowohl Variablen als auch Parameter können mit einem Enum -Typ deklariert werden. Die Elemente des Enum-Typs werden in der Enum-Anweisung zu Konstantenwerten initialisiert. Die zugewiesenen Werte können zur Laufzeit nicht geändert werden und sowohl positive als auch negative Zahlen enthalten. Beispiel:

Enum SecurityLevel 
 IllegalEntry = -1 
 SecurityLevel1 = 0 
 SecurityLevel2 = 1 
End Enum 

Eine Enum-Anweisung kann nur auf Modulebene angezeigt werden. Nachdem der Enumerationstyp definiert wurde, kann er verwendet werden, um Variablen, Parameter oder Prozeduren zu deklarieren, die seinen Typ zurückgeben. Es ist nicht möglich, einen Enum -Typnamen mit einem Modulnamen zu qualifizieren.

Public Enum-Typen in einem Klassenmodul sind keine Elemente der Klasse, werden jedoch in die Typbibliothek geschrieben. Enum-Typen, die in Standardmodulen definiert sind, werden nicht in Typbibliotheken geschrieben. Öffentliche Enumerationstypen mit demselben Namen können nicht sowohl in Standardmodulen als auch in Klassenmodulen definiert werden, da sie denselben Namensraum verwenden. Wenn zwei Enum -Typen in unterschiedlichen Typbibliotheken über den gleichen Namen verfügen, aber unterschiedliche Elemente aufweisen, hängt es für einen Verweis auf eine Variable des Typs davon ab, welche Typbibliothek unter Verweise die höhere Priorität hat.

Sie können einen Enum-Typ nicht als Ziel in einem With-Block verwenden.

Beispiel

Im folgenden Beispiel wird die Enum-Anweisung veranschaulicht, die zum Definieren einer Auflistung mit benannten Konstanten verwendet wird. In diesem Fall handelt es sich bei den Konstanten um Farben, die Sie z. B. auswählen können, um Dateneingabeformulare für eine Datenbank zu entwerfen.

Public Enum InterfaceColors 
 icMistyRose = &HE1E4FF& 
 icSlateGray = &H908070& 
 icDodgerBlue = &HFF901E& 
 icDeepSkyBlue = &HFFBF00& 
 icSpringGreen = &H7FFF00& 
 icForestGreen = &H228B22& 
 icGoldenrod = &H20A5DA& 
 icFirebrick = &H2222B2& 
End Enum

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.