Err Msg mit CInt() Funktion: Typenkonflikt


Zusammenfassung


In Microsoft Visual Basic-Programmierung System Applications Edition wird bei Verwendung der Funktion CInt() mit einer Zeichenfolge, die in eine Zahl konvertiert werden kann folgende Fehlermeldung angezeigt:
Laufzeitfehler '13':

Typenkonflikt

Weitere Informationen


CInt-Funktion konvertiert einen Ausdruck in eine ganze Zahl. Können alle gültigen numerischen oder Zeichenfolgenausdruck, aber der Zeichenfolgenausdruck muss in eine Zahl konvertiert werden. Der Visual Basic-Referenz erklärt, dass Sie die CInt-Funktion anstelle der Val-Funktion sollte Dezimaltrennzeichen beim Konvertieren von anderen Datentypen in Integer zu. Aber Verhalten die beiden Funktionen genauso nicht.


Wenn Sie die Val-Funktion verwenden, um in einer Zeichenfolge enthaltenen Zahlen zurückzugeben, werden nur die ersten numerischen Zeichen in der Zeichenfolge zurückgegeben. Während die Val-Funktion den numerischen Teil eines Zeichenfolgenausdrucks zurückgibt, gibt die Funktion CInt die oben genannten Fehlermeldung wenn Zeichenfolgenausdruck als Zahl ausgewertet werden kann.


Das folgende ist eine Tabelle von Ausdrücken und die CInt und Val-Funktion zurückgegebenen Werte.

   Expression                    Value Returned
--------------------------------------------
Val("1726 56th Ave NE") 172656
CInt("1726 56th Ave NE") Error message
Val("asdf") 0
Cint("asdf") Error message
Val("1,000") 1
CInt("1,000") 1000
Val("1.34") 1.34
CInt("1.34") 1


Da die Val-Funktion den Wert 0 gibt bei Verwendung mit einem Ausdruck, der 0 oder keine Zahlen enthält, können sie Sie testen, ob eine Eingabezeichenfolge eine gültige Zahl ist. Jedoch können Sie die CInt-Funktion in einer Prozedur bestimmen, ob eine Eingabezeichenfolge eine gültige Zahl ist.

Referenzen


Weitere Informationen über die Funktion CInt wählen Sie die Schaltfläche Suchen in der Visual Basic-Referenz und Typ:

CInt