Geeft de getallen in een tekenreeks als resultaat als een numerieke waarde van het juiste type.
Syntaxis
Val( tekenreeks )
Het vereiste argumenttekenreeks kan bestaan uit elke geldige reeksexpressie.
Opmerkingen
De functie Val stopt met het lezen van de tekenreeks bij het eerste teken dat niet wordt herkend als onderdeel van een getal. Symbolen en tekens die vaak worden gezien als onderdelen van numerieke waarden, zoals het euroteken en komma's, worden niet herkend. De radixvoorvoegsels &O (voor octaal) en &H (voor hexadecimaal) worden echter wel herkend. Spaties, tabs en regelinvoertekens worden verwijderd uit het argument.
De onderstaande functie geeft de waarde 1615198 als resultaat:
Val(" 1615 198th Street N.E.")
In de onderstaande code retourneert Val de decimale waarde -1 voor de weergegeven hexadecimale waarde:
Val("&HFFFF")
Opmerking: De functie Val herkent alleen de punt (.) als een geldig scheidingsteken voor decimalen. Wanneer verschillende scheidingstekens voor decimalen worden gebruikt, zoals in internationale toepassingen, kunt u beter CDbl gebruiken om een tekenreeks te converteren naar een getal.
Queryvoorbeeld
Expression |
Resultaten |
SELECT DateofSale,val(DateofSale) AS testVal FROM ProductVerkoop; |
Retourneert de waarden uit 'DateofSale' en voorloop numerieke tekens uit de waarden van het veld 'DateofSale' in de kolom testVal. Val() stopt met het lezen van de tekenreeks bij het eerste niet-numerieke teken. |
VBA-voorbeeld
Opmerking: In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht. Meer informatie over het werken met VBA vindt u door in de vervolgkeuzelijst naast Zoeken de optie Referentie voor ontwikkelaars te selecteren en een of meer termen in het zoekvenster te typen.
In dit voorbeeld wordt de functie Val gebruikt om de getallen in een tekenreeks op te halen.
Dim MyValue
MyValue = Val("2457") ' Returns 2457. MyValue = Val(" 2 45 7") ' Returns 2457. MyValue = Val("24 and 57") ' Returns 24.