Publipostage depuis Excel

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

RENAUDER

Nous a quitté
Repose en paix
Bonjour,

Je souhaite effectuer un publipostage à partir d'Excel.
Tout se passe bien sauf qu'à chaque fois, j'ai la boîte de dialogue de Word intitulée Sélectionnez le tableau et là je dois choisir ma plage de données pour la fusion et pourtant dans mon code, j'ai précisé la plage de données avec Connection:="Plage"
Code:
Sub Mailing()
    Dim AppWord As Word.Application
    Set AppWord = New Word.Application
    AppWord.Visible = True
    AppWord.Documents.Open "C:\Excel\Castagnola\OF_Semaine A.doc"
    With AppWord.ActiveDocument.MailMerge
        .MainDocumentType = wdCatalog
        .OpenDataSource Name:="C:\Excel\Castagnola\BdD_semaine2.xls", _
                        ReadOnly:=True, _
                        Connection:="Plage"
    End With
    With ActiveDocument.MailMerge
        .Destination = wdSendToNewDocument
        .SuppressBlankLines = True
        .Execute
    End With
End Sub
 
Re : Publipostage depuis Excel

Bonjour,
Voici ce que j'ai trouvé.
Code:
Sub OuvreOFSemaineB()
    ' Mise à jour du fichier de données Excel
    Workbooks.Open Filename:="d:\E-62\Gantt\BdD_semaine2.xls"
    Application.AskToUpdateLinks = False
    ActiveWorkbook.Close savechanges:=True
    ' Ouverture du document Word
    Dim AppWord As Word.Application
    Set AppWord = New Word.Application
    AppWord.Visible = True
    Set DocWord = AppWord.Documents.Open("C:\Excel\Castagnola\OF_Semaine B.doc")
    NomBase = "C:\Excel\Castagnola\BdD_semaine2.xls"
    With DocWord.MailMerge
        'Ouvre la base de données
        .OpenDataSource Name:=NomBase, _
            Connection:="Driver={Microsoft Excel Driver (*.xls)};" & "DBQ=" & _
            NomBase & "; ReadOnly=True;", SQLStatement:="SELECT * FROM [Feuil1$]"
        'Spécifie la fusion vers l'imprimante
        .Destination = wdSendToNewDocument    ' wdSendToPrinter
        .SuppressBlankLines = True
        'Prend en compte l'ensemble des enregistrements
        With .DataSource
            .FirstRecord = wdDefaultFirstRecord
            .LastRecord = wdDefaultLastRecord
        End With
        'Exécute l'opération de publipostage
        .Execute Pause:=False
    End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
517
Réponses
5
Affichages
642
Retour