Bonjour ou rebonjour pour certain. 
Question un poil plus complexe : puis-je, grâce à une unique BBD sur Excel, publiposter sur plusieurs documents words différents, sur lesquels les champs de fusion sont déjà préparés.
Je pensais que grâce à une macro de ce genre on pourrait arriver à quelque chose mais je m'y connais encore pas assez.
Merci d'avance à ceux qui pourront y réfléchir.
	
	
	
	
	
		
	
		
			
		
		
	
				
			Question un poil plus complexe : puis-je, grâce à une unique BBD sur Excel, publiposter sur plusieurs documents words différents, sur lesquels les champs de fusion sont déjà préparés.
Je pensais que grâce à une macro de ce genre on pourrait arriver à quelque chose mais je m'y connais encore pas assez.
Merci d'avance à ceux qui pourront y réfléchir.
		Code:
	
	
	Private Sub commandButton1_Click()
   [COLOR="Lime"] 'Nécessite d'activer la référence "Microsoft Word xx.x Object Library"[/COLOR]
    Dim docWord As Word.Document
    Dim appWord As Word.Application
    Dim NomBase As String
    
    NomBase = "C:\dossier\labase.xls"
    
    Application.ScreenUpdating = False
    Set appWord = New Word.Application
    appWord.Visible = True
   [COLOR="Lime"] 'Ouverture du document principal Word[/COLOR]
    Set docWord = appWord.Documents.Open("C:\leDocument.doc")
    
    [COLOR="Lime"]'fonctionnalité de publipostage pour le document spécifié[/COLOR]
    With docWord.mailMerge
		[COLOR="Lime"]'Ouvre la base de données[/COLOR]
		.OpenDataSource Name:= NomBase, _
            Connection:="Driver={Microsoft Excel Driver (*.xls)};" & _
            "DBQ=" & NomBase & "; ReadOnly=True;", _
            SQLStatement:="SELECT * FROM [Feuil1$]"
  [COLOR="Lime"]      'Spécifie la fusion vers l'imprimante[/COLOR]
        .Destination = wdSendToPrinter
        .suppressBlankLines = True
         [COLOR="Lime"]   'Prend en compte l'ensemble des enregistrements[/COLOR]
            With .DataSource
                .firstRecord = wdDefaultFirstRecord
                .lastRecord = wdDefaultLastRecord
      [COLOR="Lime"]      End With
        'Exécute l'opération de publipostage[/COLOR]
        .Execute Pause:=False
    End With
    
    Application.ScreenUpdating = True
    
 [COLOR="Lime"]   'Fermeture du document Word[/COLOR]
    docWord.Close False
    appWord.Quit
End Sub