Collapse column

Autor Thema: VBA: Markierten Text kopieren  (Gelesen 680 mal)

Offline Oelle74

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2016
VBA: Markierten Text kopieren
« am: Juni 12, 2019, 08:50:12 Vormittag »
Hallo,
ich würde gerne mit einem VBA Makro den gesamtem markierten Text in einem Word-Dokument kopieren und in ein anderes Word-Dokument schreiben.
Dabei sollen sämtliche Formatierungen (fett, kursiv, Überschriften, Aufzählungen, etc.) erhalten bleiben. Auch sollen Tabellen, deren Text markiert ist, als Tabelle kopiert werden.
Hat jemand eine Idee?
Danke!

siehe auch: http://www.vba-forum.de/Forum/View.aspx?ziel=51653-Word_VBA:_Markierten_Text_kopieren
« Letzte Änderung: Juni 12, 2019, 08:52:49 Vormittag von Oelle74 »

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline Oelle74

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2016
Antw: VBA: Markierten Text kopieren
« Antwort #1 am: Juni 12, 2019, 11:29:23 Vormittag »
Ich habe folgenden Code, doch leider wird weder die Formatierung noch Tabellen mitkopiert:

Sub CopyHighlightedTextColor()

    Dim rng As Range
    Dim AText
    Dim NameA
    Dim NameB

    NameA = ActiveDocument.Name
    Documents.Add
    NameB = ActiveDocument.Name
    Documents(NameA).Activate
   
    ActiveDocument.Range(0, 0).Select

    Set rng = Selection.Range

    With rng.Find

        .ClearFormatting
        .Highlight = True

        While .Execute(Forward:=True, Format:=True)
            'Note: 'rng' is now the range containing the matched content
            AText = rng.Text '= "" 'rng.FormattedText.HighlightColorIndex
            Documents(NameB).Activate
            Selection.TypeText Text:=AText
            Documents(NameA).Activate
        Wend

    End With

End Sub

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.