afronden in VB o_O

Status
Niet open voor verdere reacties.

DeMetaal

Gebruiker
Lid geworden
18 mei 2007
Berichten
18
Ik heb ff zitten googlen naar hoe ik een getal moet afronden maar kom er echt niet achter..

Ik heb voor een spelletje een calculator gemaakt zodat ik het aantal vrachtschepen kan berekenen die ik nodig heb om een x aantal gronstoffen te vervoeren en daarbij de brandstof te berekenen die nodig is...

nu zit ik alleen met het probleem dat mijn eind sommen (sum11 en sum10) niet afgerond willen worden..in ieder geval niet in mn "label1.caption" en "label2.caption"

Ik wil hele getallen hebben die zowel naar boven als naar beneden afronden (afhankelijk van de decimalen er achter) . Enig idee hoe ik dit ingodsnaam doe?

Wat ik geprobeerd heb:

* math.round(sum10)
* math.round(label1)
* math.round(sum10), 2
* math.round(label1), 2
* round(sum10)
* round(label1)


Met alle geen succes...Ik kwam ook ergens een cint tegen maar die snap ik niet hoe ik dat moet gebruiken..

Oh ps, ben een noob vb'er...ben al behoorlijk vergekomen in mn eentje maar nu heb ik echt iemands hulp nodig! :D

Extra info of vragen mag je altijd vragen ;)
 
For more information about the Round function, in the Visual Basic Editor, click Microsoft Visual Basic Help on the Help menu, type Round Function in the Office Assistant or the Answer Wizard, and then click Search to view the topic.
 
Hallo DeMetaal,

heb je het over VB of over VBA?

Groet,

Tardis
 
Visual Basic 6.0 uit visual studio...

Heb geen help in VB dus probeer t meeste uit de help van excel te halen maar dat wil niet altijd lukken...zo ook met de round functie.. en alsk t er wel vind snap k t soms niet :)

en dit is net t enige punt waar ik op vast loop...-_-'
 
hoi demetaal

dit heb ik uit de ofline help van vb5

Math.Round(3.44, 1) 'Returns 3.4.
Math.Round(3.45, 1) 'Returns 3.4.
Math.Round(3.46, 1) 'Returns 3.5.

ik gebruik vb5 en heb het getest
1 staat voor het aantal decimalen in det geval
jij vult daar een 0 in
het werkt

sylvester
 
Laatst bewerkt:
Hoe kom je aan die dik gedrukte? want als ik elk getal dat mogelijk is dat er uit kan komen in moet tikken..dan wordt de code eeuwig lang en ben k eeuwig bezig o_O:shocked:

Math.Round(3.44, 1) 'Returns 3.4.
Math.Round(3.45, 1) 'Returns 3.4.
Math.Round(3.46, 1) 'Returns 3.5.
 
hoi

Code:
a = 3.4
b = Math.Round(a, 0)

b wordt dan 3

groet


Uhm ja dat begreep ik wel en met (a, 2) dan heb je 2decimalen..
Maar moet ik dan 1 tm 1000 alle mogelijke getallen gaan invoeren op zo'n manier? of kan t ook gewoon sum6 = math.round?
 
elk willekeurig getal dat uit een behoorlijk forse berekening komt...

stel je heb 2vakjes waar je getallen kan invoeren, in de ene vul je 2.1 in en de andere 3.2
totaal is dan 5.3
maar als je dan 123.132 in vult en de andere 882.213 dan krijg je geen 5.3 ofwel een geheel ander getal...

de uitkomst van een fikse som moet dus afgerond worden..en ik ga niet 1 tm oneindig invullen met weet ik het hoeveel decimalen :p

de uitkomst is dus niet standaard het zelfde, sterker nog, die zal 999 van de 1000x anders zijn...
 
Code:
stel je heb 2vakjes waar je getallen kan invoeren

je hebt het eerst over invoervakjes

en daarna zeg je

en ik ga niet 1 tm oneindig invullen met weet ik het hoeveel decimalen

dus je wil geen getallen invoeren met invoer vakjes

hoe kom je dan aan je getallen waar me je een berekening wilt uitvoeren en
waarvan je de uitkomst later afrond?
 
uhm ik bedoel meer dit :p

hyp link naar de complete code van t proggie en een plaatje erbij hoe ie eruit ziet ;)
vraag maar als je nog meer inf nodig heb :)
 
voorbeeld:

wil je sum11 afronden op hele getallen dan wordt het:

Code:
sum11  = Math.Round( sum11 , 0)

maar als je alleen de weergave wil afronden dan wordt het:
Code:
Label2.Caption = Math.Round( sum11 , 0)
groet
 
ah ok ik miste dat label2.caption= gedeelte xD

dankje, ik ga het zo even testen!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan