Property Let-AnweisungProperty Let statement

Deklariert den Namen, die Argumenteund den Code, die den Textkörper einer Property- Prozedurbilden, die einer Eigenschafteinen Wert zuweist.Declares the name, arguments, and code that form the body of a Property procedure, which assigns a value to a property.

SyntaxSyntax

[ Public | private | Friend ] [ Statisch ] Eigenschaft Let Name ([ Arglist ], Wert )[ Public | Private | Friend ] [ Static ] Property Letname ( [ arglist ], value )
[ statements ][ statements ]
[ Beenden-Eigenschaft ][ Exit Property ]
[ statements ][ statements ]
End PropertyEnd Property


Die Anweisungssyntax PropertyLet hat folgende Teile:The Property Let statement syntax has these parts:

TeilPart BeschreibungDescription
PublicPublic Optional.Optional. Gibt an, dass die Property Let-Prozedur für alle anderen Prozeduren in allen Modulen zugänglich ist.Indicates that the Property Let procedure is accessible to all other procedures in all modules. Wenn die Prozedur in einem Modul verwendet wird, das eine Option Private-Anweisung enthält, ist sie außerhalb des Projekts nicht zugänglich.If used in a module that contains an Option Private statement, the procedure is not available outside the project.
PrivatePrivate Optional.Optional. Gibt an, dass die Property Let-Prozedur nur für Prozeduren in dem Modul zugänglich ist, in dem sie deklariert wurde.Indicates that the Property Let procedure is accessible only to other procedures in the module where it is declared.
FriendFriend Optional.Optional. Wird nur in einem Klassenmodul verwendet.Used only in a class module. Gibt an, dass die Property Let-Prozedur im gesamten Projekt sichtbar ist, jedoch nicht für einen Controller einer Instanz eines Objekts.Indicates that the Property Let procedure is visible throughout the project, but not visible to a controller of an instance of an object.
StaticStatic Optional.Optional. Gibt an, dass die lokalen Variablen der Property Let-Prozedur zwischen Aufrufen beibehalten werden.Indicates that the Property Let procedure's local variables are preserved between calls. Das Static-Attribut beeinflusst keine Variablen, die außerhalb der Property Let-Prozedur deklariert wurden, auch dann nicht, wenn Sie in der Prozedur verwendet werden.The Static attribute doesn't affect variables that are declared outside the Property Let procedure, even if they are used in the procedure.
namename Erforderlich.Required. Name der -Eigenschaft Let- Prozedur; folgt standardmäßigen Variablen Benennungskonventionen, mit dem Unterschied, dass der Name mit einer Property Get- oder PropertySet-Prozedur in demselben Modul identisch sein kann.Name of the Property Let procedure; follows standard variable naming conventions, except that the name can be the same as a Property Get or Property Set procedure in the same module.
arglistarglist Erforderlich.Required. Liste der Variablen, die Argumente darstellen, die beim Aufruf an die Property Let-Prozedur übergeben werden.List of variables representing arguments that are passed to the Property Let procedure when it is called. Mehrere Argumente werden durch Kommas getrennt.Multiple arguments are separated by commas. Name und Datentyp jedes Arguments in einer Property Let-Prozedur müssen dieselben sein wie beim entsprechenden Argument in einer Property Get-Prozedur.The name and data type of each argument in a Property Let procedure must be the same as the corresponding argument in a Property Get procedure.
valuevalue Erforderlich.Required. Variable, die den Wert enthält, der der Eigenschaft zugewiesen werden soll.Variable to contain the value to be assigned to the property. Wenn die Prozedur aufgerufen wird, wird dieses Argument auf der rechten Seite des aufrufenden Ausdrucks angezeigt.When the procedure is called, this argument appears on the right side of the calling expression. Der Datentyp von Wert muss derselbe sein wie der Rückgabedatentyp der entsprechenden Property Get-Prozedur.The data type of value must be the same as the return type of the corresponding Property Get procedure.
statementsstatements Optional.Optional. Eine beliebige Gruppe von Anweisungen, die innerhalb der Property Let-Prozedur ausgeführt werden sollen.Any group of statements to be executed within the Property Let procedure.

Das arglist-Argument hat folgende Syntax und Teile:The arglist argument has the following syntax and parts:

[ Optional ] [ ByVal | ByRef ] [ ParamArray ] varname [()] [ As Type ] [ = DefaultValue ][ Optional ] [ ByVal | ByRef ] [ ParamArray ] varname [ ( ) ] [ As type ] [ = defaultvalue ]


TeilPart BeschreibungDescription
OptionalOptional Optional.Optional. Gibt an, dass ein Argument nicht erforderlich ist.Indicates that an argument is not required. Wenn verwendet, müssen alle nachfolgenden Argumente in arglist optional sein und mithilfe des Schlüsselworts Optional deklariert werden.If used, all subsequent arguments in arglist must also be optional and declared by using the Optional keyword. Beachten Sie, dass die rechte Seite eines Property Let-Ausdrucks nicht Optional sein kann.Note that it is not possible for the right side of a Property Let expression to be Optional.
ByValByVal Optional.Optional. Gibt an, dass das Argument nach Wert übergeben wird.Indicates that the argument is passed by value.
ByRefByRef Optional.Optional. Gibt an, dass das Argument nach Verweis übergeben wird.Indicates that the argument is passed by reference. ByRef ist die Standardeinstellung in Visual Basic.ByRef is the default in Visual Basic.
ParamArrayParamArray Optional.Optional. Wird lediglich als letztes Argument in arglist verwendet, um anzuzeigen, dass das letzte Argument ein Optional-Array von Variant-Elementen ist.Used only as the last argument in arglist to indicate that the final argument is an Optional array of Variant elements. Mit dem Schlüsselwort ParamArray können Sie eine beliebige Anzahl von Argumenten bereitstellen.The ParamArray keyword allows you to provide an arbitrary number of arguments. Es darf jedoch nicht zusammen mit ByVal, ByRef oder Optional verwendet werden.It may not be used with ByVal, ByRef, or Optional.
varnamevarname Erforderlich.Required. Name der Variable, die das Argument darstellt; folgt den Standardbenennungskonventionen für Variablen.Name of the variable representing the argument; follows standard variable naming conventions.
typetype Optional.Optional. Datentyp des Arguments, das an die Prozedur übergeben wird; kann Byte, Boolean, Integer, Long, Currency, Single, Double, Decimal (derzeit nicht unterstützt), Date, String (nur mit variabler Länge), Object, Variante oder ein spezifischer Objekttyp sein.Data type of the argument passed to the procedure; may be Byte, Boolean, Integer, Long, Currency, Single, Double, Decimal (not currently supported), Date, String (variable length only), Object, Variant, or a specific object type. Wenn der Parameter nicht Optional ist, kann auch ein benutzerdefinierter Typ angegeben werden.If the parameter is not Optional, a user-defined type may also be specified.
defaultvaluedefaultvalue Optional.Optional. Eine beliebige Konstante oder ein Konstantenausdruck.Any constant or constant expression. Gilt nur für den Parameter Optional.Valid for Optional parameters only. Wenn der Typ Object ist, kann ein expliziter Standardwert nur Nothing lauten.If the type is an Object, an explicit default value can only be Nothing.

Hinweis

[!HINWEIS] Jede Property Let -Anweisung muss mindestens ein Argument für die durch sie definierte Prozedur definieren.Every Property Let statement must define at least one argument for the procedure it defines. Dieses Argument (oder das letzte Argument, falls es mehr als eines gibt) enthält den tatsächlichen Wert, der der Eigenschaft zugewiesen werden soll, wenn die durch die Property Let-Anweisung definierte Prozedur aufgerufen wird.That argument (or the last argument if there is more than one) contains the actual value to be assigned to the property when the procedure defined by the Property Let statement is invoked. Dieses Argument wird in der vorausgehenden Syntax als Wert bezeichnet.That argument is referred to as value in the preceding syntax.

HinweiseRemarks

Wenn nicht mithilfe von Public, Private oder Friend explizit angegeben, sind Property-Prozduren standardmäßig öffentlich.If not explicitly specified by using Public, Private, or Friend, Property procedures are public by default. Wenn Static nicht verwendet wird, wird der Wert der lokalen Variablen zwischen Aufrufen nicht beibehalten.If Static isn't used, the value of local variables is not preserved between calls.

Das Schlüsselwort Friend kann nur in Klassenmodulen verwendet werden.The Friend keyword can only be used in class modules. Auf Friend-Prozeduren kann jedoch durch Prozeduren in jedem beliebigen Modul eines Projekts zugegriffen werden.However, Friend procedures can be accessed by procedures in any module of a project. Eine Friend-Prozedur wird weder in der Typbibliothek ihrer übergeordneten Klasse angezeigt noch kann eine Friend-Prozedur spät gebunden werden.A Friend procedure doesn't appear in the type library of its parent class, nor can a Friend procedure be late bound.

Der gesamte ausführbare Code muss in Prozeduren enthalten sein.All executable code must be in procedures. Sie können eine Property Let- Prozedur nicht innerhalb einer anderen Property-, Sub-oder Function -Prozedur definieren.You can't define a Property Let procedure inside another Property, Sub, or Function procedure.

Die Exit Property- Anweisung bewirkt ein sofortiges Beenden einer Property Let- Prozedur.The Exit Property statement causes an immediate exit from a Property Let procedure. Die Programmausführung wird mit der Anweisung fortgesetzt, die auf diejenige folgt, die die Property Let -Prozedur aufgerufen hat.Program execution continues with the statement following the statement that called the Property Let procedure. Eine beliebige Anzahl an Exit Property -Anweisungen kann an beliebigen Stellen in einer Property Let -Prozedur vorhanden sein.Any number of Exit Property statements can appear anywhere in a Property Let procedure.

Ebenso wie eine Function - und eine Property Get -Prozedur ist eine Property Let -Prozedur eine separate Prozedur, die Argumente annehmen, eine Folge von Anweisungen ausführen und den Wert ihrer Argumente ändern kann.Like a Function and Property Get procedure, a Property Let procedure is a separate procedure that can take arguments, perform a series of statements, and change the value of its arguments. Im Gegensatz zu einer Function -und Property-Get- Prozedur, die beide einen Wert zurückgeben, können Sie jedoch nur eine Property Let- Prozedur auf der linken Seite eines Eigenschafts Zuweisungsausdrucks oder einer Let -Anweisung verwenden.However, unlike a Function and Property Get procedure, both of which return a value, you can only use a Property Let procedure on the left side of a property assignment expression or Let statement.

BeispielExample

In diesem Beispiel wird die Property Let -Anweisung verwendet, um eine Prozedur zu definieren, die einer Eigenschaft einen Wert zuweist.This example uses the Property Let statement to define a procedure that assigns a value to a property. Die Eigenschaft zeigt die Stiftfarbe eines Zeichnungspakets an.The property identifies the pen color for a drawing package.

Dim CurrentColor As Integer 
Const BLACK = 0, RED = 1, GREEN = 2, BLUE = 3 
 
' Set the pen color property for a Drawing package. 
' The module-level variable CurrentColor is set to 
' a numeric value that identifies the color used for drawing. 
Property Let PenColor(ColorName As String) 
 Select Case ColorName ' Check color name string. 
 Case "Red" 
 CurrentColor = RED ' Assign value for Red. 
 Case "Green" 
 CurrentColor = GREEN ' Assign value for Green. 
 Case "Blue" 
 CurrentColor = BLUE ' Assign value for Blue. 
 Case Else 
 CurrentColor = BLACK ' Assign default value. 
 End Select 
End Property 
 
' The following code sets the PenColor property for a drawing package 
' by calling the Property let procedure. 
 
PenColor = "Red" 

Siehe auchSee also

Support und FeedbackSupport and feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation?Have questions or feedback about Office VBA or this documentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.