Besoin d'aide pour trasfere de Excel vers Word.

One Shot

XLDnaute Nouveau
Bonsoir,

Dans le cadre d'un projet de suivi de travaux, je souhaite transférer des données EXCEL vers word.

Le document word étant existant, la macro devra l'ouvrir et copier dessus.

Avec l'aide des forumeurs et en cherchant un peu je sui arrivé à la macro ci-dessous, mais celle-ci ne fonctionne pas car elle ne copie pas les données dans le document word à l'emplacement du fichier.

J'ai l'impression qu'il me manque une ligne pour sélectionner la feuille word.

Si une personne veut bien me venir en aide?



Dim appWrd As Word.Application
Dim docWord As Word.Document
Dim i As Byte

Set appWrd = CreateObject("Word.Application")
appWrd.Visible = True

Set docWord = appWrd.Documents. _
Open("C:\Documents and Settings\My Documents\AAA.docx", ReadOnly:=True)

For i = 1 To 1
WordDoc.Bookmarks("AAA" & i).Range.Text = Cells(i, 1)
Next i
'Ajuste le tableau copié à la largeur de la page
MonDocWord.Tables(1).AutoFitBehavior wdAutoFitWindow
'Désactive le mode Copier/Coller
Application.CutCopyMode = False
'Réactivation de la mise à jour de l'écran
Application.ScreenUpdating = True
End Sub
 

camarchepas

XLDnaute Barbatruc
Re : Besoin d'aide pour trasfere de Excel vers Word.

Bonjour,

En première ligne de ton module de code , je te conseille d'ajouter ceci :

Option Explicit

cela oblige à déclarer les vairiables .

car le premier problème que je constate est une variable qui porte 3 noms différents .

N'ayant pas le fichier word , je ne peux pas vérifier la bonne marche du code .
 

One Shot

XLDnaute Nouveau
Re : Besoin d'aide pour trasfere de Excel vers Word.

J'ai oublié de coller mais elle est bien présente.

Le fichier AAA word s'ouvre bien mais le probleme c'est que mes données excel ne se collent pas.

Pour info le 2e AAA de la macro est le non de mon signé.

Je n'ai aucune macro dans le fichier word.
 

david84

XLDnaute Barbatruc
Re : Besoin d'aide pour trasfere de Excel vers Word.

Bonsoir,
sans fichier, pas de test possible, cependant cette partie n'est pas claire :
Code:
For i = 1 To 1
WordDoc.Bookmarks("AAA" & i).Range.Text = Cells(i, 1)
Next i
Pourquoi une boucle sur de 1 sur 1 ?
Pourquoi WordDoc alors que tu as défini puis instancié docWord ?
Même Bookmarks("AAA" & i) ne me paraît pas cohérent...
A+
 

One Shot

XLDnaute Nouveau
Re : Besoin d'aide pour trasfere de Excel vers Word.

Bonjour,

Merci de votre réponse, je pense que vous aurez comprit que je ne suis pas tres calé en VBA.

Mais je charche d'abord par moi meme sur différent serveur avant de vous embété.

Je vais vous mettre en copie les 2 fichiers.

Par avance merci pour votre aide.
 

Pièces jointes

  • fichier de suivi de travaux.xlsm
    55.4 KB · Affichages: 55
  • AAA.docx
    10.6 KB · Affichages: 42
  • fichier de suivi de travaux.xlsm
    55.4 KB · Affichages: 59
  • fichier de suivi de travaux.xlsm
    55.4 KB · Affichages: 62

david84

XLDnaute Barbatruc
Re : Besoin d'aide pour trasfere de Excel vers Word.

Bonjour à toi aussi,
2 pistes pouvant te permettre de débloquer la situation par toi-même :
- utiliser l'enregistreur de macro : tu lances l'enregistreur et tu effectues toutes les étapes de la procédure (copier la cellule choisie dans Excel et la coller dans ton document Word), puis tu fermes l'enregistreur de macro. Tu récupéreras ainsi la structure du code que tu pourras ensuite retravailler pour la rendre opérationnelle ;

- faire des recherches sur le Web. Tu peux notamment regarder les pages Wiki de MichelXLD, et notamment ce lien issu de ce site où tu trouveras cette macro qu'il te faudra bien entendu adapter à ton besoin :
Code:
Sub exportDonneesDansSignetsWord()
'nécéssite d'activer la référence Microsoft Word xx.x Object Library
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Dim i As Byte

Set WordApp = CreateObject("word.application") 'ouvre session word
Set WordDoc = WordApp.Documents.Open("C:\Documents and Settings\michel\monFichier.doc") 'ouvre document Word
WordApp.Visible = False 'word masqué pendant l'operation
For i = 1 To 3
'les signets du document Word sont nommés Signet1 , Signet2 , Signet3
WordDoc.Bookmarks("Signet" & i).Range.Text = Cells(i, 1)
Next i

WordApp.Visible = True 'affiche le document Word
'WordDoc.PrintOut 'imprimer

'WordDoc.Close True 'ferme le document word en sauvegardant les données
'WordApp.Quit 'ferme la session Word
End Sub
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 293
Membres
103 171
dernier inscrit
clemm