XL 2010 VBA regroupement de données par colonne

cseb19

XLDnaute Nouveau
Bonjour,
Je souhaite en VBA regrouper des quantités faites en fonction de la fabrication, l'opération et la date.
J'ai tenté de faire des boucles mais je n'arrive pas. Est ce que quelqu'un pourrait me donner un coup de main.
Merci d'avance
Exemple:
upload_2017-7-20_17-48-26.png
 

Pièces jointes

  • Exemple regroup1.xlsx
    10.2 KB · Affichages: 32

Dranreb

XLDnaute Barbatruc
Bonjour.
Cette procédure le fait :
VB:
Option Explicit

Sub Regroup()
Dim TS(), Fab As SsGr, Opé As SsGr, Dat As SsGr, LS&
ReDim TS(1 To Feuil1.UsedRange.Rows.Count, 1 To 5)
For Each Fab In Gigogne(Feuil1.[A5:E5], 3, 4, 2)
   For Each Opé In Fab.Co
      For Each Dat In Opé.Co
         LS = LS + 1
         TS(LS, 1) = Dat.Co(1)(1)
         TS(LS, 2) = Dat.Id
         TS(LS, 3) = Fab.Id
         TS(LS, 4) = Opé.Id
         TS(LS, 5) = Dat.Somme(5): Next Dat, Opé, Fab
Feuil1.[I5].Resize(UBound(TS, 1), 5).Value = TS
End Sub

Du moins après installation de GigIdx dont référence cochée pour le classeur d'application.
 

Pièces jointes

  • GigIdx.xlsm
    79.5 KB · Affichages: 51
Dernière édition:

gosselien

XLDnaute Barbatruc
Bonjour,

j'utilise un dictionnaire qui exclu les doublons; pour ça il faut créer une clé unique , ici c'est depuis un tableau (A) pour plus de rapidité et la clé est la concaténation des 4 premières colonne sur 5. Le 5e, elle , est totalisée (Qté).
Donc si 2 lignes sont identiques , la clé n'en retiendra qu'une mais totalisera la "qté".
Le tout est mis ensemble avec des "/" ça aurait pû être des "$" ou autre signe.
Ce ci arrive en un bloc en P5 qu'il faut splitter en P-Q-R-S.
Ensuite il faut coller les différentes totaux en T5 et plus bas?
La ligne "Ws1.[P5 : P1000].TextToColumns" pourrait être écrite d'une autre manière (avec une boucle) mais c'est pareil. Ici ça correspond au menu "données/convertir"
Voilà

P.
 
Dernière édition:

Discussions similaires

Réponses
37
Affichages
2 K

Statistiques des forums

Discussions
311 711
Messages
2 081 786
Membres
101 817
dernier inscrit
carvajal