OVH Cloud OVH Cloud

De Word Vers Excel grace à une macro et un lien

1 réponse
Avatar
Saralita
Bonjour,

J'ai besoin d'aide ! j'utiilse Word et Excel 2003.
J'ai un document word ( proposition.doc) et un document excel ( offre.xls)
Je souhaite inserer une plage de données de mon document excel dans mon
document Word MAIS sans avoir a faire la manipulation Copier / Collage
Special (avec liaison ).
Alors j'opterai bien pour une macro mais ??? je ne connais pas grand chose
au macro...Alors est ce que quelqu'un aurait la gentillesse de m'aider à
trouver une solution.

Ensuite , je voudrais pouvoir lancer la macro en cliquand sur un lien dans
mon document word. Est ce possible et si oui comment ? Si non ya til une
autre solution

Merci d'avance

1 réponse

Avatar
FxM
Bonsoir,

En juin 2003, Philippe Tulliez (qui se fait rare) m'avait sorti une
sacré épine du pied avec une question similaire. Ma question était
d'envoyer des données d'Excel dans Word.
La solution passe par l'utilisation de signets dans le doc Word et de
zones nommées dans le fichier Excel.

Voici le code reçu à l'époque (je suis sous Excel 2000).

@+
FxM


=== début de copie == Option Explicit
' Sub de liaison Excel vers Word
Public Sub XlSendToWord(DotFileName As String, Parametres As Range)
' Arguments
' DotFileName = Chemin complet + Nom du Modèle
Dim MonDoc As Object
Dim MyObject, sw As Integer
Set MonDoc = CreateObject("Word.Application.8")

MonDoc.Application.ScreenUpdating = False

With MonDoc
.Documents.Add Template:=DotFileName, NewTemplate:úlse
.Visible = True
.WindowState = wdWindowStateMinimize
End With

For Each MyObject In Parametres
sw = sw + 1
Select Case sw
Case 1
Range(MyObject).Copy
Case 2
With MonDoc
.Selection.Goto What:=wdGoToBookmark, Name:=MyObject
.Selection.PasteSpecial Link:úlse, DataType:=wdPasteOLEObject,
Placement:=wdFloatOverText, DisplayAsIcon:úlse
End With
sw = 0
End Select
Next
With MonDoc
.WindowState = wdWindowStateNormal
.Application.ScreenUpdating = True
End With
Set MonDoc = Nothing
End Sub

Sub Envoi()
Dim rep As String
rep = "C:Documents and SettingsAll UsersModèlesTestTest Excel.dot"
XlSendToWord rep, Range("pnTest")
End Sub
=== fin de copie ==




Bonjour,

J'ai besoin d'aide ! j'utiilse Word et Excel 2003.
J'ai un document word ( proposition.doc) et un document excel ( offre.xls)
Je souhaite inserer une plage de données de mon document excel dans mon
document Word MAIS sans avoir a faire la manipulation Copier / Collage
Special (avec liaison ).
Alors j'opterai bien pour une macro mais ??? je ne connais pas grand chose
au macro...Alors est ce que quelqu'un aurait la gentillesse de m'aider à
trouver une solution.

Ensuite , je voudrais pouvoir lancer la macro en cliquand sur un lien dans
mon document word. Est ce possible et si oui comment ? Si non ya til une
autre solution

Merci d'avance