OVH Cloud OVH Cloud

recherche dans word depuis Access

2 réponses
Avatar
Altano
Bonjour,
Je voudrais pouvoir effectuer une recherche dans un document Word, le mot à
rechercher se trouvant dans un enregistrement Access.
J'arrive à piloter Word depuis Access jusqu'à un certain point : Word
s'ouvre bien, ouvre le bon fichier parmi une série de fichiers mais une fois
qu'il s'agit de chercher le mot dans le fichier, ça cale.
Comment ai-je procédé : j'ai enregistré une macro dans Word avec la fonction
Find et j'ai copié le code dans Access :
Selection.Find.ClearFormatting
With Selection.Find
.Text = "Sdgfsdg"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute

Une fois lancé, Access me dit que cette méthode n'existe pas ! Eh bien pour
une méthode qui n'existe pas, je peux vous dire qu'elle fonctionne vachement
bien dans Word (seul)...

Quelqu'un aurait-il une autre piste ?

Merci.

2 réponses

Avatar
Raymond [mvp]
Bonjour.

il te manque les points pour affecter les fonctions selection à l'objet
word.

Dim W_App As New Word.Application
With W_App
.Visible = True
.Documents.Open ("c:doc1.doc")
.Selection.Find.ClearFormatting
With .Selection.Find
.Text = "texteà chercher"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchKashida = False
.MatchDiacritics = False
.MatchAlefHamza = False
.MatchControl = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
.Selection.Find.Execute
' .ActiveDocument.Close
' .Quit
End With
Set W_App = Nothing


--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Altano" a écrit dans le message de news:

Bonjour,
Je voudrais pouvoir effectuer une recherche dans un document Word, le mot
à
rechercher se trouvant dans un enregistrement Access.
J'arrive à piloter Word depuis Access jusqu'à un certain point : Word
s'ouvre bien, ouvre le bon fichier parmi une série de fichiers mais une
fois
qu'il s'agit de chercher le mot dans le fichier, ça cale.
Comment ai-je procédé : j'ai enregistré une macro dans Word avec la
fonction
Find et j'ai copié le code dans Access :
Selection.Find.ClearFormatting
With Selection.Find
.Text = "Sdgfsdg"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute

Une fois lancé, Access me dit que cette méthode n'existe pas ! Eh bien
pour
une méthode qui n'existe pas, je peux vous dire qu'elle fonctionne
vachement
bien dans Word (seul)...

Quelqu'un aurait-il une autre piste ?

Merci.


Avatar
Altano
Merci !
pas oublier également de définir la variable wdFindContinue :-)
Ca fonctionne parfaitement.


Bonjour.

il te manque les points pour affecter les fonctions selection à l'objet
word.

Dim W_App As New Word.Application
With W_App
.Visible = True
.Documents.Open ("c:doc1.doc")
.Selection.Find.ClearFormatting
With .Selection.Find
.Text = "texteà chercher"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchKashida = False
.MatchDiacritics = False
.MatchAlefHamza = False
.MatchControl = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
.Selection.Find.Execute
' .ActiveDocument.Close
' .Quit
End With
Set W_App = Nothing


--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Altano" a écrit dans le message de news:

Bonjour,
Je voudrais pouvoir effectuer une recherche dans un document Word, le mot
à
rechercher se trouvant dans un enregistrement Access.
J'arrive à piloter Word depuis Access jusqu'à un certain point : Word
s'ouvre bien, ouvre le bon fichier parmi une série de fichiers mais une
fois
qu'il s'agit de chercher le mot dans le fichier, ça cale.
Comment ai-je procédé : j'ai enregistré une macro dans Word avec la
fonction
Find et j'ai copié le code dans Access :
Selection.Find.ClearFormatting
With Selection.Find
.Text = "Sdgfsdg"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute

Une fois lancé, Access me dit que cette méthode n'existe pas ! Eh bien
pour
une méthode qui n'existe pas, je peux vous dire qu'elle fonctionne
vachement
bien dans Word (seul)...

Quelqu'un aurait-il une autre piste ?

Merci.