Feil Msg ved hjelp av CInt()-funksjonen: Typekonflikt


Sammendrag


Når du bruker CInt()-funksjonen med en streng som ikke kan konverteres til et tall i Microsoft Visual Basic programmering System programmer Edition, får du følgende feilmelding:
Kjøretidsfeil '13':

Typekonflikt

Hvis du vil ha mer informasjon


CInt-funksjonen konverterer et uttrykk til et heltall. Du kan bruke et hvilket som helst gyldig numerisk eller strenguttrykk, men strenguttrykket må kunne konverteres til et tall. Visual Basic-referanse sier at du bør bruke CInt-funksjonen i stedet for Val-funksjonen til å utføre konverteringer fra andre datatyper til heltall. Men fungerer de to funksjonene kanskje ikke nøyaktig det samme.


Når du bruker Val-funksjonen til å returnere tallene i en streng, returneres bare de første numeriske tegnene i strengen. Mens du Val-funksjonen returnerer den numeriske delen av et strenguttrykk, vil CInt-funksjonen returnerer feilmeldingen ovenfor hvis strenguttrykket som ikke kan evalueres som et tall.


Nedenfor finner du en tabell med uttrykk og verdier som returneres av CInt og Val-funksjoner.

   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


Siden du Val-funksjonen returnerer verdien 0 når det brukes med et uttrykk som inneholder 0 eller tall i det hele tatt, kan du ikke bruke den til å teste om en inndata-streng er et gyldig tall. Du kan imidlertid bruke CInt-funksjonen i en prosedyre til å fastslå om en inndata-streng er et gyldig tall.

Referanser


Hvis du vil ha mer informasjon om CInt-funksjonen, velger du Søk-knappen i Visual Basic-referanse og Skriv inn:

CInt