Générer un bon excel à partir d'une liste excel

Ahm

XLDnaute Junior
Bonjour,

J'ai une liste excel simple avec produits/commandes
Et j'aimerai générer des bons de commande à partir cette liste

Est-ce que quelqu'un a une idée?

Fichier joint en exemple (le fichier original est bien plus lourd, fonctionne avec filtre).

Merci.
 

Pièces jointes

  • exemplecommandeetbon.xls
    24 KB · Affichages: 91

Ahm

XLDnaute Junior
Re : Générer un bon excel à partir d'une liste excel

Génial !
C'est exactement ça !

Par contre la formule est vraiment compliquée. Est-ce que cela peut poser des problème de lenteur si je fais 600 lignes de la sorte?
(je travail sur un vieux pc en plus)

Merci beaucoup.
 

Ahm

XLDnaute Junior
Re : Générer un bon excel à partir d'une liste excel

(Re)Bonjour,

J'ai essayé, c'est une usine à gaz !
Mon PC est trop lent (j'ai 600 lignes et 30 colonnes à traiter).

Aurais-tu une autre idée? Je pensais à la fonction RECHERCHE?

Merci encore.
 

Ahm

XLDnaute Junior
Re : Générer un bon excel à partir d'une liste excel

Bonjour,

J'ai essayé avec l'enregistreur de macro
Pour une colonne:
ActiveSheet.Range("$A$1:$D$27").AutoFilter Field:=3, Criteria1:="<>"
Columns("A:A").Select
Selection.Copy
Sheets("Bon de commande").Select
Sheets("Bon de commande").Paste
Sheets("Commande").Select
Columns("C:C").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Bon de commande").Select
Range("H3").Select
Sheets("Commande").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Bon de commande").Select
ActiveSheet.Paste

Dans l'absolue ça pourrait marcher mais je pense qu'avec le nombre de ligne et de colonne, ça risque d'être trop lourd.
 

Ahm

XLDnaute Junior
Re : Générer un bon excel à partir d'une liste excel

Bonjour,

J'ai beaucoup de difficultés à adapter le code à mon fichier (ci joint).
C'est exactement pareil à l'exception de :
- 3 colonnes désignant le produit (au lieu d'une). Les trois informations doivent se succéder sur la même ligne.
- 43 colonnes commandes (au lieu d'une infinité)

Pourrais-tu me donner un ultime coup de main stp?

Merci encore.
 

Pièces jointes

  • exemplecommandeetbonVBA.xls
    48 KB · Affichages: 71

Habitude

XLDnaute Accro
Re : Générer un bon excel à partir d'une liste excel

Je me suis permis quelques petite modif
 

Pièces jointes

  • exemplecommandeetbonVBA.zip
    21.8 KB · Affichages: 78
  • exemplecommandeetbonVBA.zip
    21.8 KB · Affichages: 74
  • exemplecommandeetbonVBA.zip
    21.8 KB · Affichages: 76

Ahm

XLDnaute Junior
Re : Générer un bon excel à partir d'une liste excel

Génial ! C'est vraiment ce qu'il me fallait.

Juste deux choses:
- J'aimerai arrêter de générer à la colonne AY (=Commande 43) (car j'ai d'autres colonnes après qui sont générées en bon)
- J'aimerai démarrer 5 lignes plus bas (ligne 6 au lieu de ligne 2)

Comment je peux faire?

Merci encore !
 

Habitude

XLDnaute Accro
Re : Générer un bon excel à partir d'une liste excel

Génial ! C'est vraiment ce qu'il me fallait.

Juste deux choses:
- J'aimerai arrêter de générer à la colonne AY (=Commande 43) (car j'ai d'autres colonnes après qui sont générées en bon)
- J'aimerai démarrer 5 lignes plus bas (ligne 6 au lieu de ligne 2)

Comment je peux faire?

Merci encore !

pour arrêter a AY
remplace
Code:
For i = .Range("1:1").Find("Commande 1").Column To .Range("IV1").End(xlToLeft).Column
Par
Code:
For i = .Range("1:1").Find("Commande 1").Column To 51

Cette ligne
Code:
 For j = [COLOR="Red"]2[/COLOR] To .Cells(65536, i).End(xlUp).Row
Suffit de changer le 2 pour la ligne de départ désirée
 

Discussions similaires

Réponses
9
Affichages
156

Statistiques des forums

Discussions
312 198
Messages
2 086 114
Membres
103 121
dernier inscrit
SophieS