OVH Cloud OVH Cloud

export de données texte rentrées dans excell vers un document word

2 réponses
Avatar
yupa
Bonjour =E0 tous,

je cherche =E0 r=E9aliser une macro ex=E9cutable par un bouton qui
ouvrirait un document word pre format=E9 (bref d=E9j=E0 existant) et
copierait =E0 une certaine place de la feuille word la s=E9lection faite
dans excel (il s'agirait du contenu de plusieurs cellules
s=E9lectionn=E9es dans excel)
pour l'instant je ne suis toujours pas parvenu =E0 ouvrir un document
word via une macro.
Merci d'avance de vos r=E9ponses!!

2 réponses

Avatar
ThierryP
Bonjour yupa,

tu peux t'inspirer de ceci, qui me sert à faire un E-mailing :

Sub Publipostage()
On Error Resume Next
ActiveWorkbook.VBProject.References.AddFromFile _
("C:Program FilesMicrosoft OfficeOffice10MSWORD.OLB")
Dim wApp As Word.Application, wDoc As Word.Document
Set wApp = CreateObject("Word.Application")
fichier = Application.GetOpenFilename("Modèle Word(*.dot), *.dot")
If fichier = False Then GoTo Fin
On Error GoTo 0
Range("A65000").End(xlUp).Select
Do While ActiveCell.Row <> 1
Set wDoc = wApp.Documents.Open(fichier)
If ActiveCell.Offset(0, 8).Value = "m" Then Civilité = "Cher
Monsieur" Else Civilité = "Chère Madame, Mademoiselle"
Nom = ActiveCell.Value
Prénom = ActiveCell.Offset(0, 1).Value
Adresse1 = ActiveCell.Offset(0, 2).Value
Adresse2 = ActiveCell.Offset(0, 3).Value
CodePost = ActiveCell.Offset(0, 4).Value
Ville = ActiveCell.Offset(0, 5).Value
Pays = ActiveCell.Offset(0, 6).Value
With wDoc
.Bookmarks("Civilité").Range.Text = Civilité
.Bookmarks("Prénom").Range.Text = Prénom
.Bookmarks("Nom").Range.Text = Nom
.Bookmarks("Adresse1").Range.Text = Adresse1
.Bookmarks("Adresse2").Range.Text = Adresse2
.Bookmarks("CodePost").Range.Text = CodePost
.Bookmarks("Ville").Range.Text = Ville
.Bookmarks("Pays").Range.Text = Pays
.Bookmarks("CodePost").Range.Text = CodePost
End With
Nom_Document = ThisWorkbook.Path & "Documents" & Nom & ".doc"
wDoc.SaveAs Nom_Document
wDoc.Close
Set wDoc = Nothing
cible = ActiveCell.Address
ActiveCell.Offset(-1, 0).Select
Loop
Fin:
If fichier = False Then
Message = "Fichier non valide"
Else
Message = "Documents créés"
End If
wApp.Quit
MsgBox Message
End Sub

Le fichier Word est préparé avec les signets qui vont bien et en
principe, tout roule !!

Bonjour à tous,

je cherche à réaliser une macro exécutable par un bouton qui
ouvrirait un document word pre formaté (bref déjà existant) et
copierait à une certaine place de la feuille word la sélection faite
dans excel (il s'agirait du contenu de plusieurs cellules
sélectionnées dans excel)
pour l'instant je ne suis toujours pas parvenu à ouvrir un document
word via une macro.
Merci d'avance de vos réponses!!



--
@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline

Avatar
yupa
Merci beaucoup pour cette réponse!
j'ai bien pigé le code, mais là où ça bloque sur excel, c'est que
les variables déclarés sont d'un type non défini pour lui, alors il
veut pas déboguer et en fait, et bien je suis toujours au même point!
si tu as d'autre id'ées, d'avance merci, mais en tout cas voici déjà
un grand merci pour ce que tu m'as indiqué
vincent