Problème de macro

Bonjour,

Actuellement en stage au service achats d'une entreprise, j'ai un problème avec la macro d'un fichier très important à notre service.

Lorsque l'on veut passer une commande de matières premières, on rempli un bon de commande sur Excel, 1 ligne par référence produit. Il y a ensuite un bouton "archivage", qui sert à retranscrire et enregistrer chaque commande dans un autre onglet "récap". L'onglet récap doit nous servir à suivre la performance achats. Cependant, la macro enregistre chaque commande en ligne et non en colonne. Alors, si une première commande comporte 4 réf, et la suivant 3 réf, tout se décale dans l'onglet récap et on ne peut plus rien suivre.

Je souhaiterai que dans l'onglet récap, il y ai une ligne par référence, et non une ligne par commande. (donc 3 lignes si une seule et même commande comporte 3 références)

J'ai pensé à "Filldown", mais je débute en macro et ne sait pas comment régler mon problème...

Pouvez-vous m'aider ?

Merci d'avance pour votre aide

Salut MonaRenard,

Bienvenue sur le forum.

Difficile sans un exemple de fichier de te proposer une solution.

Si tu peux fournir un exemple de ce que tu souhaites faire.

Bonne journée.

Bonjour,

Voici en PJ un extrait du fichier que je veux corriger. J'ai créé une copine de qqs lignes car le fichier original est trop lourd pour être posté sur le forum


Et voici la macro associée au fichier :

Macro "enregistrement commande" :

Sub enregistrement_commande()

'

' enregistrement_commande Macro

' Macro enregistrée le 16/04/2012 par Vincent LE PROVOST

'

'

Sheets("Bon de commande").Select

Range("C9").Select

Selection.Copy

Sheets("Récap").Select

Range("b3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("b18").Select

Selection.Copy

Sheets("Récap").Select

Range("a3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("F10").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("c3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("C8").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("d3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("B23").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("E3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select 'prend la case prix total

Range("G50").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("F3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début de boucle pour copier

Sheets("Bon de commande").Select

Range("B27:C27").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("G3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D27").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("H3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E27").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("I3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B28:C28").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("J3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D28").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("K3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E28").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("L3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B29:C29").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("M3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D29").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("N3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E29").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("O3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B30:C30").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("P3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D30").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("Q3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E30").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("R3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B31:C31").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("S3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D31").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("T3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E31").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("U3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B32:C32").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("V3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D32").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("W3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E32").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("X3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B33:C33").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("Y3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D33").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("Z3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E33").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AA3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B34:C34").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AB3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D34").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AC3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E34").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AD3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B35:C35").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AE3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D35").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AF3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E35").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AG3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B36:C36").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AH3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D36").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AI3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E36").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AJ3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B37:C37").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AK3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D37").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AL3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E37").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AM3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B38:C38").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AN3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D38").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AO3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E38").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AP3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B39:C39").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AQ3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D39").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AR3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E39").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AS3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B40:C40").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AT3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D40").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AU3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E40").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AV3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B41:C41").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AW3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D41").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AX3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E41").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AY3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B42:C42").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AZ3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D42").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BA3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E42").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BB3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B42:C42").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("AZ3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D42").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BA3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E42").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BB3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B43:C43").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BC3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D43").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BD3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E43").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BE3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'début boucle +1

Sheets("Bon de commande").Select

Range("B44:C44").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BF3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("D44").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BG3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Bon de commande").Select

Range("E44").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récap").Select

Range("BH3").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

' insertion d'une ligne

Rows("3:3").Select

Selection.Insert Shift:=xlDown

Application.CutCopyMode = False

Sheets("Bon de commande").Select ' efface le contenu de la colonne B-C et E du tableau

Range("B27:C49").Select

Selection.ClearContents

Range("E27:E49").Select

Selection.ClearContents

Range("F10").Select

Selection.ClearContents

Range("B23").Select

Selection.ClearContents

End Sub

Macro "recap"

Sub recap_mens()

'

' recap_mens Macro

'

'

Range("a2:F48000").Select

Selection.ClearContents

Sheets("Récap").Select

' ActiveSheet.Range("$A$2:$BX$5967").AutoFilter Field:=5, Operator:= _

' xlFilterValues, Criteria2:=Array(1, "11/30/2015")

Range("C3:E5968").Select

Selection.Copy

Sheets("Récup mensuelle").Select

Range("A2").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("G3:I5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D2").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("J3:L5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D3000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("M3:O5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D6000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("P3:R5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D9000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("S3:U5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D12000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("v3:x5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D15000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("Y3:AA5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D18000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AB3:AD5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D21000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AE3:AG5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D24000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AH3:AJ5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D27000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AK3:AM5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D30000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AN3:AP5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D33000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AQ3:AS5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D36000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AT3:AV5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D39000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AW3:AY5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D42000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Sheets("Récap").Select

Range("AZ3:BB5968").Select

Application.CutCopyMode = False

Selection.Copy

Sheets("Récup mensuelle").Select

Range("D45000").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Range("A2:C2999").Select

Application.CutCopyMode = False

Selection.Copy

Range("A3000").Select

ActiveSheet.Paste

Range("A6000").Select

ActiveSheet.Paste

Range("A9000").Select

ActiveSheet.Paste

Range("A12000").Select

ActiveSheet.Paste

Range("A15000").Select

ActiveSheet.Paste

Range("A18000").Select

ActiveSheet.Paste

Range("A21000").Select

ActiveSheet.Paste

Range("A24000").Select

ActiveSheet.Paste

Range("A27000").Select

ActiveSheet.Paste

Range("A30000").Select

ActiveSheet.Paste

Range("A33000").Select

ActiveSheet.Paste

Range("A36000").Select

ActiveSheet.Paste

Range("A39000").Select

ActiveSheet.Paste

Range("A42000").Select

ActiveSheet.Paste

Range("A45000").Select

ActiveSheet.Paste

Range("A2:F48000").Select

Application.CutCopyMode = False

ActiveWorkbook.Worksheets("Récup mensuelle").Sort.SortFields.Clear

ActiveWorkbook.Worksheets("Récup mensuelle").Sort.SortFields.Add Key:=Range( _

"D2:D48000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _

xlSortNormal

With ActiveWorkbook.Worksheets("Récup mensuelle").Sort

.SetRange Range("A1:F48000")

.Header = xlYes

.MatchCase = False

.Orientation = xlTopToBottom

.SortMethod = xlPinYin

.Apply

End With

Range("N3").Select

End Sub

Ok, pour mieux comprendre

Ta Feuil2 c'est Sheets("Bon de commande") dans ton code

et Feuil1 c'est Sheets("Récap") ?

Dans mon fichier original (car celui que j'ai posté n'est qu'une copie pour montrer un extrait), "bon de commande" est en feuille 2 et "récap" est en feuille 3

Bonsoir,

Regarde un test qui devrait correspondre à ta demande.

Bonjour,

Merci beaucoup pour votre aide, en effet ce test marche comme je le souhaite !

Cependant, afin d'appliquer la même chose à mon fichier d'origine, comment dois-je procéder ? Dois-je copier-coller la macro du test dans mon fichier d'origine ? Si oui, je copie "dansongletrecap" et "enregistrement_commande" ou bien les 4 ? Sachant que je ne pense pas garder la fonction "clean recap" puisque justement le but est de tout garder

Merci d'avance, j'y suis presque !!

Salut MonaRenard,

J'ai corrigé une erreur dans le code et commenté mon code pour que tu t'y retrouves.

Alors tu peux copier le code sur ton projet , après tu vas devoir adapter les références au cellules si jamais cela diffère.

Garde la macro dansonlgetrecap les autres macro ne correspondent plus au besoin, de mon point de vue.

Attention, je me suis mis en référence L1c1,

Si tu ne connais pas regarde https://forum.excel-pratique.com/excel/references-dans-les-cellules-t17843.html

Par exemple:

wbc.Cells(18, 2)

correspond à la cellule B18 feuille "bon de commande".

Bonne journée.

Merci beaucoup pour ton aide !

Mon problème est résolu. Mais j'en rencontre un nouveau depuis qqs jours. Je vais créer une nouvelle discussion car c'est différent de mon 1er problème.

Merci encore ! Et à bientôt

Rechercher des sujets similaires à "probleme macro"