Aufrufen von Eigenschaftsprozeduren

Die folgende Tabelle enthält die Syntax zum Aufrufen von Eigenschaftsprozeduren:

Eigenschaftenprozedur Syntax
Property Get [Set ] varname = [ object.] propname [( [argumente] )]
Property Let [Let ] [ Objekt.] propname [( [arguments] )] = argument
Eigenschaftensatz Set [ Object.] propname [( [argumente] )] = objectArg

Eigenschaftsprozeduraufrufe erfordern mindestens ein Argument, den Zuweisungsoperator (=) und den Namen der Eigenschaftenprozedur.

  • In einem Aufruf mit dem Eigenschaftennamen auf der rechten Seite des Zuweisungsoperators ruft Visual Basic Property Get auf, um Informationen von der Klasse/dem Objekt zurückzugeben.
  • In einem Aufruf mit dem Eigenschaftennamen auf der linken Seite des Zuweisungsoperators ruft Visual Basic Property Let oder Property Set auf, um Informationen innerhalb des Klassenobjekts zu aktualisieren.

Wenn die Deklaration einer Eigenschaftenprozedur über mehrere Parameter verfügt, übergibt das Argument auf der rechten Seite des Zuweisungsoperators an den letzten Parameter an die Property Let- oder Property Set-Prozeduren.

Im folgenden Diagramm wird beispielsweise Property Let verwendet, um zu zeigen, wie Argumente im Aufruf der Eigenschaftenprozedur (oben) mit Parametern in der Deklaration (unten) zusammenhängen:

Property Let

Im folgenden Codebeispiel wird die Beziehung zwischen Eigenschaftenprozedurargumenten und Parametern veranschaulicht.

'DemoType class declaration
Private pW
Private pX
Private pY
Private pZ

Property Get DemoProperty(w, x, y)
    'Calling format is: `z = DemoProperty(w, x, y)`
    ' or `Set z = DemoProperty(w, x, y)`
    w = pW
    x = pX
    y = pY
    If IsObject(pZ) Then
        Set DemoProperty = pZ
    Else
        DemoProperty = pZ
    End If
End Property
Property Let DemoProperty(w, x, y, z)
    'Calling format is `DemoProperty(w, x, y) = z`
    pW = w
    pX = x
    pY = y
    pZ = z
End Property
Property Set DemoProperty(w, x, y, z As Object)
    'Calling format is `Set DemoProperty(w, x, y) = z`
    pW = w
    pX = x
    pY = y
    Set pZ = z
End Property
Sub DemoSub()
    Dim myDemo As Object
    Dim a, b, c, d
    Dim w, x, y, z

    Set myDemo = New DemoType

    a = "Hello"
    b = ", "
    c = "world"
    d = "!"

    Debug.Print Join(Array(a, b, c, d), "") ' Hello, world!a

    'Call Property Let DemoProperty(a, b, c, d)
    Let myDemo.DemoProperty(a, b, c) = d
    'Call Property Get
    d = myDemo.DemoProperty(a, b, c)

    Debug.Print Join(Array(a, b, c, d), "") ' Hello, world!
End Sub

In der Praxis werden Eigenschaftenprozeduren mit mehreren Argumenten nur verwendet, um Arrays von Eigenschaften zu erstellen.

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.