variablen - vba variable modulweit



Was ist der Unterschied zwischen Dim, Global, Public und Private als Modular Field Access Modifiers? (1)

Dim und Private funktionieren gleich, obwohl die allgemeine Konvention Private auf der Modulebene und Dim auf der Sub / Function-Ebene ist. Public und Global sind in ihrer Funktion fast identisch, Global kann jedoch nur in Standardmodulen verwendet werden, während Public in allen Kontexten (Module, Klassen, Controls, Formulare etc.) verwendet werden kann. Global stammt aus älteren Versionen von VB und wurde wahrscheinlich beibehalten aus Gründen der Abwärtskompatibilität, wurde jedoch vollständig von Public .

In VB6 / VBA können Sie Variablen auf Modulebene außerhalb einer bestimmten Sub oder Function deklarieren. Ich habe Private und Public vor internen Modulen verwendet und verstehe sie so:

  • Public - sichtbar für alle Codes innerhalb des Moduls und für alle Codes außerhalb des Moduls, wodurch es im Wesentlichen global ist.
  • Private - Nur sichtbar, um innerhalb des Moduls zu codieren.

Ich habe bemerkt, dass Sie Dim und Global als Modifikatoren für modulare Variablen verwenden können. Sind Dim und Global anders als Private und Public , wenn sie als Zugriffsmodifikatoren für modulare Felder verwendet werden? Wenn ja, wie unterscheiden sie sich?





access-modifiers