Visual Basic/Opmaak getallen
Inleiding opmaak getallen
[bewerken]Soms is het nodig dat je getallen een bepaalde opmaak geeft. Je wilt b.v. een getal voorzien van een euroteken en punten en een komma om een bedrag weer te geven. Of je wilt getallen uitlijnen. Daar zijn verschillende methoden voor.
Opmaken met ToString
[bewerken]Je kunt ToString gebruiken om een getal om te zetten in een string, bijvoorbeeld:
Dim getal As Single = 12.45 Dim uitvoer As String uitvoer = getal.ToString
De variabele uitvoer bevat nu de inhoud van getal als een string.
Je kunt het getal als volgt verder opmaken:
Dim getal As Single = 99.95 Dim uitvoer As String uitvoer = getal.ToString("C") &vbCrLf uitvoer = uitvoer & getal.ToString("€#,###.00") & vbCrLf getal = 1234.56 uitvoer = uitvoer & getal.ToString("€ #,###.00)
De variabele uitvoer krijgt achtereenvolgend de waarden:
€ 99,95 €99,95 € 1.234,56
ToString met opmaakkenmerken
[bewerken]Als je bij ToString alleen "C" gebruikt, wordt het getal omgezet naar een string in valutanotatie die afhankelijk is van de taal van Windows. In een Nederlandse Windows wordt het valutasymbool € voor de euro gebruikt en worden punten en de komma gebruikt zoals hier gebruikelijk is. Dit is dus geheel anders dan het formaat zoals je dat in het programma moet vermelden.
In plaats van de "C" in ToString kun je ook andere tekens gebruiken. Er zijn de volgende mogelijkheden:
Opmaakteken | Omschrijving | Voorbeeld |
---|---|---|
C of C | Currency | (12345.67).ToString("C") geeft: € 12.345,67 |
D of d | Decimal | (12345).ToString("D") geeft: 12345. "D" werkt alleen met gehele getallen. |
E of e | Wetenschappelijke notatie | (12345.67).ToString("E") geeft: 1,234567+004 |
F of f | Fixed-point formaat | (12345.67).ToString("F") geeft: 12345,67 |
G of g | algemeen (General) formaat | (12345.67).ToString("G") geeft: 12345,67 |
N of n | Nummer formaat | (12345.67).ToString("N") geeft: 12.345,67 |
P of p | Percentage | (12345.67).ToString("P") geeft: 1.234.567,00 % |
X of x | heXadecimaal | (12345.67).ToString("X") geeft: 3039 |
Achter "C" kun je een getal opgeven dat het aantal cijfers na de komma aangeeft. 123.45.ToString("C3") heeft als resultaat: €123,450.
ToString met een string
[bewerken]Zoals hierboven aangegeven kun je getallen opmaken met een string. In de string kun je de volgende tekens opnemen:
0 resulteert in een niet-significante 0 als het getal minder cijfers heeft dan nullen in het formaat
# resulteert alleen in significante cijfers ("voorloopnullen" vervallen)
. resulteert in een komma
, resulteert in een punt (in duizendtallen)
% resulteert in het percentage-teken
"" plaatst de string tussen dubbele aanhalingstekens ongewijzigd in de uitvoer
Let dus op met punten en komma's: in het programma moet je de Amerikaanse schrijfwijze gebruiken (decimale punt b.v.), terwijl de gebruiker van het programma de Nederlandse notatie ziet (decimale komma).