mintraf
Messages postés5Date d'inscriptionjeudi 6 novembre 2008StatutMembreDernière intervention12 janvier 2009
-
27 nov. 2008 à 11:16
king -
15 mai 2017 à 13:29
Bonjour à tous,
Voici mon problème insolvable:
Je réalise un programme où l'utilisateur va saisir des informations sur un formulaire. A partir de là, je souhaite ouvrir un fichier word type, et que certaines phrases soient remplacées par celles saisies par l'utilisateur.
A partir de là, j'ai réalisé la macro correspondante sous Word, mais je ne sais pas comment faire passer les infos saisies sur des TextBox dans la macro de Word.
Ou alors, tout réaliser par VB.NET, mais je n'ai pas trouvé de pistes valables.
Savez vous sinon comment ouvrir un document word, faire une recherche sur celui-ci, du type rechercher-remplacer, où le texte de remplacement proviendrait du textebox?
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 27 nov. 2008 à 21:26
Salut mintraf,
Voici comment piloter Word en VB.NET :
Dim oW As Object
' Déclaration de la variable oW
oW = CreateObject("Word.Application")
' Initialisation de la variable
oW.Visible = True
' Accepter que Word apparaisse
oW.Documents.Open("D:\test.doc", ReadOnly:=False)
' Ouverture du fichier test.doc
oW.Application.ActiveDocument.Content.Find.Execute(FindText:="Aaa", ReplaceWith:="VB.NET")
'Remplacement de l'expression Aaa par VB.NET
' Bonus :P
oW.ActiveDocument.Save() ' Sauvegarde du document
oW.ActiveDocument.Printout() ' Lancement de l'impression
oW.Quit() ' Ferme Word
oW = Nothing ' Ferme Word
alosamoelle
Messages postés129Date d'inscriptionjeudi 28 octobre 2004StatutMembreDernière intervention23 mai 20091 27 nov. 2008 à 14:02
Bonjour, une fois les infos enregistrées tu ouvres ton word type puis tu fais
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "Textearemplace"
.Replacement.Text = TextBox1.Text 'nouveau texte
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
mintraf
Messages postés5Date d'inscriptionjeudi 6 novembre 2008StatutMembreDernière intervention12 janvier 2009 27 nov. 2008 à 18:07
Bonsoir,
C'est bien sûr ce que j'ai fait pour ma macro word.
Mais je ne sais pas comment faire en sorte que le TextBox1.Text qu'il récupère soit celui de VB.net
15 mai 2017 à 13:29