Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

formule et macro

M

Max

Guest
bonjour,
j'ai un petit probleme d'execution d'une macro, voila la ligne qui pose probleme

=> ActiveCell.FormulaR1C1 = "=ROUNDDOWN(R[0]C[0],1)"

la macro consiste à parcourir un tableau et arrondir les valeurs quand Excel lit la cellule en cours
le truc est qu'excel me remplace la valeur par un "0"
où est l'erreur ??

merci d'avance pour les réponses
@+
 
@

@+Thierry

Guest
Bonjour Max, le Forum

Il est normal que cette instruction te retourne Zéro puisque tu fais une référence circulaire.

Je ne sais pas si celà va te convenir car cette procédure va "écraser" la valeur de la cellule active par sa propre valeur en arrondi inférieur (donc tu perdras la valeur initiale)

Sub Arrondir()
Dim Arrondi As Double

Arrondi = Application.WorksheetFunction.RoundDown(ActiveCell.Value, 1)
ActiveCell = Arrondi

End Sub

Sinon (pour conserver la valeur initiale) il faut passer par une colonne intermédiaire, et faire une formule sur la feuille et dons plus besoin de VBA...


Bonne Journée
@+Thierry
 
M

Max

Guest
Merci Thierry,
ça marche nickel c'est que je voulais faire avec les valeurs

Sinon petite question à quoi correspond la réference circulaire et à quoi ça sert ??

et merci encore
 
@

@+Thierry

Guest
Re Max

Une référence circulaire est "tolérée" par Excel mais il se met en "warning"... Car en fait, tu demande à Excel de calculer une formule placée dans une cellule qui va prendre en considération le propre résultat de la cellule en question... (Exemple tape en "A1" la formule =A1...)

Bon Appétit
@+Thierry
 

Discussions similaires

Réponses
5
Affichages
403
Réponses
0
Affichages
285
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…