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
 
@

@+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

Membres actuellement en ligne

Statistiques des forums

Discussions
314 121
Messages
2 106 129
Membres
109 495
dernier inscrit
jerome bonneau