Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1896to1900
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datentyp Double

Datentyp Double
31.08.2022 09:37:32
Alex
Morgen Excel-Profis
Wenn ich ein Doublewert mit 1.0 angebe, wird der Wert automatisch in 1# umgewandelt (was eienr Eins entspricht).
Nun kann die Eins leider als Long oder Integer interpretiert werden.
Was muss ich tun um sicher zustallen das auch 1.0 als double interptetiert wird?
Gruss Alex

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datentyp Double
31.08.2022 09:44:44
Rudi
Hallo,
wenn du die Variable als Double deklarierst bleibt sie auch vom Typ Double. Schau mal ins Lokalfenster.
Gruß
Rudi
AW: Datentyp Double
31.08.2022 09:56:09
Alex
Moin Rudi
Hier mal der Code:

Public Function CanConvertToDouble(value As Double) As Boolean
CanConvertToDouble = CDbl(value)
End Function
Sub check()
Debug.Print CanConvertToDouble(1)
End Sub
Die Funktion CanConvertToDouble gibz immer True zurück
Gruss
AW: Datentyp Double
31.08.2022 10:07:13
Daniel
Hi
1. du hast value als Double deklariert, damit ist der Inhalt von value immer Double, egal was du übergibst. Andere Typen werden wenn möglich in Double konvertiert, wenn das nicht geht, bekommst du einen Fehler
2. mit CanConvertToDouble = CDbl(value) prüfst du eigentlich nur, ob value = 0 ist oder irgendeine andere Zahl. da du CanConvertToDouble als Boolean deklariert hast, kann es nur TRUE oder FALSE annehmen und die automatische Typkonvertierung macht aus 0 FALSE und aus allen andern Zahlen TRUE.
wenn du wissen willst, welchen Datentyp ein Wert hat, kannst du die Funktion VarType(x) verwenden, das ergibt beispielsweise 5 für LONG und 8 für STRING
wenn du wissen willst, ob ein Wert in Double konvertiert werden kann, musst du prüfen, ob sie überhaupt in eine Zahl konvertiert werden (geht mit IsNumeric) die Prüfung auf die Einhaltung der Wertgrenzen kann man sich bei Double sparen.
Gruß Daniel
Anzeige
AW: Datentyp Double
31.08.2022 09:56:10
Daniel
Hi
mit 1# ist die Zahl als Double definiert.
wenn man die Kürzel für die Datentypen nicht kennt, kann man auch eine der C-Funktionen anwenden: CDbl(1)
wenn du das so schreibst, ist die Zahl an dieser Stelle Double.
Gruß Daniel
AW: Datentyp Double
31.08.2022 12:04:43
Alex
Moin Daniael
Mit deinem Typ hat es geklapt:
Das war genau was ich gesucht habe!
Beim googeln bin ich auch darauf gestosse, aber habe wohl das Beispiel von Microsoft falsch verstanden -:((

Public Function CanConvertToDouble(value As Variant) As Boolean
CanConvertToDouble = VarType(value) = vbDouble
End Function
Vielen Dank und Gruss Alex
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige