publipostage automatisé ?

dantri56

XLDnaute Nouveau
bonjour à tous !!!!

Alors, voici mon problème, je souhaite effectuer un publipostage automatisé (publipostage word avec base excel)

le seul problème c'est qu'à chaque ouverture des fichiers il me demande de rechercher la base et de refaire les liaisons.:confused:

Une idée ?

a +
 

Pièces jointes

  • 20090527 Diagnostic PASSE version B2.zip
    38.5 KB · Affichages: 78
  • Edition.zip
    23.3 KB · Affichages: 83
  • Edition.zip
    23.3 KB · Affichages: 90
  • Edition.zip
    23.3 KB · Affichages: 87

dantri56

XLDnaute Nouveau
Re : publipostage automatisé ?

salut tototiti2008,

tout d'abord, merci pour ta réponse, je ne sais pas pkoi les zip ne s'ouvrent pas , de mon coté ca marche ??!! :confused::mad:,

sinon, c'est un publipostage qui se présente comme ça :

j'ai ma base excel avec des données importées via Buisness Object XI, et je dois mettre ces informations (clients, adresses....) sous forme de document word

(raaaaahhh, et pour le fichier word, je n'arrive pas à l''envoyer !!)
 

Pièces jointes

  • Edition.xls
    38.5 KB · Affichages: 198
  • Edition.xls
    38.5 KB · Affichages: 194
  • Edition.xls
    38.5 KB · Affichages: 184

tototiti2008

XLDnaute Barbatruc
Re : publipostage automatisé ?

Re,

Bon, ok, de toute façon, à partir du moment où c'est basé sur une liste excel et que c'est un publipostage classique, c'est le même principe (c'est à dire que ton nombre de champs dans ta liste ou la présentation dans Word ne change rien).

Mais :

Le publipostage doit être lancé de Word ou d'Excel ?
 

tototiti2008

XLDnaute Barbatruc
Re : publipostage automatisé ?

Re,

à partir d'Excel ça doit donner un truc comme ça :

en rouge, le chemin du document principal Word
en vert, le chemin du fichier Excel source

Dans Outils-Références, il faudra cocher Microsoft Word X.X Object Library

Code:
    Set MonWord = New Word.Application
    MonWord.DisplayAlerts = wdAlertsNone
 
    Set MonDoc = MonWord.Documents.Open(Filename:=[COLOR=red]ThisWorkbook.Path & "\Template.doc"[/COLOR], ConfirmConversions:=True, _
        ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
        PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
        WritePasswordTemplate:="", Format:=wdOpenFormatAuto, XMLTransform:="")
    Conn = "Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=" & [COLOR=seagreen]ThisWorkbook.Path & "\ListePublipostage.xls[/COLOR];Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet "
     MonDoc.MailMerge.OpenDataSource Name:= _
        [COLOR=seagreen]ThisWorkbook.Path & "\ListePublipostage.xls"[/COLOR] _
        , ConfirmConversions:=True, ReadOnly:=False, LinkToSource:=True, _
        AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
        WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
        Format:=wdOpenFormatAuto, Connection:=Conn, SQLStatement:="SELECT * FROM `Feuil1$`", SQLStatement1:="", SubType:= _
        wdMergeSubTypeAccess
   
        With MonDoc.MailMerge
        .Destination = wdSendToNewDocument
        .SuppressBlankLines = True
        With .DataSource
            .FirstRecord = wdDefaultFirstRecord
            .LastRecord = wdDefaultLastRecord
        End With
        .Execute Pause:=False
    End With
    MonDoc.Close False
    MonWord.DisplayAlerts = wdAlertsAll
    MonWord.Visible = True
    Set MonDoc = Nothing
 

Brigitte

XLDnaute Barbatruc
Re : publipostage automatisé ?

Bonsoir,

Je m'invite sur ce fil car le publipostage à l'aide d'un fichier excel, ca m'intéresse toujours. Eet là en voyant la dextérité de tototiti, je me dis : sait on jamais, ca existe peut être, ce que je voudrais depuis longtemps.

J'ai un fichier excel différent chaque fois (mais monté à l'identique) et un fichier word qui doit fusionner vers celui ci.

Pourrait on envisager :

- de mettre un bouton dans la feuille excel (il s'agit d'un modèle que les gens remplissent) sur lequel on cliquerait et qui lancerait le publipostage word (ouverture du fichier d'étiquettes, remplissage requête),

sachant que je mets une croix pour les enregistrements que je souhaite...

Souci, il faudrait rajouter au début la demande du chemin du fichier word, car il est à des endroits différents selon la bonne volonté des utilisateurs... (réseau, mais à copier sous intranet puis installer sur PC). Donc une boîte de dialogue équivalente à celle qui s'ouvre sur word lorsqu'on fusionne... ca serait le pied, avec un mot qui dirait : allez chercher votre fichier word.

Merci d'avance.

PS : ne fais pas d'usine à gaz, tototiti, ou toute autre personne, c'est juste que ce fil me fait penser à ca... sinon j'ouvre un autre fil. Mais je n'aurais pas pensé ca possible, là j'ai un peu d'espoir.

Je joins un zip, mais bien sûr, ca ne ressemble en rien à mes fichiers, bien plus complexes... et les étiquettes, ici, n'en sont pas...
 

Pièces jointes

  • 1 Mondoc.zip
    10 KB · Affichages: 190

logan138

XLDnaute Nouveau
Re : publipostage automatisé ?

Bonjour a tous,
Moi aussi je vais me "gréffé" à ce post car je cherche a faire qqch de similaire mais je n'y connais mais alors rien du tout au VBA et lorsque je regarde les code marqué, c'est du chinois pour moi...

J'ai développé un publipostage sous Word se basant sur une bas de donnée sur Excel pour generer automatiquement des étiquettes a imprimer selon un format bien particulié. J'ai fait le publipostage sous word et quand je clique sur publipostage/terminer/fusionner/imprimer les document, tout marche bien.

Afin de faciliter l'utilisation de cette fonction, je voudrait faire une sorte de bouton "imprimer" (comme j'ai pu voir dans le dernier excel proposé) sur mon classeur excel pour que celui-ci lance directement le publipostage et l'impression, comme si je le faisait manuelle comme décrit ci dessus mais sans avoir a ouvrir le fichier word.

Je suppose qu'il faut juste adapter le code du dernier excel proposer mais je ne sais pas du tout comment. Moi dans mon cas, pas besoin de sélectionner le fichier word car il est sur le réseau et n'est pas sensé etre déplacé.

Merci d'avance pour votre aide

Logan
 

miguelangelo

XLDnaute Occasionnel
Re : publipostage automatisé ?

bonjour à tous,

je rebondis sur ce post, (7 ans après sa création !!!!)

j'essaye de travailler sur la macro pour l'adapter à mon besoin,

il se trouve que j'ai un fichier excel avec pls onglets. l'onglet qui m’intéresse pour la fusion est l'onglet Infos, avec une zone particulière nommée "zone_fusion" (il y a l'entete de tableau puis les données)

je ne sais pas adapter ces infos à la macro :

Set MonWord = New Word.Application
MonWord.DisplayAlerts = wdAlertsNone

Set MonDoc = MonWord.Documents.Open(Filename:="C:\Users\IM1147\Desktop\Tous mes documents\modeles\GrDF contrat Prestation.dot", ConfirmConversions:=True, _
ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
WritePasswordTemplate:="", Format:=wdOpenFormatAuto, XMLTransform:="")

Conn = "Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=" & "C:\Users\IM1147\Dropbox\Excel\tableau de suivi bis.xlsb"";Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet "

MonDoc.MailMerge.OpenDataSource Name:= _
"C:\Users\IM1147\Dropbox\Excel\tableau de suivi bis.xlsb" _
, ConfirmConversions:=True, ReadOnly:=False, LinkToSource:=True, _
AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
Format:=wdOpenFormatAuto, Connection:=Conn, SQLStatement:="SELECT * FROM `zone_fusion$`", SQLStatement1:="", SubType:= _
wdMergeSubTypeAccess


With MonDoc.MailMerge
.destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With
MonDoc.Close False
MonWord.DisplayAlerts = wdAlertsAll
MonWord.Visible = True
Set MonDoc = Nothing




Merci d'avance pour votre aide
 

Discussions similaires

Réponses
5
Affichages
156

Statistiques des forums

Discussions
311 733
Messages
2 082 015
Membres
101 870
dernier inscrit
Dethomas