Frage : VBA Kategorien

Ich habe einige Funktionen jetzt mithilfe der Experten. Diese können über mehrfachen Datenbanken verwendet werden. ist es besser, diese Funktionen in einem Kategorienmodul mit Methoden hinzuzufügen, um die Werte zu erhalten und zurückzubringen oder die Funktionen, zu kopieren und zu kleben in einem normalen Modul gerade zu halten?

Antwort : VBA Kategorien

Ich arbeite mit vielen Kategorien und finde dann sehr nützlich, aber ich einverstanden bin mit Jim auf diesem - es gibt wenig Grund, Kategorien für Dienstprogrammfunktionen zu verursachen. Kategorien sind sehr nützliches, WENN Sie verursachen müssen mehr als, eins des gleichen Einzelteils - z.B. wenn Sie Kategorien verursachen müssen, um die Eigenschaften von Trägern zu halten Dutzend - aber für Dienstprogrammfunktionen Sie nur eins von denen auf einmal verwenden.

Im spezifischen Respekt zu Ihrem isse:

Vorträger ()
Schwaches Auto als Träger 'DIESES IST der FEINE GEFUNDENE TRÄGER
Auto einstellen = neuer Träger ', NACHDEM NEUER TRÄGER NICHT ERSCHEINT
Unterseeboot beenden

Sie anzeigen, dass der Name Ihrer KATEGORIE „DataTests“ ist, nicht „Träger“ ". Träger ist eine verbraucherbestimmte Art, die im Kategorien-Modul erklärt, das DataTests genannt, und da so Sie nicht in der Lage sind, an es zu gelangen (nüchtern, Sie findet, dass er imposisble, mit einem UDT zu arbeiten in einem Kategorien-Modul von der Außenseite dieses Kategorienmodul definiert). UDTs verwendet im Allgemeinen als interne Datenstrukturen innerhalb der Kategorie, und die Eigenschaften der Kategorie benutzt, um das Input/Output to/from die Kategorie zu behandeln. Das UDT verwendet einfach, um das Dateninnere zu speichern dieser Fall der calss.

Die korrekte Weise zu tun, die ist:

Schwaches Auto als DataTests
Auto einstellen = neues DataTests

Msgbox Car.bHP

Auch, es gibt wenig Grund, (a) ein UDT und (b) einzelne Variablen zu verwenden, um interne Kategoriendaten zu speichern. Gebrauch einer oder der andere, nicht beide.




Weitere Lösungen  
 
programming4us programming4us