Comment prendre des données d'Excel vers Word avec VBA

Le
Don Juan
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #852794
Bonjour.
Voici comment je procède, à partir d'Excel, une instance de Word étant
démarré. Dans Excel, je lance une macro qui ouvre le document Word, appelle
une macro Word et lui transmet le(s) paramètres. La macro Word se positionne
sur un signet prédéfini et insère la valeur du paramètre (il y a sans doute
plus malin, mais ça fonctionne !)
Il faut cocher "Microsoft Word xx Object Library" dans Outils / Références.
1. dans Excel :
Sub test()
chemin = "c:temp"
Set WordObj = GetObject(, "Word.Application")
WordObj.Visible = True
WordObj.Documents.Open chemin & "Template.doc"
On Error Resume Next
WordObj.Run "MacroWord", Parametre
Set WordObj = Nothing
End Sub

2. dans Word :

Sub MacroWord(Parametre)
With Selection
.GoTo What:=wdGoToBookmark, Name:="Signet"
.TypeText Text:=Parametre
End With
End Sub

Note : on peut démérrer l'instance de Word à l'aide de la ligne :
Set appWord = CreateObject("Word.Application")
Mais chez moi, ça ne fonctionne pas.
Cordialement.
Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #1769331
Bonjour.
Voici comment je procède, à partir d'Excel, une instance de Word étant
démarré. Dans Excel, je lance une macro qui ouvre le document Word, appelle
une macro Word et lui transmet le(s) paramètres. La macro Word se positionne
sur un signet prédéfini et insère la valeur du paramètre (il y a sans doute
plus malin, mais ça fonctionne !)
Il faut cocher "Microsoft Word xx Object Library" dans Outils / Références.
1. dans Excel :
Sub test()
chemin = "c:temp"
Set WordObj = GetObject(, "Word.Application")
WordObj.Visible = True
WordObj.Documents.Open chemin & "Template.doc"
On Error Resume Next
WordObj.Run "MacroWord", Parametre
Set WordObj = Nothing
End Sub

2. dans Word :

Sub MacroWord(Parametre)
With Selection
.GoTo What:=wdGoToBookmark, Name:="Signet"
.TypeText Text:=Parametre
End With
End Sub

Note : on peut démérrer l'instance de Word à l'aide de la ligne :
Set appWord = CreateObject("Word.Application")
Mais chez moi, ça ne fonctionne pas.
Cordialement.
Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #5130951
Bonjour.
Voici comment je procède, à partir d'Excel, une instance de Word étant
démarré. Dans Excel, je lance une macro qui ouvre le document Word, appelle
une macro Word et lui transmet le(s) paramètres. La macro Word se positionne
sur un signet prédéfini et insère la valeur du paramètre (il y a sans doute
plus malin, mais ça fonctionne !)
Il faut cocher "Microsoft Word xx Object Library" dans Outils / Références.
1. dans Excel :
Sub test()
chemin = "c:temp"
Set WordObj = GetObject(, "Word.Application")
WordObj.Visible = True
WordObj.Documents.Open chemin & "Template.doc"
On Error Resume Next
WordObj.Run "MacroWord", Parametre
Set WordObj = Nothing
End Sub

2. dans Word :

Sub MacroWord(Parametre)
With Selection
.GoTo What:=wdGoToBookmark, Name:="Signet"
.TypeText Text:=Parametre
End With
End Sub

Note : on peut démérrer l'instance de Word à l'aide de la ligne :
Set appWord = CreateObject("Word.Application")
Mais chez moi, ça ne fonctionne pas.
Cordialement.
Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #852793
Euh, j'avais pas bien lu. Fallait partir de Word
Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #1769330
Euh, j'avais pas bien lu. Fallait partir de Word
Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #5130941
Euh, j'avais pas bien lu. Fallait partir de Word
Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #852792
Utilise plutôt dans Word le code suivant :

Dim xlApp As New Excel.Application
xlApp.Workbooks.Open "e:donneesdanieltoto.xls"
xlApp.Visible = True
For Each c In xlApp.Sheets(2).Range("A1:A10")
UserForm1.ComboBox1.AddItem c
Next c
UserForm1.Show

Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #1769328
Utilise plutôt dans Word le code suivant :

Dim xlApp As New Excel.Application
xlApp.Workbooks.Open "e:donneesdanieltoto.xls"
xlApp.Visible = True
For Each c In xlApp.Sheets(2).Range("A1:A10")
UserForm1.ComboBox1.AddItem c
Next c
UserForm1.Show

Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Daniel.C
Le #5130931
Utilise plutôt dans Word le code suivant :

Dim xlApp As New Excel.Application
xlApp.Workbooks.Open "e:donneesdanieltoto.xls"
xlApp.Visible = True
For Each c In xlApp.Sheets(2).Range("A1:A10")
UserForm1.ComboBox1.AddItem c
Next c
UserForm1.Show

Daniel
"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



heureux-oli
Le #852791
Une piste http://www.developpez.net/forums/showthread.php?

--
Heureux-oli
http://heureuxoli.developpez.com/

----------------------------------------------------------------------------------

"Don Juan"
Bonjour!
J'ai un document Excel avec des données. (Colonne A nommée: "Nom" avec
quelques données).
En Word, j'ai ajouté un ComboBox et je désire remplir le combo avec les
données de mon document Excel dès que j'ouvre mon document word.

Comment faire cela?

1000 mercis d'avance.



Publicité
Poster une réponse
Anonyme