Bonsoir à tous,
J'utilise le code ci dessous que j'avais eu ici sur le forum pour détailler une liste d'articles et de prix
par exemple si il y a 3 articles à 6€, le code me détail l'article sur 3 lignes de 2€
Mais maintenant, avec un autre code, j'aurais besoin de faire le processus inverse, c'est à dire de regrouper les prix comme avant d’exécuter le code
J'ai fait un fichier exemple pour mieux m'expliquer,
Pouvez vous m'aidez?
Merci d'avance
David
J'utilise le code ci dessous que j'avais eu ici sur le forum pour détailler une liste d'articles et de prix
Code:
Private Sub CommandButton1_Click()
'p1 = 1re cellule de la liste d'articles (aucune ligne vide !)
Dim p1 As Range, p2 As Range, dPrix As Variant, i As Integer, l As Integer
Dim Tablo As Variant, Tablo2 As Variant
Set p1 = Range("B10")
Set p2 = p1
Application.ScreenUpdating = False
If p1.Count > 1 Then
MsgBox "Mauvaise plage sélectionnée. Recommencer"
Exit Sub
End If
ReDim Tablo(1 To 3, 1 To 1)
l = 2
Do Until IsEmpty(p1)
ReDim Preserve Tablo(1 To 3, 1 To UBound(Tablo, 2) + p1)
dPrix = p1.Offset(0, 2) / p1.Value
Tablo(1, l) = p1.Offset(0, 0)
Tablo(2, l) = p1.Offset(0, 1)
For i = l To UBound(Tablo, 2): Tablo(3, i) = dPrix: Next i
l = UBound(Tablo, 2) + 1
Set p1 = p1.Offset(1, 0)
Loop
ReDim Tablo2(1 To 3, 1 To UBound(Tablo, 2) - 1)
For i = 1 To UBound(Tablo2, 2)
Tablo2(1, i) = Tablo(1, i + 1)
Tablo2(2, i) = Tablo(2, i + 1)
Tablo2(3, i) = Tablo(3, i + 1)
Next i
p2.Resize(UBound(Tablo2, 2), 3) = Application.Transpose(Tablo2)
Application.ScreenUpdating = True
End Sub
par exemple si il y a 3 articles à 6€, le code me détail l'article sur 3 lignes de 2€
Mais maintenant, avec un autre code, j'aurais besoin de faire le processus inverse, c'est à dire de regrouper les prix comme avant d’exécuter le code
J'ai fait un fichier exemple pour mieux m'expliquer,
Pouvez vous m'aidez?
Merci d'avance
David