VBA

Fermé
rod - 8 nov. 2013 à 15:50
 rod - 8 nov. 2013 à 16:49
Bonjour,

Je suis en train d'utiliser du visual basic sous excel 2007 , lorsque j'effectue ma fusion avec mon ficher word et ensuite une impression en pdf , il ne s'arrete pas à la derniere ligne remplie.

J'aimerais avoir un peu d'aide , de plus je débute

Merci d'avance

2 réponses

kevv38 Messages postés 8 Date d'inscription vendredi 8 novembre 2013 Statut Membre Dernière intervention 15 novembre 2013
8 nov. 2013 à 15:53
Bonjour,

Serait-il possible d'avoir le code que tu as écris? ça rendrait les choses beaucoup plus simple pour t'aider

Cdlt,
0
désolé, pour le retard voici le code

Private Sub Creer_Fichiers_Click()
repartition
End Sub

Private Sub CommandButton1_Click()
'Nécessite d'activer la référence "Microsoft Word xx.x Object Library"
Dim docWord As Word.Document
Dim appWord As Word.Application

Dim Chemin As String
Dim NomFich As String
Dim NomBase As String


'Chemin localisation document
Chemin = "C:\Users\HP_SI\Desktop\coco\" 'à changer pour local
NomFich = "test.doc"
NomBase = "test_V01.xls"

Application.ScreenUpdating = False
Set wdApp = CreateObject("word.application") 'ouvre une session Word
wdApp.Visible = True
Set WdDoc = wdApp.Documents.Open(Filename:=Chemin & NomFich)
DoEvents

With WdDoc.MailMerge


'fonctionnalité de publipostage pour le document spécifié
With docWord.MailMerge
'Ouvre la base de données
.OpenDataSource Name:=Chemin & NomBase, _
Connection:="Driver={Microsoft Excel Driver (*.xls)};" & _
"DBQ=" & Chemin & NomBase & "; ReadOnly=True;", _
SQLStatement:="SELECT * FROM [Import$]"


'Spécifie la fusion vers l'imprimante
.Destination = wdSendToPrinter

'Prend en compte l'ensemble des enregistrements
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
'End With
.SuppressBlankLines = True
.Execute Pause:=False
End With

'Fermeture du document Word
docWord.Close False
appWord.Quit
Application.ScreenUpdating = True
End Sub
0