Antwoord:
|
Excel, opmaak getal
Hoe toon ik een getal in 6 cijfers in Excel?
Gebruikmaken van een exact aantal cijfers in een getal! Is er een manier om in Excel een nummer van zes cijfers te laten zien, onafhankelijk van de plaatsing van het decimaalteken ?
Bijvoorbeeld, 0,1 wordt getoond als 0,10000, 200 wordt getoond als 200,000 en 25000 wordt getoond als 25000,0.
Helaas is er op dit moment nog geen opmaak (celeigenschappen) in Excel waarmee dit kan worden bereikt. Iedere opmaak is gerelateerd aan de plaats van het decimaalteken. Specificeer je in de aangepaste opmaak een vast aantal getallen achter het decimaalteken dan wordt dit aantal cijfers getoond ongeacht het aantal cijfers voor het decimaalteken.
Hierbij een suggestie om dit in eigen werkmap en werkblad te kunnen bewerkstelligen. Er zijn hiervoor 2 manieren:
Formule
De volgende formule zal de celwaarde in A1 tonen met gebruikmaking van 6 cijfers
=VAST(A1;ALS(ABS(A1)<1;5;5-GEHEEL(LOG(ABS(A1))));WAAR)
N.B. Het is ook mogelijk om het getal om te zetten naar TEKST en deze TEKST vervolgens in de juiste opmaak te tonen. Het equivalent van het getal in TEKST kan echter niet meer direct worden gebruikt als getal in een andere formule. De gebruikte formule heeft deze beperking niet.
Macro
Het is mogelijk een macro te definiëren die ervoor zorgt dat de celwaarde in de gewenste opmaak wordt getoond. Het voordeel ten opzichte van het gebruik van de formule is dat er geen extra cel nodig is voor de formule met de verwijzing naar de broncel. Het nadeel van een macro is dat je niet moet vergeten de macro uit te voeren. De volgende macro heeft hetzelfde effect als de eerder genoemde formule.

Sub DefineerGetal6Cijfers()
Dim AantalDecimalen As Integer
Dim DecimaalTekenAanwezig As Boolean
Dim Opmaak As String
Dim CelBereik As Range
Dim TestCel As Range
DecimaalTekenAanwezig = False 'Wijzig indien nodig
Set CelBereik = Selection
For Each TestCel In CelBereik
If Abs(TestCel.Value) < 1 Then
AantalDecimalen = 5
Else
AantalDecimalen = 5 - Int(Log(Abs(TestCel.Value)) / Log(10#))
End If
Opmaak = "0"
If DecimaalTekenAanwezig Then Opmaak = "#,##0"
If AantalDecimalen < 0 Then Opmaak = "Standaard"
If AantalDecimalen > 0 Then Opmaak = Opmaak & "." & String(AantalDecimalen, "0")
TestCel.NumberFormat = Opmaak
Next TestCel
End Sub
Voor het aanmaken van de macro, selecteer een celbereik van cellen die het betreffende formaat moeten krijgen en voer de macro vervolgens uit. Voor Iedere cel zal de opmaak zo worden aangepast, dat het getal in zes cijfers wordt getoond, mits het getal niet te groot of te klein is.
Naar boven . . .
|