étiquettes pour caisses de vin

  • Initiateur de la discussion ffmmx
  • Date de début
F

ffmmx

Guest
bonjour
c'est tout simple mais compliqué à faire. Un tableau dans excel avec 3 colonnes :
nom / adresse / qté caisses de vin
AZERTY / 75000 Paris / 4
QUERTY / 44000 Nantes / 2
je veux faire des étiquettes à partir de word et donc 4 étiquettes pour AZERTY et 2 étiquettes pour QUERTY que je colle sur les caisses de vin ce qui me permet de ne pas me tromper
Merci de m'aider
ffmmx
 

Tibo

XLDnaute Barbatruc
Bonjour ffmmxx,

J'avoue ne pas avoir tout compris.

Les étiquettes, tu veux les faire avec Word ou Excel ?

Ici, tu es sur un Forum consacré à Excel. Certains maîtrisent également Word et pourraient te répondre.

Pour le moment, c'est ta question qui est compliquée plutôt que ton problème.

Reviens avec davantage d'infos et un exemple de ce que tu veux obtenir.

@+
 

Dugenou

XLDnaute Barbatruc
Salut,

j'utilise parfois Word pour des étiquettes et je trouve ta question intéressante. Je n'ai pas trouvé dans word un moyen de piloter le nombre d'étiquettes pour chaque champ de la base de données excel.
A mon avis, il faudrait faire une macro excel qui fabrique une nouvelle base données contenant autant de lignes que d'étiquette à imprimer. . Pour chaque ligne, on recopie autant de fois que le chiffre indiqué dans la colonne quantité. Je ne saurais pas le faire rapidement, mais il y a ici des spécialistes... Espérons qu'ils viendront lire ce fil !

Cordialement
 

MichelXld

XLDnaute Barbatruc
bonsoir Ffmmx , bonsoir chers Tibo et Jean-Yves


tu peux tester une procédure Word de ce type ( à placer dans le document principal de publipostage )

Sub publipostage_wordVBA_ImpressionMultipleConditionnel()
Dim i As Integer, x As Integer
'
'MichelXld le 04.03.2006
'
'Utilisez cette procédure Word apres avoir créé et mis en forme votre
'document principal de publipostage.
'C'est la macro qui va boucler sur tous les enregistrements et imprimer chaque enregistrement
'autant de fois qu'indiqué dans le champ 'qté caisses de vin'

'Cet exemple ne prend pas en compte les filtres éventuels dans le publipostage .

'Afficher le 1er enregistrement du publipostage
ThisDocument.MailMerge.DataSource.ActiveRecord = wdFirstRecord

'boucle sur tous les enregistrements de la base de données
For i = 1 To ThisDocument.MailMerge.DataSource.RecordCount

'Nombre d'impression en fonction de la valeur indiquée dans le champ 'qté caisses de vin'
For x = 1 To ThisDocument.MailMerge.DataSource.DataFields('qté caisses de vin').Value

With ThisDocument.MailMerge
.DataSource.FirstRecord = i
.DataSource.LastRecord = i
.Destination = wdSendToPrinter
.Execute
End With

Next x

'passer à l'enregistrement suivant
ActiveDocument.MailMerge.DataSource.ActiveRecord = wdNextRecord
Next i

End Sub




bonne soiree
MichelXld
 
F

ffmmx

Guest
Merci à Michel pour sa macro qui marche sous Word en rajoutant le '_' pour gérer l'espace du nom du champ
C'est vrai qu'une macro sur Excel pour dupliquer mes caisses m'aurait intéressé aussi afin de pouvoir par la suite filtrer sous word (caisses livrées et caisses non en stock)
Je remercie Michel
ffmmx
 

MichelXld

XLDnaute Barbatruc
bonjour

Sur le meme principe que le premier exemple , tu peux ajouter une condition pour imprimer les étiquettes uniquement quand le champ 'Statut' contient le mot 'Livré'

'
'...
'
'boucle sur tous les enregistrements de la base de données
For i = 1 To ThisDocument.MailMerge.DataSource.RecordCount

If ThisDocument.MailMerge.DataSource.DataFields('Statut').Value = 'Livré' Then

'Nombre d'impression en fonction de la valeur indiquée dans le champ 'qté caisses de vin'
For x = 1 To ThisDocument.MailMerge.DataSource.DataFields('qté_caisses_de_vin').Value
With ThisDocument.MailMerge
.DataSource.FirstRecord = i
.DataSource.LastRecord = i
.Destination = wdSendToPrinter
.Execute
End With
Next x

End If

'passer à l'enregistrement suivant
ActiveDocument.MailMerge.DataSource.ActiveRecord = wdNextRecord
Next i
'
'...
'



bon après midi
MichelXld
 

Discussions similaires

Statistiques des forums

Discussions
312 338
Messages
2 087 397
Membres
103 535
dernier inscrit
moimeme1