Returnerer tallene som finnes i en streng som en numerisk verdi av riktig type.
Syntaks
Val( string )
Den nødvendige strengenargument en gyldig strenguttrykk.
Merknader
Val-funksjonen slutter å lese strengen ved det første tegnet den ikke gjenkjenner som en del av et tall. Symboler og tegn som ofte regnes som deler av numeriske verdier, for eksempel dollartegn og komma, gjenkjennes ikke. Funksjonen gjenkjenner imidlertid &O (for oktaltall) og &H (for heksadesimal). Tomme tegn, tabulatorer og linjefeedtegn fjernes fra argumentet.
Følgende returnerer verdien 1615198:
Val(" 1615 198th Street N.E.")
I koden nedenfor returnerer Verdi desimalverdien -1 for den heksadesimale verdien som vises:
Val("&HFFFF")
Obs!: Val-funksjonen gjenkjenner bare punktumet (.) som et gyldig desimalskilletegn. Når ulike desimalskilletegn brukes, som i internasjonale programmer, bruker du CDbl i stedet for å konvertere en streng til et tall.
Spørringseksempel
Uttrykk |
Resultater |
SELECT DateofSale,val(DateofSale) AS testVal FROM ProductSales; |
Returnerer verdiene fra "DateofSale" og innledende numeriske tegn fra verdiene i feltet DateofSale i kolonnetestVal. Verdi() slutter å lese strengen ved det første ikke-numeriske tegnet. |
VBA-eksempel
Obs!: I eksemplene nedenfor vises bruken av denne funksjonen i en VBA-modul (Visual Basic for Applications). Hvis du vil ha mer informasjon om hvordan du arbeider med VBA, velger du Utviklerreferanse fra rullegardinlisten ved siden av Søk og skriver inn ett eller flere søkeord i søkeboksen.
Dette eksemplet bruker Val-funksjonen til å returnere tallene som finnes i en streng.
Dim MyValue
MyValue = Val("2457") ' Returns 2457.
MyValue = Val(" 2 45 7") ' Returns 2457.
MyValue = Val("24 and 57") ' Returns 24.