Bonsoir (nuit ?) A tous.
Des heures que je cherche quelque chose que je pensais tout simple.
J'explique :
J'ai une liste dans Excel et un document Word (qui ne sera pas toujours le même)
L'idée : Ajouter un signet au document Word ouvert (appelé texte) et lancer une macro dans Excel, ce programme va balayer la liste Excel, et pour chaque ligne dans Excel , il va copier le doc word actif dans un nouveau document Word (pour ne pas modifier l'original et parce que je ne sais pas supprimer un texte entré précédemment), Copié la ligne Excel à l'endroit du signet, imprimer le document puis le fermer. Retourner à l'original Word, si ligne suivante d'Excel y a une ligne à imprimer on recommence la procédure.
Pour faire ceci je dois donc utiliser le document Word alors que je ne connais pas forcément son chemin.
Jai donc pensé à "GETOBJECT"
Ben vous me croirez ou non, ça ne fonctionne pas (pas comme je l'entends du moins)
Ci dessous le code (qui n'est pas fini bien sur)
	
	
	
	
	
		
La il fonctionne , ce qui me chagrine c'est que je suis obligé de rentrer le chemin dans le premier Getobject alors que pas du tout pour le second, le nom du fichier suffit.
Mais pourquoi ?
J'ai du faire une erreur bête car on ne parle pas de ce problème sur le net, et j'ai cherché. La syntaxe que je trouve dans les forums est celle que j'utilise. Pourtant il est indiqué que le chemin n'est pas obligatoire. Ou me goure je ?
Si quelqu'un à une idée, ce "petit" problème m'a vanné.
En tout cas merci à tous. ceux qui auront eu le courage d'aller jusqu'au bout de ce message
Bonne chance
	
		
			
		
		
	
				
			Des heures que je cherche quelque chose que je pensais tout simple.
J'explique :
J'ai une liste dans Excel et un document Word (qui ne sera pas toujours le même)
L'idée : Ajouter un signet au document Word ouvert (appelé texte) et lancer une macro dans Excel, ce programme va balayer la liste Excel, et pour chaque ligne dans Excel , il va copier le doc word actif dans un nouveau document Word (pour ne pas modifier l'original et parce que je ne sais pas supprimer un texte entré précédemment), Copié la ligne Excel à l'endroit du signet, imprimer le document puis le fermer. Retourner à l'original Word, si ligne suivante d'Excel y a une ligne à imprimer on recommence la procédure.
Pour faire ceci je dois donc utiliser le document Word alors que je ne connais pas forcément son chemin.
Jai donc pensé à "GETOBJECT"
Ben vous me croirez ou non, ça ne fonctionne pas (pas comme je l'entends du moins)
Ci dessous le code (qui n'est pas fini bien sur)
		Code:
	
	
	Private Sub CommandButton_OK_Click()
    Dim WordDoc As Word.Document
    Dim WordDoc2 As Word.Document
    Dim WordApp As Word.Application
    Dim Texte As String
    Dim NomWord As String, NomWord2 As String
    Dim NomExcel As String
    
    NomExcel = Me.TextBox_Nom_Excel
    NomWord = Me.TextBox_Nom_Word
    Windows(NomExcel).Activate
    Texte = Range("a1")
    
    Set WordApp = CreateObject("Word.Application")
    'Set WordDoc = GetObject(NomWord)
    Set WordDoc = GetObject("D:\Nos documents\AutoEntrepriseVincent\ProgOnline\Guillaumme Roux\PubliWord\Test.docx")
    
    WordDoc.Range.Select
    WordDoc.Content.Copy
        
    WordApp.Documents.Add.Activate
    WordApp.Visible = True
    NomWord2 = WordApp.ActiveDocument.Name
    Set WordDoc2 = GetObject(NomWord2)
    
    
    WordApp.Selection.Paste
    
    
    WordDoc2.Bookmarks("texte").Range.Text = Texte
    
    
    
    
End Sub
	La il fonctionne , ce qui me chagrine c'est que je suis obligé de rentrer le chemin dans le premier Getobject alors que pas du tout pour le second, le nom du fichier suffit.
Mais pourquoi ?
J'ai du faire une erreur bête car on ne parle pas de ce problème sur le net, et j'ai cherché. La syntaxe que je trouve dans les forums est celle que j'utilise. Pourtant il est indiqué que le chemin n'est pas obligatoire. Ou me goure je ?
Si quelqu'un à une idée, ce "petit" problème m'a vanné.
En tout cas merci à tous. ceux qui auront eu le courage d'aller jusqu'au bout de ce message
Bonne chance