Entfernen aller Textfelder in einem Dokument (Microsoft Word)
Wenn Sie viel mit Dokumenten anderer Personen arbeiten, müssen Sie möglicherweise Textfelder in diesen Dokumenten entfernen. Wenn das Dokument nur ein oder zwei Textfelder enthält, ist es nicht so schwierig, sie auszuwählen und zu löschen. Was ist, wenn 30, 40 oder mehr Textfelder vorhanden sind?
Das individuelle Löschen kann schnell mühsam werden.
Eine mögliche Lösung ist eine „Brute Force“ -Methode. Befolgen Sie diese Schritte:
-
Drücken Sie in Ihrem Dokument Strg + A. Das gesamte Dokument wird ausgewählt.
-
Drücken Sie Strg + C. Das Dokument befindet sich jetzt in der Zwischenablage.
-
Öffnen Sie ein neues, leeres Dokument.
-
Stellen Sie sicher, dass die Registerkarte Home des Menübands angezeigt wird.
-
Klicken Sie auf den Abwärtspfeil unter dem Einfügewerkzeug (links im Menüband) und wählen Sie Spezial einfügen. Word zeigt das Dialogfeld Inhalte einfügen an. (Siehe Abbildung 1.)
-
Wählen Sie in der Liste der Formate die Option Unformatierter Text.
-
Klicken Sie auf OK.
Der Dokumenttext abzüglich der Textfelder befindet sich jetzt im neuen Dokument. Der offensichtliche Nachteil dieses Ansatzes besteht darin, dass auch die andere Formatierung des Originaldokuments verloren geht und Sie das gesamte Dokument neu formatieren müssen. (Ich habe dir gesagt, dass dies eine Brute-Force-Methode ist.)
Wenn Sie nur die Textfelder entfernen möchten, ist die schnellste Lösung die Verwendung eines Makros. Das folgende Makro entfernt schnell alle Textfelder in Ihrem Dokument:
Sub RemoveTextBox1() Dim shp As Shape For Each shp In ActiveDocument.Shapes If shp.Type = msoTextBox Then shp.Delete Next shp End Sub
Sie sollten sich darüber im Klaren sein, dass dieses Makro alle Textfelder und deren Inhalt entfernt. Mit anderen Worten, wenn ein Textfeld zum Platzieren von Text verwendet wird, wird der Text in diesem Textfeld zusammen mit dem Textfeld selbst gelöscht.
Wenn Sie den Text vor dem Löschen des Textfelds lieber aus den Textfeldern in das Dokument übertragen möchten, funktioniert eine geringfügige Änderung des obigen Makros:
Sub RemoveTextBox2() Dim shp As Shape Dim oRngAnchor As Range Dim sString As String For Each shp In ActiveDocument.Shapes If shp.Type = msoTextBox Then ' copy text to string, without last paragraph mark sString = Left(shp.TextFrame.TextRange.Text, _ shp.TextFrame.TextRange.Characters.Count - 1) If Len(sString) > 0 Then ' set the range to insert the text Set oRngAnchor = shp.Anchor.Paragraphs(1).Range ' insert the textbox text before the range object oRngAnchor.InsertBefore _ "Textbox start << " & sString & " >> Textbox end" End If shp.delete End If Next shp End Sub
Wenn dieses Makro fertig ist, können Sie nach „Textbox start“ suchen und befinden sich am Anfang des Textes, der sich früher in den Textfeldern befand, die jetzt aus Ihrem Dokument entfernt sind. Sie können den Text dann so bearbeiten, dass er wie gewünscht angezeigt wird. Verstehen Sie auch, dass alles „Besondere“ im Text – wie z. B. Tabellen – vom Makro in normalen Text konvertiert wird. Dies bedeutet, dass das Makro zu einer angemessenen Menge an Arbeit führen kann, die beim Formatieren des übertragenen Textes ausgeführt werden muss.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.
(Microsoft Word ist die beliebteste Textverarbeitungssoftware der Welt.) Dieser Tipp (9169) gilt für Microsoft Word 2007, 2010 und 2013.
Eine Version dieses Tipps für die ältere Menüoberfläche von Word finden Sie hier: