Empfehlung - keine Standardeigenschaften

Vermeide es, Standardeigenschaften zu benutzen

Sehr oft werden Standardeigenschaften von Objekten genutzt, ohne diese explizit zu (be)nennen. Der Code wird für manche dadurch schlanker und „lesbarer“. Die beiden nachfolgenden Zeilen zeigen die gleiche Information:

    MsgBox Err.Number
    MsgBox Err

Der Code funktioniert, da „Number“ die Standardeigenschaft des Err-Objekts ist.

Standardeigenschaften können sich in Nachfolgeversionen ändern. Zudem ist das Weglassen dieser (Standard)-Eigenschaften nicht wirklich der Lesbarkeit dienlich. Darüber hinaus ist es auch nicht immer direkt ersichtlich, ob man ein Objekt referenziert und lediglich dessen Standardwert abfragt.

Ein weiterer technischer Grund für die explizite Nutzung/Nennung der Standardeigenschaften, sind bekannte Speicherprobleme mit manchen COM-Objekten bei der impliziten Nutzung der Standardeigenschaften.

Der wohl am meisten implizit genutzte Eigenschaftswert ist der „Field Value“ bei Recordsets. Viele Programmierer nutzen diese Eigenschaft ungefähr wie folgt:

rs("FieldName")

Hier liegt sogar ein doppelter impliziter Standard vor. Die vollständige – und empfohlene – Referenz sollte wie folgt aussehen:

rs.Fields("FieldName").Value