Formater un nombre

Contenu du snippet

équivalent à la fonction FormatNumber().
But : apprentissage

Source / Exemple :


'PERMET D'ARRONDIR UN CHIFFRE
function arrondi(nombre,nbdecimal)

nombre = replace(nombre,".",",") 'on vérifie qu'il n'y a pas de point à la place des virgules

if nbdecimal = 0 then 'si l'utilisateur ne veut pas du tout de decimal
	arrondi = Cint(nombre)
else
	decimal = 0
	
	'Il faut definir où est la virgule
	for cptrvirg = 1 to Len(nombre)
		if Mid(nombre,cptrvirg,1) = "," then
			placevirgule = cptrvirg
			'la variable decimal contient la partie décimale du nombre
			decimal = Mid(nombre,cptrvirg+1,Len(nombre)-cptrvirg)
			'la variable nombre contient la partie entière du nombre
			nombre = Mid(nombre,1,cptrvirg-1)
		end if
	next
	
	'formatage de la valeur en fonction du nombre de decimal voulus
	Do while Len(decimal) <> Cint(nbdecimal)
		
		if Len(decimal) > Cint(nbdecimal) then	'si le nombre de decimal est trop grand
			agarder = left(decimal,nbdecimal)	'agarder le nombre de decimal voulu
			pourarrondi = Mid(decimal,nbdecimal+1,1)	' pourarrondi conserve en mémoire le chiffre juste après
			
			If pourarrondi > 4 then	'on réalise l'arrondi si nécessaire
				agarder = agarder + 1
			end if
			
			decimal = agarder 
		else
			'si le nombre de decimal est trop petit
			decimal = decimal & "0" ' on ajoute des 0
		end if
	Loop
	
	arrondi = nombre & "," & decimal 'on recrée le nombre
	end if
end function

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.