Excel VBA formule somme

Résolu
Todesfall Messages postés 74 Statut Membre -  
Todesfall Messages postés 74 Statut Membre -
Bonjour,

J'ai un petit problème sous excel par rapport à un code que j'ai assigné à un bouton. Le code le voici :

Cells(9, 11) = Application.WorksheetFunction.Sum(Range(Cells(7, 11), Cells(9, 11))

Le problème est que si je rempli la cellule (7,11) et que je clique sur le bouton, j'aurai la valeur de la cellule (7,11) et si je met une valeur dans la cellule (8,11), la cellule (9,11) ne se met pas à jour automatiquement et j'aurai la valeur de la cellule (7,11) et non la somme de la cellule (7,11) et (8,11).

Si quelqu'un sait comment faire.

Merci d'avance

PS : Si ce n'est pas clair n'hésitez pas à me poser des questions.

3 réponses

Paf
 
bonjour

ton bouton effectue le calcul de la plage définie, mais n'inscrit pas de formule dans la feuille ; il faudrait donc cliquer sur le bouton à chaque nouvelle saisie dans la plage pour avoir un résultat à jour.

ou bien faire écrire une formule en Cells(9, 11) :

Set MaPlage = Range(Cells(7, 11), Cells(8, 11)) 
Maformule = "=sum(" & MaPlage.AddressLocal() & ")" 
Cells(9, 11).Formula = Maformule

mais y a t-il un intérêt à créer un code pour faire la somme d'une plage de 2 cellules?

Bonne suite
1
Morgothal Messages postés 1350 Statut Membre 183
 
Bonsoir,
Je plussoie Paf,
Et si tu veux vraiment passer par du code pour faire une somme, pour mettre à jour ta somme tu peux passer par une macro évenementielle, qui s'exécute lors de la modification de l'une des deux cellules.

A+
0
Todesfall Messages postés 74 Statut Membre
 
Merci pour ton aide ça marche très bien. Oui il y a un intérêt car le but de cette formule n'est pas dans la question. En fait le bouton insère une ligne donc pour la somme il faut prendre en compte la dernière ligne créée et j'utilise la formule que tu m'as marqué avec des indices.

Encore merci !
0