Passer moi une pagaie, je rame

bonsoir a tous, j'essaye de faire un document sous excel 2010 qui utilise plusieurs feuilles et j'ai besoin de vos conseilles:

voila mon problème:

chaque jour je reçois une feuille de départ ou ce trouve 3 colonnes

  • clients( les clients sont redondant)
  • produit a
  • produit b

j'ai trouver une macro qui me permet de rassembler toutes ces feuilles de départ dans un même document

c'est un copier coller a la suite et je l'utilise dans un document qui s’appelle "recap"

et je souhaiterait crée dans ce document une feuille par client et donc avoir un tableau avec les différentes commandes passer par le client x

mais je ne sait pas comment s'intitule cette opération dans excel je ne rechigne pas a chercher dans les forum mais je ne sait pas comment ca s'appelle alors j'aurait besoin de vos lumière

merci d'avance a vous car c'est loin d'etre simple pour moi

amicalement

ced

Bonjour,

""passer moi une pagaie, je rame....""

Et nous, donc, sans le moindre petit fichier (exemple) !

Bonsoir,

Et je rajouterai, pense à lire ceci

Surtout le titre 3...

Donc, revois le titre de ta demande, joins un fichier, et ensuite, peut-être, qu'on pourra te trouver un moteur....

Bon courage

Et j'oubliais...

voila voila toutes mes plates excuses

11commande.xlsx (14.76 Ko)

Bonjour,

une proposition à tester à partir d'une macro de Jacques boisgontier (http://boisgontierjacques.free.fr/) :

Sub CompteItems()
Dim DicoVerte As Object, DicoBleu As Object
Dim Tb(), i As Long

  Set DicoBleu = CreateObject("Scripting.Dictionary")
  Set DicoVerte = CreateObject("Scripting.Dictionary")
  Tb = Range("A2:C" & [A65000].End(xlUp).Row)
  For i = LBound(Tb) To UBound(Tb)
    DicoBleu(Tb(i, 1)) = DicoBleu(Tb(i, 1)) + Tb(i, 2)
    DicoVerte(Tb(i, 1)) = DicoVerte(Tb(i, 1)) + Tb(i, 3)
  Next i
With Sheets("recap")
  .[E2].Resize(DicoBleu.Count, 1) = Application.Transpose(DicoBleu.keys)
  .[F2].Resize(DicoBleu.Count, 1) = Application.Transpose(DicoBleu.items)
  .[E1].Sort Key1:=[E2], Order1:=xlAscending, Header:=xlYes
  .[G2].Resize(DicoVerte.Count, 1) = Application.Transpose(DicoVerte.keys)
  .[H2].Resize(DicoVerte.Count, 1) = Application.Transpose(DicoVerte.items)
  .[G1].Sort Key1:=[G2], Order1:=xlAscending, Header:=xlYes
End With
End Sub

merci franck,

mais cette macro ne correspond pas a ce que je recherche

cette macro additionne les commandes de chaque client alors que ce que je recherche c'est simplement charger (ou coller) dans une feuille de calcul toutes les commandes du même client

au sujet du titre de mon article je suis désolé mais je ne sait pas comment intitulé mon problème ...

j'ai chercher dans "cherchev", dans les macros, chercheh, ect.... et je ne sait pas comment s'appelle ce que j'ai besoin

en tout cas merci pour votre réactivité

Autre exemple :

Sub RempliFeuillesClient()
   Dim Tb(), i As Long
   Sheets("recap").Select
   Tb = Range("A2:C" & [A65000].End(xlUp).Row)
   For i = LBound(Tb) To UBound(Tb)
      With Sheets(CStr(Tb(i, 1)))
         .Range("C" & .Range("C" & Rows.Count).End(xlUp).Row + 1) = Tb(i, 2)
         .Range("D" & .Range("D" & Rows.Count).End(xlUp).Row + 1) = Tb(i, 3)
      End With
   Next
End Sub

ha lala franck un grand merci ça fonctionne bien j'ai encore une petite demande :

mes clients ne s'appelle pas client mais "machin" "truc" "chouette" et quand je change le nom de mes clients une erreur apparais dans la macro

peux tu me dire comment faire pour pouvoir mettre le nom de mes clients

un grand merci a vous

mes clients ne s'appelle pas client mais "machin" "truc" "chouette" et quand je change le nom de mes clients une erreur apparais dans la macro

peux tu me dire comment faire pour pouvoir mettre le nom de mes clients

Tes feuilles doivent donc s'appeler respectivement "machin" "truc" "chouette"...

ça tu peux le faire??

Bonjour,

une autre version, avec une formule

11commande-v1.xlsx (21.70 Ko)
Rechercher des sujets similaires à "passer moi pagaie rame"