Excel VBA importer document Word

Résolu/Fermé
artis31 Messages postés 42 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 8 décembre 2012 - 21 mars 2012 à 20:01
artis31 Messages postés 42 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 8 décembre 2012 - 22 mars 2012 à 19:45
Bonsoir,

Je souhaite faire un copier coller de Word vers Excel. J'arrive à ouvrir le fichier, copier/coller les infos, mais je n'arrive pas à refermer le fichier Word... dans le répertoire j'ai un fichier "~$xxxxx.doc" et si j'essaye d'ouvrir le fichier word "normalement" j'ai un message me disant que ce fichier est en cours d'utilisation....

Voici le code que j'utilise :
[code]
Sub Import_Gazette()

Dim Wrd As Object

'Récupère le nom et chemin du fichier à ouvrir
On Error Resume Next
NomFich = Application.GetOpenFilename("Gazette, *.doc")
If Err <> 0 Or NomFich = False Then
End
End If

Feuil3.Range("A1") = NomFich

Set Wrd = CreateObject("word.Application")
Wrd.documents.Open (NomFich)
Wrd.Selection.WholeStory
Wrd.Selection.Copy

ThisWorkbook.Activate
Feuil3.Activate
Feuil3.Range("A2").Select
ActiveSheet.Paste

Wrd.documents.Close (NomFich)
Wrd.Close
Set Wrd = Nothing

End Sub

/code

Aucune des trois instructions de fin ne ferme correctement le fichier ouvert... comment faire ?

A voir également:

1 réponse

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
22 mars 2012 à 09:30
Bonjour,

Sub Import_Gazette()

Dim Wrd As Object

'Récupère le nom et chemin du fichier à ouvrir
On Error Resume Next
NomFich = Application.GetOpenFilename("Gazette, *.doc")
If Err <> 0 Or NomFich = False Then
End
End If

Feuil3.Range("A1") = NomFich

Set Wrd = CreateObject("word.Application")
Wrd.documents.Open (NomFich)
Wrd.Selection.WholeStory
Wrd.Selection.Copy

ThisWorkbook.Activate
Feuil3.Activate
Feuil3.Range("A2").Select
ActiveSheet.Paste

' Ferme Word en appliquant la méthode Quit sur l'objet Application.
Wrd.Application.Quit
Set Wrd = Nothing
End Sub

Bonne suite
0
artis31 Messages postés 42 Date d'inscription vendredi 9 mai 2008 Statut Membre Dernière intervention 8 décembre 2012 1
22 mars 2012 à 19:45
Merci beaucoup f894009 :o)

Maintenant que j'ai la solution sous les yeux, ça parait tellement évident !!
0