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

Addition de plusieurs cellules dans une ligne

4 réponses
Avatar
Denys
Bonjour =E0 tous,

Dans la macro qui suit, si la cellule en colonne A15 est semblable =E0
la cellule en A14 par exemple, je peux additionner les valeurs
comprises dans la colonne B15 avec la valeur en B14 et ainsi =E9limuner
la ligne 15 afin de ne garder qu'un seul total et ne pas avoir de
doublons dans la colonne A.

Cependant, je voudrais que les valeurs comprises dans les colonnes B
jusqu'=E0 BK puissent s'additionner. Comment faire pour ne pas
r=E9p=E9ter :
Cells(i - 1, 2).Value =3D Cells(i - 1, 2).Value + Cells(i, 2).Value
en ajoutant
Cells(i - 1, 3).Value =3D Cells(i - 1, 3).Value + Cells(i, 3).Value
etc... ?

Sub test()

Rows("5:5").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Sort Key1:=3DRange("A5"), Order1:=3DxlAscending,
Header:=3DxlGuess, _
OrderCustom:=3D1, MatchCase:=3DFalse,
Orientation:=3DxlTopToBottom, _
DataOption1:=3DxlSortNormal
Range("A5").Select
Application.ScreenUpdating =3D True

Dim i As Long
For i =3D Range("a65536").End(xlUp).Row To 2 Step -1

If Cells(i, 1).Value =3D Cells(i - 1, 1).Value Then
Cells(i - 1, 2).Value =3D Cells(i - 1, 2).Value + Cells(i,
2).Value
Rows(i).Delete
End If
Next
End Sub

Merci pour votre temps

Denys

4 réponses

Avatar
Denys
Bonjour Denis,

Merci infiniment pour ton temps...

Bonne journée

Denys
Avatar
Denys
On Sep 14, 8:35 am, Denys wrote:
Bonjour Denis,



Juste une petite chose que j'ai probablement mal précisé. Je voudrais
que la colonne 2 s'additionne avec la colonne 2, la colonne 3 avec la
trois, etc jusqu'à la colonne 62. En fait, si le nom en A34 est le
même qu'en A33 par exemple, alors B33= B33+B34, C33Ã3+C34 etc....

Je vais quand même travbailler avec ce que tu m'as donné et essayer de
le modifier...

Merci

Denys
Avatar
michdenis
Si tu es toujours à la recherche d'une solution, essaie ceci :

Tu adaptes le nom de la feuille dans la procédure !

'---------------------------------------
Sub Test()
Dim DerLig As Long, DerCol As Integer
Dim Rg As Range, i As Long, a As Long
Dim Plg As Range, NoCol As Integer, ModCal As String

ModCal = Application.Calculation
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Application.EnableEvents = False

With Feuil1 'Nom feuille à adapter
DerLig = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
DerCol = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlPrevious).Column
Set Rg = .Range("A5", .Cells(DerLig, DerCol))
End With
With Rg
.Sort Key1:=.Item(1, 1), Order1:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:úlse, _
Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
End With
For i = Rg.Rows.Count To 1 Step -1
If Rg(i, 1) = Rg(i - 1, 1) And i >= 1 Then
a = a + 1
Else
If a > 0 Then
Set Plg = Rg(i, 2).Resize(a + 1, 62)
For Each col In Plg.Columns
NoCol = NoCol + 1
Plg(1, NoCol).Value = Application.Sum(col)
Next
Rg(i + 1, 1).Resize(a).EntireRow.Delete
NoCol = 0
a = 0
End If
End If
Next
Application.Calculation = ModCal
Application.EnableEvents = True
Application.ScreenUpdating = True

End Sub
'---------------------------------------

--
MichD
--------------------------------------------


"Denys" a écrit dans le message de groupe de discussion :

On Sep 14, 8:35 am, Denys wrote:
Bonjour Denis,



Juste une petite chose que j'ai probablement mal précisé. Je voudrais
que la colonne 2 s'additionne avec la colonne 2, la colonne 3 avec la
trois, etc jusqu'à la colonne 62. En fait, si le nom en A34 est le
même qu'en A33 par exemple, alors B33= B33+B34, C33Ã3+C34 etc....

Je vais quand même travbailler avec ce que tu m'as donné et essayer de
le modifier...

Merci

Denys
Avatar
Denys
Bonjour Denis.

Ca fonctionne à merveille !!!

Merci infiniment !!!!

Denys