VBA-Variante - Wie deklariere ich den Variantendatentyp in Excel VBA?

Inhaltsverzeichnis

Excel VBA-Variantendatentyp

Der Variantendatentyp in VBA ist ein universeller Datentyp, der jede Art von Datentyp enthalten kann. Bei der Zuweisung des Datentyps muss jedoch das Wort „Variant“ verwendet werden.

Wir alle wissen, wie wichtig Variablen in VBA-Projekten sind. Sobald die Variable deklariert ist, müssen wir den deklarierten Variablen einen Datentyp zuweisen. Die Datentypzuweisung in VBA hängt davon ab, welche Art von Daten wir den deklarierten Variablen zuweisen müssen.

Schauen Sie sich zum Beispiel den folgenden Code an.

Im obigen Code habe ich die Variable als "IntegerNumber" deklariert und den Datentyp als "Integer" zugewiesen .

Bevor ich der Variablen den Datentyp zuweise, sollte ich die Einschränkungen der Variablen kennen. Da ich den Datentyp als Ganzzahl zugewiesen habe, kann meine Variable die Zahlen von -32768 bis 32767 enthalten.

Alles, was über dem Grenzwert des Datentypgrenzwerts liegt, führt zu einem Fehler. Wenn wir also mehr als 32767 Werte speichern möchten, müssen wir die verschiedenen Datentypen zuweisen, die mehr als 32767 enthalten können.

Um diese Einschränkung zu überwinden, haben wir einen universellen Datentyp "Variante". Dieser Artikel zeigt Ihnen die vollständige Anleitung eines Variant-Datentyps.

Wie deklariere ich den Variantendatentyp?

Wir können den Variantendatentyp als den üblichen Datentyp deklarieren, aber während wir den Datentyp zuweisen, müssen wir das Wort "Variant" verwenden.

Code:

Sub Variant_Example1 () Dim MyNumber As Variant End Sub

Dadurch kann die Variable jetzt jede Art von Daten verarbeiten. Wir können beliebige Zahlen, Zeichenfolgen, Daten und viele andere Dinge zuweisen.

Unten ist die Demonstration des gleichen.

Code:

 Sub Variant_Example1 () Dim MonthName als Variante Dim MyDate als Variante Dim MyNumber als Variante Dim MyName als Variante MonthName = "Januar" MyDate = "24-04-2019" MyNumber = 4563 MyName = "Mein Name ist Excel VBA" End Sub

Oben habe ich der Variablen ein Datum zugewiesen, der Variablen eine Nummer, der Variablen eine Zeichenfolge. Der Variant-Datentyp ermöglicht es uns also, uns keine Gedanken darüber zu machen, welche Art von Daten wir speichern oder ihm zuweisen werden.

Sobald wir eine Variable als Variante deklarieren, müssen wir uns beim Codieren nicht mehr um unseren Datentyp irgendwo in der Mitte des Projekts kümmern. Dadurch kann die Variable flexibel an unsere Bedürfnisse angepasst werden. Wahrscheinlich mit einer einzigen Variablen können wir unsere Operationen im gesamten Projekt ausführen.

Die VBA-Variante erfordert keinen expliziten Weg

Das allgemeine Verfahren zum Deklarieren einer VBA-Variablen besteht darin, die Variable zuerst zu benennen und ihr dann den Datentyp zuzuweisen. Unten ist ein Beispiel dafür.

Dies ist die explizite Methode zum Deklarieren der Variablen. Wenn wir jedoch den Datentyp Variant deklarieren, müssen wir ihn nicht explizit deklarieren. Stattdessen können wir einfach die Variable benennen und den Datentypteil weglassen.

Code:

Sub Variant_Example1 () Dim MyNumber End Sub

Im obigen Code habe ich die Variable als "MyNumber" bezeichnet, aber nach dem Benennen der Variablen habe ich ihr keinen Datentyp zugewiesen.

Ich habe den As-Teil (Datentypname) weggelassen, da die Variable ausnahmslos zu Variant wird, sobald wir den Datentypzuweisungsteil ignorieren.

Dinge, an die man sich erinnern sollte

Obwohl der Datentyp "Variante" flexibel mit den Daten ist, die wir speichern werden, ist dies nicht der beliebte Datentyp. Sieht seltsam aus, aber absolut WAHR. Sofern es keinen bestimmten Grund für die Verwendung von Personen gibt, wird die Verwendung dieses Datentyps vermieden. Im Folgenden sind einige Gründe aufgeführt, warum Sie die Verwendung von Variant vermeiden sollten.

  • Alle Datenfehlanpassungsfehler werden ignoriert.
  • Der Variantendatentyp beschränkt uns auf den Zugriff auf die IntelliSense-Liste.
  • VBA errät immer den bestmöglichen Datentyp und weist ihn entsprechend zu.
  • Im Fall des Datentyplimits "Integer" benachrichtigt uns der Datentyp "Variant" nicht, sobald er die Grenzwerte von 32767 überschreitet.

Interessante Beiträge...