Bonjour à tous,
J'ai un problème concernant une Macro, je possède quelques notions mais je les ai appris par moi-même et donc, je ne suis pas toujours sûr de leur qualité.
J'explique ce qui ne va pas:
J'ai, suite à plusieurs manipulations de mon fichier, obtenu un tableau de 5 colonnes (toujours) et une centaine de lignes (variable). Parmi ces colonnes, il y a un numéro, un lieu, un poids, un volume et une date. Les colonnes sont triées par ordre des numéros, mais je peux l'enlever.
Ce que je souhaite c'est que les lignes qui ont le même numéro (elles ont forcément la même date mais les 3 autres colonnes diffèrent) s'additionnent... Que l'on retrouve le numéro dans la première colonne, dans la 2ème, le lieu du 1er numéro / le lieu du 2ème (et s'ils sont identiques, que le lieu soit affiché une seule fois), que les poids soient additionnés et de même pour les volumes. Une fois cette ligne créée, on supprimera l'autre et on incrémentera pour toutes les lignes de la centaine de ligne du fichier...
J'espère avoir été assez clair.
Ce que j'ai fait:
Cela me permet d'additionner tous les poids et volumes pour des numéros identiques mais cela ne marche pas pour le texte (le lieu..), d'où mon problème. Et je me demande aussi comment faire pour éviter d'écrire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Range("F2").Select ActiveCell.FormulaR1C1 = "=SUMIF(C[-5],RC[-5],C[-3])" Selection.AutoFill Destination:=Range("F2:F300") Range("G2").Select ActiveCell.FormulaR1C1 = "=SUMIF(C[-6],RC[-6],C[-3])" Selection.AutoFill Destination:=Range("G2:G300") Range("F2:G300").Select Selection.Copy Range("C2").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Range("F:G").Select Selection.Delete
Il n'y a pas un moyen pour qu'il cherche automatiquement la dernière ligne ?..
Code : Sélectionner tout - Visualiser dans une fenêtre à part Range("F2:G300").Select
Bon courage à ceux qui vont lire et merci![]()
Partager