Property Set-Anweisung
Declares the name, arguments, and code that form the body of a Propertyprocedure, which sets a reference to an object.
Syntax
[ Public | Private | Friend ] [ Static ] Property Setname ( [ arglist ], reference )
[ statements ]
[ Beenden-Eigenschaft ]
[ statements ]
End-Eigenschaft
Die Syntax der Property Set-Anweisung umfasst die folgenden Komponenten:
Teil | Beschreibung |
---|---|
Optional | Optional. Gibt an, ob das Argument von der aufrufenden Prozedur bereitgestellt wird. |
Public | Optional. Gibt an, dass auf die Property Set-Prozedur von allen anderen Prozeduren in allen Modulen zugegriffen werden kann. Bei Verwendung in einem Modul mit einer Option Private-Anweisung ist die Prozedur nicht außerhalb des Projekts verfügbar. |
Private | Optional. Gibt an, dass die Property Set-Prozedur nur für Prozeduren in dem Modul zugänglich ist, in dem sie deklariert wurde. |
Friend | Optional. Wird nur in einem Klassenmodul verwendet. Gibt an, dass die Property Get-Prozedur im gesamten Projekt sichtbar ist, jedoch nicht für den Controller einer Objektinstanz. |
Static | Optional. Gibt an, dass die lokalen Variablen der Property Set-Prozedur zwischen den Aufrufen beibehalten werden. Das Static-Attribut wirkt sich auch dann nicht auf Variablen aus, die außerhalb der Property Set-Prozedur deklariert werden, wenn sie in der Prozedur verwendet werden. |
name | Erforderlich. Name der Property Set-Prozedur; folgt Standardnamenskonventionen für Variablen, mit der Ausnahme, dass der Name derselbe sein kann wie der einer Property Get- oder Property Let-Prozedur im selbem Modul. |
arglist | Erforderlich. Eine Liste mit Variablen, die die Argumente darstellen, die beim Aufruf an die Property Set-Prozedur weitergegeben werden. Mehrere Argumente werden durch Kommas getrennt. |
Referenz | Erforderlich. Variable mit dem Objektverweis, der auf der rechten Seite der Zuweisung eines Objektverweises verwendet wird. |
statements | Optional. Eine Gruppe von Anweisungen, die in der Property Set-Prozedur ausgeführt werden sollen. |
Das arglist-Argument weist die folgende Syntax und folgende Teile auf:
[ Optional ] [ ByVal | ByRef ] [ ParamArray ] varname [ ( ) ] [ Astype ] [ =defaultvalue ]
Teil | Beschreibung |
---|---|
Optional | Optional. Gibt an, dass ein Argument nicht erforderlich ist. Wenn verwendet, müssen alle nachfolgenden Argumente in arglist optional sein und mithilfe des Schlüsselworts Optional deklariert werden. Beachten Sie, dass es nicht möglich ist, dass die rechte Seite eines Property Set-Ausdrucksoptional ist. |
ByVal | Optional. Gibt an, dass das Argument nach Wert übergeben wird. |
ByRef | Optional. Gibt an, dass das Argument nach Verweis übergeben wird. ByRef ist die Standardeinstellung in VBA im Gegensatz zu Visual Basic .NET. |
ParamArray | Optional. Wird lediglich als letztes Argument in arglist verwendet, um anzuzeigen, dass das letzte Argument ein Optional-Array von Variant-Elementen ist. Mit dem Schlüsselwort ParamArray können Sie eine beliebige Anzahl von Argumenten bereitstellen. Es darf jedoch nicht zusammen mit ByVal, ByRef oder Optional verwendet werden. |
varname | Erforderlich. Name der Variable, die das Argument darstellt; folgt den Standardbenennungskonventionen für Variablen. |
type | Optional. Datentyp des Arguments, das an die Prozedur weitergegeben wird. KannByte, Boolean, Integer, Long, Currency, Single, Double, Decimal (derzeit nicht unterstützt), Date, String (nur Variablenlänge), Object, Variant oder ein spezifischer Objekttyp. Wenn der Parameter nicht Optional lautet, kann auch ein benutzerdefinierter Typ angegeben werden. |
defaultvalue | Optional. Eine beliebige Konstante oder ein Konstantenausdruck. Gilt nur für den Parameter Optional. Wenn der Typ Object ist, kann ein expliziter Standardwert nur Nothing lauten. |
Hinweis
Jede Property Set-Anweisung muss mindestens ein Argument für die Prozedur definieren, die es definiert. Das Argument (oder das letzte Argument, wenn es mehr als ein Argument gibt) enthält die aktuelle Objektreferenz für die Eigenschaft, wenn das Verfahren, das durch die Property Set-Anweisung definiert wird, aufgerufen wird. Sie wird in der vorherigen Syntax als Verweis bezeichnet. Es kann nicht Optional sein.
Hinweise
Wenn nicht mithilfe von Public, Private oder Friend explizit angegeben, sind Property-Prozduren standardmäßig öffentlich. Wenn Static nicht verwendet wird, wird der Wert der lokalen Variablen zwischen Aufrufen nicht beibehalten.
Das Schlüsselwort Friend kann nur in Klassenmodulen verwendet werden. Auf Friend-Prozeduren kann jedoch durch Prozeduren in jedem beliebigen Modul eines Projekts zugegriffen werden. Eine Friend-Prozedur wird weder in der Typbibliothek ihrer übergeordneten Klasse angezeigt noch kann eine Friend-Prozedur spät gebunden werden.
Der gesamte ausführbare Code muss in Prozeduren enthalten sein. Sie können keine Property Set-Prozedur in einer anderen Property-, Sub- oder Function-Prozedur definieren.
Die Exit Property-Anweisung verursacht einen sofortigen Schließvorgang einer Property Set-Prozedur. Das Programm wird weiterhin mit der Anweisung ausgeführt, die auf die Anweisung folgt, die die Property Set-Prozedur aufgerufen hat. Eine beliebige Anzahl von Exit Property-Anweisungen kann an beliebiger Stelle in einer Property Set-Prozedur vorkommen.
Wie die Function - oder Property Get -Prozedur ist auch die Property Set -Prozedur eine eigenständige Prozedur, die Argumente erhalten, eine Reihe von Anweisungen ausführen und die Werte ihrer Argumente ändern kann. Im Gegensatz zu einer Function- und einer Property Get-Prozedur, die beide einen Wert zurückgeben, können Sie eine Property Set-Prozedur jedoch nur auf der linken Seite einer Objektreferenzzuweisung oder einer Set-Anweisung verwenden.
Beispiel
In diesem Beispiel wird die Property Set-Anweisung verwendet, um eine Eigenschaftenprozedur zu definieren, die eine Referenz auf ein Objekt festlegt.
' The Pen property may be set to different Pen implementations.
Property Set Pen(P As Object)
Set CurrentPen = P ' Assign Pen to object.
End Property
Siehe auch
- Aufrufen von Eigenschaftenprozeduren
- Ausführen von Code beim Festlegen von Eigenschaften
- Schreiben einer Eigenschaftenprozedur
- Datentypen
- Anweisungen
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.