Excel VBA Double-Datentyp

In VBA gibt es verschiedene Datentypen, die je nach Bedarf verwendet werden. Genauso wie Integer-Datentyp für Zahlen verwendet wird, wird der String-Datentyp für Alphabete und Text verwendet und ein Long-Datentyp wird verwendet, wenn wir Zahlen oder Text ohne Einschränkung verwenden müssen. Ebenso haben wir einen Double-Datentyp, der für Dezimalzahlen verwendet wird. Wir können zwar Single für Dezimalstellen verwenden, dies behält jedoch nur Werte mit 2 Dezimalstellen bei. Wenn wir Dezimalwerte ohne Einschränkung verwenden möchten, haben wir dafür den Datentyp Double.

Wenn Sie für Dezimalwerte Integer anstelle von Double verwenden, wird der Dezimalwert in die nächsten Ganzzahlen konvertiert. Die Verwendung des Double-Datentyps ist ebenfalls begrenzt. Double kann negative Werte von -1.79769313486231E308 bis -4.94065645841247E324 und positive Werte von 4.94065645841247E-324 bis 1.79769313486232E308 aufnehmen. Darüber hinaus kann der Wert nicht akzeptiert werden.

Wie Verwenden von doppeltem VBA-Datentyp in Excel?

Im Folgenden finden Sie verschiedene Beispiele für die Verwendung des Typs "Double Data Type" in Excel VBA.

Sie können diese VBA Double Excel-Vorlage hier herunterladen - VBA Double Excel-Vorlage

VBA Double - Beispiel # 1

In diesem Beispiel wird gezeigt, wie unterschiedliche Datentypen wie Ganzzahlen und Einfachen die Ausgabe für einen beliebigen Dezimalwert ergeben und wie Double-Datentyp die Ausgabe für denselben Dezimalwert ergibt. Führen Sie dazu die folgenden Schritte aus:

Schritt 1: Öffnen Sie ein Modul über die Registerkarte Einfügen.

Schritt 2: Schreiben Sie die Unterprozedur für VBA Double. Wir können jeden anderen Namen wählen, um den Namen von VBA Double gemäß unserer Wahl zu definieren.

Code:

 Sub VBA_Double () End Sub 

Schritt 3: Definieren Sie nun eine Variable, beispielsweise A als Ganzzahl, wie unten gezeigt.

Code:

 Sub VBA_Double () Dim A As Integer End Sub 

Schritt 4: Weisen Sie der definierten Variablen einen Dezimalwert zu. Angenommen, der Dezimalwert ist wie unten gezeigt 1, 23456789 .

Code:

 Sub VBA_Double () Dim A As Integer A = 1.23456789 End Sub 

Schritt 5: Jetzt brauchen wir eine Plattform, auf der wir die Ausgabe sehen können. Hier können wir die Funktion Msgbox oder Debug.Print verwenden. Wir werden Msgbox verwenden, die traditionellste Methode.

Code:

 Sub VBA_Double () Dim A As Integer A = 1.23456789 MsgBox A End Sub 

Schritt 6: Starten Sie es, indem Sie auf die Wiedergabetaste klicken oder die Taste F5 drücken.

Wir werden sehen, das Ausgabemeldungsfeld mit dem Wert "1". Dies bedeutet, dass der Integer-Datentyp den Dezimalwert in die nächste ganze Zahl als 1 konvertiert hat.

Schritt 7: Lassen Sie uns nun den Datentyp von Integer in Single ändern und sehen, welcher Single-Datentyp uns zurückgibt.

Code:

 Sub VBA_Double () Dim A As Single A = 1.23456789 MsgBox A End Sub 

Schritt 8: Führen Sie den Code erneut aus, indem Sie auf die Wiedergabetaste klicken oder die Taste F5 drücken.

Wir werden sehen, dass der Datentyp Single den Dezimalwert 1 zurückgegeben hat . 234568, während wir den Eingabewert als 1, 23456789 eingespeist haben .

Das heißt, der Datentyp Single wandelt den eingegebenen Dezimalwert in den nächstmöglichen Dezimalwert um, indem die letzte Ziffer in den nächstgelegenen Wert umgewandelt wird, der kleiner als 5 sein sollte.

Schritt 9: Jetzt verwenden wir den Datentyp Double anstelle von Single und sehen, welche Ausgabe wir erhalten würden.

Code:

 Sub VBA_Double () Dim A As Double A = 1.23456789 MsgBox A End Sub 

Schritt 10: Führen Sie den Code erneut aus, indem Sie auf die Wiedergabetaste klicken oder die Taste F5 drücken.

Wir werden sehen, dass das Meldungsfeld genau denselben Wert hat, den wir eingegeben haben, was bedeutet, dass Double den Eingabewert nicht konvertiert hat, wenn er unter sein Limit fällt.

VBA Double - Beispiel # 2

In diesem Beispiel werden Zellreferenzen verwendet. Und wir werden auf die gleiche Weise anfangen, wie wir es in Beispiel 1 gesehen haben. Dazu haben wir einige Daten in Spalte A in mehrstelligen Dezimalstellen.

Befolgen Sie die folgenden Schritte:

Schritt 1: Schreiben Sie die Unterprozedur von VBA Double wie unten gezeigt.

Code:

 Sub VBA_Double2 () End Sub 

Schritt 2: Zuerst beginnen wir mit Integer. Definieren Sie also eine Variable als Ganzzahl wie unten gezeigt. Dies wäre unsere Eingangsvariable.

Code:

 Sub VBA_Double2 () Dim A As Integer End Sub 

Schritt 3: Danach definieren wir wieder eine Variable als Integer. Dies ist eine Variable, in der wir die Ausgabe speichern.

Code:

 Sub VBA_Double2 () Dim A As Integer Dim Deci As Integer End Sub 

Schritt 4: Öffnen Sie eine For-Next-Schleife wie unten gezeigt. Hier schreiben wir die Bedingung, um die Daten von einer Spalte in eine andere Spalte zu übertragen.

Code:

 Sub VBA_Double2 () Dim A As Integer Dim Dezi As Integer für Next A End Sub 

Schritt 5: Wählen Sie den Zellenbereich in Variable A aus. Hier liegen unsere Daten zwischen Zelle A1 und A10.

Code:

 Sub VBA_Double2 () A als Ganzzahl dim. Dezi als Ganzzahl für A = 1 bis 10 Next A End Sub 

Schritt 6: Wählen Sie nun die Zellenwerte aus, die Sie platzieren möchten. Hier stehen die Zellwerte in der ersten Spalte.

Code:

 Sub VBA_Double2 () A als Ganzzahl dimmen Dezi als Ganzzahl dimmen Für A = 1 bis 10 Dezi = Zellen (A, 1) .Wert Next A End Sub 

Schritt 7: Jetzt werden wir die ausgewählten Werte in Spalte 2 einfügen, die in der definierten Variablen Deci B ist.

Code:

 Sub VBA_Double2 () A als Ganzzahl dimmen Dezi als Ganzzahl dimmen Für A = 1 bis 10 Dezi = Zellen (A, 1) .Wert Zellen (A, 2) .Wert = Dezi Weiter A Ende Sub 

Schritt 8: Führen Sie den Code aus, indem Sie auf die Wiedergabetaste klicken oder die Taste F5 drücken.

Da wir den Datentyp Integer für die Ausgabevariable Deci ausgewählt hatten, wurden die Dezimalzahlen in Spalte B in Ganzzahlen umgewandelt.

Schritt 9: Ändern Sie den Datentyp von Deci, bei dem es sich um die Ausgabevariable handelt, wie unten gezeigt von Integer in Single .

Code:

 Sub VBA_Double2 () Dim A As Integer Dim Dezi As Single For A = 1 bis 10 Dezi = Zellen (A, 1) .Wert Zellen (A, 2) .Wert = Dezi Next A End Sub 

Schritt 10: Führen Sie den Code aus, indem Sie auf die Wiedergabetaste klicken oder die Taste F5 drücken. Wir werden sehen, dass Dezimalzahlen aus Spalte A in bestmögliche Dezimalzahlen umgewandelt wurden.

Schritt 11: Ändern Sie den Datentyp der Ausgabevariablen von Single in Double . Und sehen Sie, was wir in Spalte B bekommen werden.

Code:

 Sub VBA_Double2 () Dim A As Integer Dim Deci As Double Für A = 1 bis 10 Deci = Cells (A, 1) .Value Cells (A, 2) .Value = Deci Next A End Sub 

Schritt 12: Führen Sie den Code erneut aus, indem Sie auf die Wiedergabetaste klicken oder die Taste F5 drücken. So funktioniert VBA Double .

Vor- und Nachteile von VBA Double

  • VBA Double konvertiert dieselbe Zahl in einem bestimmten Bereich in Dezimalzahlen.
  • Es ist sehr einfach zu bedienen.
  • Auf ähnliche Weise können wir den Datentyp Double anstelle von Integer oder Single verwenden.
  • Die Dezimalzahl über dem Grenzwert, den wir im obigen Einführungsabschnitt gesehen haben, wird nicht berücksichtigt.

Dinge, an die man sich erinnern sollte

  • Die Verwendung von VBA Double für negative Werte ist auf einen Bereich von -1, 79769313486231E308 bis -4, 94065645841247E324 und für positive Werte von 94065645841247E-324 bis 1, 79769313486232E308 beschränkt.
  • VBA Double kann bis zu 14 Ziffern enthalten, wenn das oben angegebene Limit unterschritten wird.
  • VBA Double verwendet für jeden verwendeten Typ 8 Byte Systemspeicher.

Empfohlene Artikel

Dies ist eine Anleitung zu Excel VBA Double. Hier wird die Verwendung von Double-Datentypen in Excel VBA zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage erläutert. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. VBA Randomize (Beispiele mit Excel-Vorlage)
  2. Wie Blatt in VBA umbenennen?
  3. Wie verwende ich VBA ReDim Statement?
  4. VBA-Variablendeklaration | Excel-Vorlage
  5. VBA Environ

Kategorie: