Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb affectation Formule par Macro

2 réponses
Avatar
Manu Puig
Bonjour,

dans une macro, j'affecte une formule à une cellule avec le code ci-dessous.

If L2 = 2 Then

'Moyenne
SMoy = "=MOYENNE(" & PosMatin & L2 & ":" & PosSoir & L2 & ")"
Sh2.Range(PosMoy & L2).Formula = SMoy

'Delta
SDelta = "=(LastValue+B2)/2"
Sh2.Range(PosDelta & L2).Formula = SDelta

End If

La cellule pour la moyenne reçoit la formule =MOYENNE(D2:F2)
La cellule pour le delta reçoit la formule =(LastValue+B2)/2

ça fonctionne bien, sauf que une fois la feuille affichée, j'ai #NOM? qui
est inscrit dans la cellule au lieu de la valeur calculée par la formule.

Mais si je valide la cellule (en cliquant sur le signe = de la zone de
formule et ensuite sur la coche verte), la valeur calculée s'affiche
alors correctement...

J'ai essayé avec .Formula = et .Value = avec le même résultat.

Qu'est ce que j'ai bien pu oublier qui me cause ce tracas ???

NB : j'utilise Excel 2000 avec Windows 2000

Par avance, merci de vos réponses. Toute piste est la bienvenue.

Manuel

2 réponses

Avatar
JB
Bonjour,

Average au lieu de Moyenne

JB



On 6 avr, 09:34, "Manu Puig" wrote:
Bonjour,

dans une macro, j'affecte une formule à une cellule avec le code ci-des sous.

If L2 = 2 Then

'Moyenne
SMoy = "=MOYENNE(" & PosMatin & L2 & ":" & PosSoir & L2 & ")"
Sh2.Range(PosMoy & L2).Formula = SMoy

'Delta
SDelta = "=(LastValue+B2)/2"
Sh2.Range(PosDelta & L2).Formula = SDelta

End If

La cellule pour la moyenne reçoit la formule =MOYENNE(D2:F2)
La cellule pour le delta reçoit la formule =(LastValue+B2)/2

ça fonctionne bien, sauf que une fois la feuille affichée, j'ai #NOM? qui
est inscrit dans la cellule au lieu de la valeur calculée par la formul e.

Mais si je valide la cellule (en cliquant sur le signe = de la zone de
formule et ensuite sur la coche verte), la valeur calculée s'affiche
alors correctement...

J'ai essayé avec .Formula = et .Value = avec le même résultat.

Qu'est ce que j'ai bien pu oublier qui me cause ce tracas ???

NB : j'utilise Excel 2000 avec Windows 2000

Par avance, merci de vos réponses. Toute piste est la bienvenue.

Manuel


Avatar
papou
Bonjour
Essaie FormulaLocal

Cordialement
Pascal

"Manu Puig" a écrit dans le message de news:
e%
Bonjour,

dans une macro, j'affecte une formule à une cellule avec le code
ci-dessous.

If L2 = 2 Then

'Moyenne
SMoy = "=MOYENNE(" & PosMatin & L2 & ":" & PosSoir & L2 & ")"
Sh2.Range(PosMoy & L2).Formula = SMoy

'Delta
SDelta = "=(LastValue+B2)/2"
Sh2.Range(PosDelta & L2).Formula = SDelta

End If

La cellule pour la moyenne reçoit la formule =MOYENNE(D2:F2)
La cellule pour le delta reçoit la formule =(LastValue+B2)/2

ça fonctionne bien, sauf que une fois la feuille affichée, j'ai #NOM? qui
est inscrit dans la cellule au lieu de la valeur calculée par la formule.

Mais si je valide la cellule (en cliquant sur le signe = de la zone de
formule et ensuite sur la coche verte), la valeur calculée s'affiche
alors correctement...

J'ai essayé avec .Formula = et .Value = avec le même résultat.

Qu'est ce que j'ai bien pu oublier qui me cause ce tracas ???

NB : j'utilise Excel 2000 avec Windows 2000

Par avance, merci de vos réponses. Toute piste est la bienvenue.

Manuel