Word Wert und Funktion eines Feldes ändern

  • Word

    Word Wert und Funktion eines Feldes ändern

    Guten Morgen,

    bin gerade dabei meine Word Dokumente neu zuordnen.
    Dabei ist mir aufgefallen, da ich vor Jahren in meinen Briefen, ein Feld für das Datum hatte.
    In diesem Feld wird nach dem Öffnen des Dokuments immer das aktuelle Datum angezeigt.
    Es ist leider kein Bookmaker.
    Selektiere ich das Feld zeigt mir der Makro: ActiveDocument.Shapes("Text Box 2").Select

    Nun möchte ich gerne mit VB Net diesem Feld das korrekte Datum (ist in einer Datenbank hinterlegt) zuweisen und gleichzeitig die Funktion
    (aktuelles Tagesdatum bei Dokumentöffnung) löschen.

    Folgenden Code habe ich bereits:

    VB.NET-Quellcode

    1. Public Sub Dokument_DatumBereinigen(ByVal Datei As String, ByVal Datum As String)
    2. If Not IO.File.Exists(Datei) Then Exit Sub
    3. Me.WordApp = New Word.Application
    4. Me.WordDokument = New Word.Document
    5. Me.WordDokument = WordApp.Documents.Open(Datei.ToString)
    6. Me.WordDokument.Activate()
    7. With Me.WordApp
    8. .DisplayAlerts = Word.WdAlertLevel.wdAlertsNone
    9. .WindowState = Word.WdWindowState.wdWindowStateMinimize
    10. .Visible = False
    11. End With
    12. Dim AufgabeErledigt As Boolean = False
    13. Dim DokumentDatum As Date = CDate(Datum)
    14. Dim DokumentTag As String = Func.WochentagName(DokumentDatum.DayOfWeek)
    15. Dim DokumentEintrag As String = DokumentTag & ", den " & DokumentDatum.ToLongDateString
    16. Try
    17. ' Neue Briefe und Faxe
    18. With WordDokument.Bookmarks
    19. .Item("Datum").Range.Text = DokumentEintrag
    20. End With
    21. AufgabeErledigt = True
    22. Catch ex As Exception
    23. End Try
    24. If Not AufgabeErledigt Then
    25. Try
    26. ' Alte Briefe und Faxe
    27. WordDokument.Shapes("Text Box 2").Select()
    28. Catch ex As Exception
    29. MsgBox(ex.Message)
    30. End Try
    31. End If
    32. WordDokument.Save()
    33. WordApp.ActiveDocument.Close()
    34. WordApp.Quit()
    35. WordDokument = Nothing
    36. ' System.Runtime.InteropServices.Marshal.ReleaseComObject(Me.WordApp)
    37. Me.WordApp = Nothing
    38. End Sub

    Gruß Markus

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Westerwälder“ ()