Somme sur plage

1 réponse
Avatar
Alex
Bonjour =E0 tous,

Dans une macro de mise en forme d'=E9tat, j'ai besoin d'effectuer une
somme sur un nombre ind=E9fini de ligne dans une plage d=E9finie, mais je
rencontre un probl=E8me avec la formule somme, et viens vous demander
votre aide et m'en explique :
J'ai d=E9fini ma plage qui commence toujours en A2 et qui fini =E0 X ligne
de la facon suivante :
Range("A2").Select
debutim =3D ActiveCell.Address
ActiveCell.Name =3D "DebutIm"
'Recherche de la derniere cellue ayant la meme valeur que A2
Range("A2").Select
While ActiveCell.Value =3D ActiveCell.Offset(1, 0).Value
ActiveCell.Offset(1, 0).Select
Wend
'Definition de la derniere cellule correspondant =E0 ma valeur de debut
ActiveCell.Offset(0, 105).Range("A1").Select
finimm =3D ActiveCell.Address
ActiveCell.Name =3D "finImm"

'Ma plage est difinie et je la selectionne :
Range(debutimm, finimm).Select

Et =E0 partir de cette plage je souhaiterai avoir la somme de la colonne
L
Quelqu'un aurait il la solution =E0 mon probl=E8me.
Je vous remercie par avance de votre aide.
Bien cordialement.
Alex

1 réponse

Avatar
Jacky
Bonjour,

Quelqu'un aurait il la solution à mon problème.




Pas sur d'avoir compris, mais ceci fait la somme de la colonne A des chiffres qui sont égales à A2

Dans une cellule de la feuille
=SOMME.SI(A:A;$A$2;A:A)
En vba
MsgBox Application.SumIf([a:a], [$a$2], [a:a])

Ceci la somme de la colonne A
MsgBox [sum(a:a)]

Cela la somme d'une plage (de A2:A+dernière ligne)
'-----------
plage = Range("A2:A" & Range("A" & Rows.Count).End(xlUp).Row)
MsgBox Application.Sum(plage)
'-----------------
--
Salutations
JJ


"Alex" a écrit dans le message de news:

Bonjour à tous,

Dans une macro de mise en forme d'état, j'ai besoin d'effectuer une
somme sur un nombre indéfini de ligne dans une plage définie, mais je
rencontre un problème avec la formule somme, et viens vous demander
votre aide et m'en explique :
J'ai défini ma plage qui commence toujours en A2 et qui fini à X ligne
de la facon suivante :
Range("A2").Select
debutim = ActiveCell.Address
ActiveCell.Name = "DebutIm"
'Recherche de la derniere cellue ayant la meme valeur que A2
Range("A2").Select
While ActiveCell.Value = ActiveCell.Offset(1, 0).Value
ActiveCell.Offset(1, 0).Select
Wend
'Definition de la derniere cellule correspondant à ma valeur de debut
ActiveCell.Offset(0, 105).Range("A1").Select
finimm = ActiveCell.Address
ActiveCell.Name = "finImm"

'Ma plage est difinie et je la selectionne :
Range(debutimm, finimm).Select

Et à partir de cette plage je souhaiterai avoir la somme de la colonne
L
Quelqu'un aurait il la solution à mon problème.
Je vous remercie par avance de votre aide.
Bien cordialement.
Alex