Thema Datum  Von Nutzer Rating
Antwort
Rot Formatierung in Textmarken mit VBA übernehmen
02.04.2020 12:11:02 Estelle
*****
NotSolved
03.04.2020 16:41:23 Gast14621
NotSolved
06.04.2020 12:48:19 Gast31315
NotSolved
06.04.2020 22:48:44 Gast14621
NotSolved
06.04.2020 22:56:54 Gast14621
NotSolved
07.04.2020 09:56:16 Gast25041
NotSolved
07.04.2020 13:06:31 Gast95775
NotSolved
07.04.2020 15:03:38 Gast64055
NotSolved
07.04.2020 16:56:55 Gast55674
NotSolved
08.04.2020 17:12:03 Gast3733
NotSolved
09.04.2020 18:07:16 Gast45089
NotSolved
10.04.2020 19:44:14 Gast14621
NotSolved

Ansicht des Beitrags:
Von:
Estelle
Datum:
02.04.2020 12:11:02
Views:
1381
Rating: Antwort:
  Ja
Thema:
Formatierung in Textmarken mit VBA übernehmen

Hallo,

ich hoffe mir kann hier jemand helfen. Ich habe leider nur leihenhafte VBA Kenntnisse und wende mich daher mit einer glaube ich eigentlich "einfachen" Frage an das Forum.

Zum Verständnis: Ich habe eine Excel-Liste, die verschiedene Daten zu etwa 150 Einträgen umfasst. Aus diesen Einträgen, also im Prinzip aus jeder Zeile der Excel-Tabelle, soll ein Datenblatt in Word erstellt werden. Da die Excel-Tabelle immer mal wieder aktualisiert wird und dann auch die Datenblätter aktualisiert werden müssen, habe ich ein VBA-Skript verwendet, welches über Textmarken in dem Word-Dokument jeweils die Inhalte der Excel-Tabelle einfügt. Passenderweise gab es dafür ein Skript auf vba-online, welches ich entsprechend für meine Textmarken etc. angepasst habe. https://www.online-vba.de/vba_tutorialvorlage.php#wo-page-top

Das habe ich auch alles hinbekommen und es funktioniert auch soweit einwandfrei. Ich öffne das Word-Dokument, wähle aus der ListBox die entsprechende Zeile der Excel-Tabelle aus, und die Eintragungen werden in die Textmarken des Word-Dokuments übertragen. Soweit also kein Problem.

Nun würde ich gerne die Formatierung der Texte aus der Excel-Tabelle mit in das Word-Dokument übernehmen, d.h. in einer Spalte steht ein Beschreibungstext, bei dem manche Wörter fett markiert sind, dies soll genauso in die Textmarke in Word übernommen werden. Normalerweise ist das ja kein Problem - Zelle markieren und in Word Einfügen mit dem Befehl "Ursprüngliche Formatierung beibehalten". In meinem VBA-Skript bekomme ich das leider nicht hin. Ich habe schon in diversen Foren nach einer Antwort gesucht und alles mögliche ausprobiert. Ich bin soweit gekommen, dass ich wohl den Befehl "wdFormatOriginalFormatting" anwenden muss, kann es aber leider nicht so in mein Skript einbauen, dass es funktioniert. Vielleicht kann mir da jemand helfen?

Nachfolgend ein Ausschnitt des Skripts. An der Stelle, wo die Textmarke "Textmarke_Beschreibung" eingefügt wird, würde ich also gerne die ursprüngliche Formatierung des Textes aus der Excel-Tabelle beibehalten. Ist es möglich, den Befehl in diesem Skript zu ergänzen? Funktioniert das mit meinem Skript überhaupt, oder muss dafür etwas umgeschrieben werden? Ich bin für jede Hilfe dankbar! :)


Private Sub CommandButton1_Click()
   Dim oExcelApp As Object
   Dim oExcelWorkbook As Object
   Dim lZeile As Long

If ListBox1.ListIndex >= 0 Then
     
         Set oExcelApp = CreateObject("Excel.Application")
         Set oExcelWorkbook = oExcelApp.Workbooks.Open(sBeispiel)
     
         lZeile = 2 
         With oExcelWorkbook.sheets(sTabellenblatt)
             Do While .Cells(lZeile, 1) <> ""
                 If ListBox1.Text = CStr(.Cells(lZeile, 2).Value) Then
                     ActiveDocument.Bookmarks("Textmarke_Name ").Range.Text = _
                         CStr(.Cells(lZeile, 2 ).Value)
                     ActiveDocument.Bookmarks("Textmarke_ID").Range.Text = _
                         CStr(.Cells(lZeile, 1).Value)
                     ActiveDocument.Bookmarks("Textmarke_Beschreibung").Range.Text = _
                         CStr(.Cells(lZeile, 3).Value)
                     Exit Do
                 End If
                 lZeile = lZeile + 1
             Loop
         End With
        
         oExcelWorkbook.Close False
         oExcelApp.Quit
     
     Else
         MsgBox "Bitte wählen Sie einen Eintrag aus der Liste aus!", _
             vbInformation + vbOKOnly, "HINWEIS!"
         Exit Sub
     End If

Set oExcelWorkbook = Nothing
   Set oExcelApp = Nothing
   Unload Me
End Sub



Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Formatierung in Textmarken mit VBA übernehmen
02.04.2020 12:11:02 Estelle
*****
NotSolved
03.04.2020 16:41:23 Gast14621
NotSolved
06.04.2020 12:48:19 Gast31315
NotSolved
06.04.2020 22:48:44 Gast14621
NotSolved
06.04.2020 22:56:54 Gast14621
NotSolved
07.04.2020 09:56:16 Gast25041
NotSolved
07.04.2020 13:06:31 Gast95775
NotSolved
07.04.2020 15:03:38 Gast64055
NotSolved
07.04.2020 16:56:55 Gast55674
NotSolved
08.04.2020 17:12:03 Gast3733
NotSolved
09.04.2020 18:07:16 Gast45089
NotSolved
10.04.2020 19:44:14 Gast14621
NotSolved