manipulation de Word avec VB.Net
Bonjour à tous,
Je procède actuellement à un dérouillage en règle de mes vieilles neurones usées ... exercice particulièrement éprouvant et me remplissant d'humilité...
Je tente vainement de réaliser une petite application consistant à renseigner un formulaire contenant deux "Textbox", appelant à y intégrer le Nom et le Prénom d'une personne. Ceci fait, on valide ces données avec un Bouton "Valider".
Cette validation va ouvrir un document Word, avec un chemin spécifique, où se trouvent dans le corps du document les deux signets à renseigner, comme ceci :
Document Word (à l'adresse : C:\Users\greg\Desktop\DocumentProjetSimplifie.docx):
Projet simplifié de remplissage de signets
Nom : (emplacement du signetNom)
Prénom : (emplacement du signetPrenom)
J'ai donc créé mon formulaire "Form1", contenant 1 label 'Nom' et une Textbox + 1 label 'Prenom' et une autre Textbox et un bouton 'Valider'
J'ai ensuite écrit le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| Option Strict On
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Word
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
Dim ValeurNom As String
ValeurNom = Me.TextBox1.Text
End Sub
Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged
Dim ValeurPrenom As String
ValeurPrenom = Me.TextBox2.Text
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim oWord As New Word.Application
oWord.Documents.Open(C:\Users\greg\Desktop\DocumentProjetSimplifie.docx)
'Ouvrir un document
'oWord.Documents.Open("chemin document.doc")
'rendre le document word visible
oWord.Visible = True
oWord.Selection.Bookmarks(SignetNom).Range.text = ValeurNom
oWord.Selection.Bookmarks(SignetPrenom).Range.text = ValeurPrenom
oWord.ActiveDocument.Close() 'on ferme le document
oWord.Visible = False
oWord.Quit() 'on ferme Word
End Sub
End Class |
Bref, à l'issue de l'écriture de ce code, qui me semblait pourtant suffisant pour ce que je cherchais à réaliser, VB.net me renvoie les mêmes erreurs suivante (La variable n'est pas déclarée. Il peut être inaccessible en raison de son niveau de protection) : pour 'SignetNom', 'ValeurNom', 'SignetPrenom' et 'ValeurPrenom' aux lignes oWord.Selection.Bookmarks...
Quelqu'un pourrait-il m'aider à résoudre ce petit problème ?
Grég