Pb affectation Formule par Macro

Le
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
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JB
Le #4268181
Bonjour,

Average au lieu de Moyenne

JB



On 6 avr, 09:34, "Manu Puig"
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


papou
Le #4268151
Bonjour
Essaie FormulaLocal

Cordialement
Pascal

"Manu Puig" 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





Publicité
Poster une réponse
Anonyme