IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Microsoft Office Discussion :

Enregistrement Publipostage en VBA


Sujet :

Microsoft Office

  1. #1
    Futur Membre du Club
    Homme Profil pro
    bricolo multi activitée
    Inscrit en
    Janvier 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : bricolo multi activitée

    Informations forums :
    Inscription : Janvier 2014
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Enregistrement Publipostage en VBA
    Bonjour,

    Suite à la lecture de plusieurs tuto sur le Publipostage( don http://heureuxoli.developpez.com/off.../publipostage/ )
    je cherche à sauvegarder le résultat de la fusion avec un nom bien précis(ex c:\User\TOTO\ProjetY\Resultat.doc).Au stade ou j'en suis le publipostage fonctionner bien mais il se crée dans un nouveau document.Je ne peux pas utiliser le sav ActiveDocument car si mon utilisateur change de document pendant le publipostage.....(le publipostage tourne sur une base de 10 milles ligne)

    je suis preneur de toutes idées pour résoudre le problème:
    envoyer le publipostage dans un fichier directement
    récupéré le nom du fichier crée et faire un savAs
    .......



    mon code qui n'est pas complet:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
     Dim woApp As Word.Application
        Set woApp = CreateObject("word.Application")  'ouvre Word
        Dim DcTemplate As Word.Document 'document template
        Dim DcResultPP As Word.Document 'resultat publipostage
        woApp.Documents.Open FileName:=sPathDocWord, ConfirmConversions:=False, ReadOnly:= _
        False, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:= _
        "", Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="", _
        Format:=wdOpenFormatAuto, XMLTransform:=""
        woApp.Visible = True
     
        Set DcTemplate = woApp.Documents(sPathDocWord)
     
        Set DcResultPP = woApp.Documents.Add
     
        DcTemplate.MailMerge.OpenDataSource Name:= _
            sPathFileRapportXls, _
            ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
            AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
            WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
            Format:=wdOpenFormatAuto, Connection:= _
            "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source="Ssource";Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=37;Jet" _
            , SQLStatement:="SELECT * FROM `POINTS_FINAUX$`", SQLStatement1:="", _
            SubType:=wdMergeSubTypeAccess
     
     
     
        With DcTemplate.MailMerge
            .Destination = wdSendToNewDocument
            .SuppressBlankLines = True
            With .DataSource
                .FirstRecord = wdDefaultFirstRecord
                .LastRecord = wdDefaultLastRecord
            End With
            .Execute Pause:=False
     
        End With

  2. #2
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Que veux-tu faire exactement ?

    Parce que si tu veux avoir un fichier distinct pour chaque destinataire c'est différent d'un seul fichier global.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    bricolo multi activitée
    Inscrit en
    Janvier 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : bricolo multi activitée

    Informations forums :
    Inscription : Janvier 2014
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    je voudrai faire un fichier avec x enregistrement
    Ce qui revient à faire :"terminer & fusionner" puis ->modifier des documents individuellements et pour finir(la partie qui me tiens en échec)
    enregistré le document résultant de la fusion.Il s'appelle lettre1 généralement (1 peut être 2,3,4....)

    je pense qu'il ne manque pas grand chose pour finir mon code.
    Si je pouvez récupérer le nom du fichier crée ou autre....

    j attend une petit idée svp

    ps je prend aussi du code :-)

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    À première vue et sans test:

    À la fin de la macro, après la fusion:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    woapp.DcResultPP.save("Le nom voulu")
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    bricolo multi activitée
    Inscrit en
    Janvier 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : bricolo multi activitée

    Informations forums :
    Inscription : Janvier 2014
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Enregistrement Publipostage en VBA
    Je suis désolé mais je ne vois pas comment dire que "DcResultPP" est égal au résultat de la fusion
    si je fais cela je sauvegarde un document vierge...

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Pourrais-tu mettre un extrait de quelques lignes de ton fichier de données, quitte à inventer des données, s'il est confidentiel. Parce que je ne pense pas avoir de fichier de données de publipostage sous la main.

    Je vais quand même essayer de me trouver (inventer) un fichier de publipostage, mais cela me semble préférable de tester avec le tien.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

Discussions similaires

  1. [Toutes versions] Enregistrement Publipostage en VBA
    Par cedricM2o dans le forum Word
    Réponses: 0
    Dernier message: 14/05/2014, 19h14
  2. Publipostage, liaison VBA -> Word
    Par Aboshan441 dans le forum Word
    Réponses: 8
    Dernier message: 14/09/2007, 08h48
  3. [VBA-E] probleme enregistrement fichier pour VBA excel
    Par hamster. dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/04/2007, 19h52
  4. Probleme d'enregistrement sur Macro/VBA de Excel
    Par life is magic dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 28/11/2005, 17h23
  5. Valider l'enregistrement en cours VBA
    Par avril.stephane dans le forum Access
    Réponses: 3
    Dernier message: 24/08/2005, 15h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo