Ouvrir et modifier un word depuis vb.net [Résolu]

mintraf 5 Messages postés jeudi 6 novembre 2008Date d'inscription 12 janvier 2009 Dernière intervention - 27 nov. 2008 à 11:16 - Dernière réponse :  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?

Je suis ouvert à toutes idées!

Merci pour votre aide

Mintraf
Afficher la suite 

7 réponses

Répondre au sujet
cs_fauve 661 Messages postés vendredi 2 décembre 2005Date d'inscription 23 mars 2011 Dernière intervention - 27 nov. 2008 à 21:26
+3
Utile
1
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

<!-- Coloration syntaxique vb/vba/vb.net : http://charles.racaud.free.fr/code-syntaxing/ -->Coloration syntaxique vb/vba/vb.net


++

Fauve
Pensez : Réponse Acceptée 
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_fauve
alosamoelle 129 Messages postés jeudi 28 octobre 2004Date d'inscription 23 mai 2009 Dernière intervention - 27 nov. 2008 à 14:02
0
Utile
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

Bien sur sur word, en vbnet cela est différent.
Commenter la réponse de alosamoelle
mintraf 5 Messages postés jeudi 6 novembre 2008Date d'inscription 12 janvier 2009 Dernière intervention - 27 nov. 2008 à 18:07
0
Utile
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

Merci pour votre aide!

Mintraf
Commenter la réponse de mintraf
mintraf 5 Messages postés jeudi 6 novembre 2008Date d'inscription 12 janvier 2009 Dernière intervention - 27 nov. 2008 à 22:52
0
Utile
Ca marche, c'est top!
Merci beaucoup, c'est beaucoup plus simple que mes solutions de chargement de Word 9.0, de macros et tout le bazar!

Mintraf
Commenter la réponse de mintraf
parmk 15 Messages postés lundi 13 octobre 2008Date d'inscription 30 septembre 2009 Dernière intervention - 5 mars 2009 à 10:45
0
Utile
merci beaucoup je vais essayer et vous ferai la suite
Commenter la réponse de parmk
parmk 15 Messages postés lundi 13 octobre 2008Date d'inscription 30 septembre 2009 Dernière intervention - 7 mars 2009 à 10:18
0
Utile
ca marche a merveille
merci beaucoup a tous je vais biento mettre en ligne ce a quoi ce code m'a servi
a bientot
Commenter la réponse de parmk

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.