Hallo und guten Abend!
Ich benötige Eure Unterstützung.
Und zwar habe ich ein Code der für folgendes gedacht sei:
Mit diesem Code kann ich eine Word-Datei öffnen und Inhalte von Textmarken ändern.
Das Dokument wird dann folglich unter einem anderen Namen gespeichert.
Mein Word-Dokument beinhaltet Textmarken wie:
- Vorname
- Nachname
- Benutzername
- Passwort
Nun zu meinem Kernproblem:
Der Code funktioniert leider nur mit EINER veränderbaren Textmarke.
Mein Wunsch wäre wenn ich im selben Durchgang alle 4 Textmarken zur gleichen Zeit verändern kann. (jetzt im Codebeispiel z.B. wird nur eine einzige geändert)
Habe leider echt keinen Lösungsansatz. Zumind. hat keiner Funktioniert.
Gibt es vielleicht auch eine Option ohne den Funktionsaufruf?..
Bitte um Hilfe!
Ich benötige Eure Unterstützung.
Und zwar habe ich ein Code der für folgendes gedacht sei:
Mit diesem Code kann ich eine Word-Datei öffnen und Inhalte von Textmarken ändern.
Das Dokument wird dann folglich unter einem anderen Namen gespeichert.
Mein Word-Dokument beinhaltet Textmarken wie:
- Vorname
- Nachname
- Benutzername
- Passwort
Nun zu meinem Kernproblem:
Der Code funktioniert leider nur mit EINER veränderbaren Textmarke.
Mein Wunsch wäre wenn ich im selben Durchgang alle 4 Textmarken zur gleichen Zeit verändern kann. (jetzt im Codebeispiel z.B. wird nur eine einzige geändert)
Habe leider echt keinen Lösungsansatz. Zumind. hat keiner Funktioniert.
Gibt es vielleicht auch eine Option ohne den Funktionsaufruf?..
Bitte um Hilfe!
Quellcode
-
- Imports System.Runtime.InteropServices
- Imports Microsoft.Office.Interop.Word
- Imports Microsoft.Office.Interop
- Imports System.IO
- Public Class Form1
- Dim strFileName As String
- Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- ' Funktionsaufruf
- dok("Nachname", "Der neue Inhalt") ' dok( Name der Textmarke, Inhalt)
- End Sub
- Private Function dok(ByVal textmarke As String, ByVal textm_value As String)
- Dim word As New Microsoft.Office.Interop.Word.Application
- Dim doc As Microsoft.Office.Interop.Word.Document
- Try
- doc = word.Documents.Open("c:\\data\doku.docx")'öffnet die Datei mit den Textmarken
- doc.Activate()
- If doc.Range.Bookmarks.Exists(textmarke) Then
- doc.Bookmarks().Item(textmarke).Range.Text = textm_value
- Else
- MessageBox.Show("Textmarke nicht vorhanden!")
- End If
- doc.SaveAs("c:\\data\dokue.docx")
- doc.Close()
- MessageBox.Show("Datei erstellt")
- Catch ex As IOException
- MessageBox.Show("Datei nicht vorhanden.")
- Finally
- word.Application.Quit()
- End Try
- Return (0)
- End Function
- End Class