Wie verwende ich wrap text überall über vba?
In VBA gibt es eine Eigenschaft namens „WrapText“, auf die Sie zugreifen können, um Umbruchtext auf eine Zelle oder einen Zellbereich anzuwenden. Sie müssen Code schreiben, um es zu aktivieren oder zu deaktivieren. Da es sich um eine Lese- und Schreibeigenschaft handelt, können Sie sie anwenden oder auch abrufen, wenn sie auf eine Zelle angewendet wird.
In diesem Tutorial sehen wir uns verschiedene Möglichkeiten zum Anwenden von Umbruchtext mithilfe von VBA-Code an.
Text in einer Zelle mit VBA umbrechen
Führen Sie die folgenden Schritte aus, um Zeilenumbruch mithilfe von VBA-Code anzuwenden.
- Definieren Sie die Zelle, in der Sie den Umbruchtext anwenden möchten, mithilfe der Range-Eigenschaft .
- Geben Sie einen Punkt ein, um die Liste der Eigenschaften und Methoden für diese Zelle anzuzeigen.
- Wählen Sie die Eigenschaft „WrapText“ aus der Liste aus.
- Geben Sie das Gleichheitszeichen „=“ ein und geben Sie TRUE ein, um den Zeilenumbruch zu aktivieren.
Sub vba_wrap_text() Range("A1").WrapText = True End Sub
Sie können eine Zelle auch auf folgende Weise angeben.
Cells(1, 1).WrapText = True
Text in einer Zellreihe umbrechen
Und wenn Sie Umbruchtext auf einen gesamten Bereich anwenden möchten, müssen Sie den Bereich anstelle einer einzelnen Zelle angeben.
Range("A1:A5").WrapText = True
Sie können es auch auf den verwendeten Bereich (Auswahl des Arbeitsblatts, in dem Sie Daten eingegeben haben) anwenden, indem Sie die Eigenschaft „UsedRange“ verwenden.
Worksheets("Sheet1").UsedRange.WrapText = True ActiveSheet.UsedRange.WrapText = True
In der ersten Zeile des obigen Codes haben Sie das Arbeitsblatt und dann die „UsedProperty“ zum Umbrechen des Texts angegeben . In der zweiten Zeile sehen Sie den verwendeten Bereich des aktiven Blattes . Aber beide Leitungen funktionieren gleich.
Hier sind ein paar weitere Beispiele, die Sie kennen sollten:
- Nicht kontinuierliche Zellen
- Ganze Zeile
- Ganze Kolumne
- Benannter Bereich
Range("A1:A10,C1:C10").WrapText = True Range("A:A").WrapText = True Range("1:1").WrapText = True Range("myRange").WrapText = True
Fließen Sie den Text im gesamten Arbeitsblatt um
Um auf das gesamte Arbeitsblatt zu verweisen, müssen Sie die Cells-Eigenschaft wie im folgenden Code verwenden.
Cells.WrapText = True Worksheets("Sheet1").Cells.WrapText = True
Die erste Codezeile bezieht sich auf das aktive Blatt und die zweite Zeile bezieht sich auf das Arbeitsblatt „Sheet1“. Sie können auch eine Schleife mit FOR EACH (For Next) verwenden, um alle Arbeitsblätter in der Arbeitsmappe zu durchlaufen und Umbruchtext auf alle Zellen anzuwenden.
Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets Cells.WrapText = True Next ws
Im obigen Code haben Sie „ws“ als Variable , dann durchläuft die For Each-Schleife alle Arbeitsblätter in der Arbeitsmappe und wendet an, um den Text des gesamten Arbeitsblatts mithilfe von Zellen zu umbrechen.
WrapText deaktivieren
Wie Sie gesehen haben, müssen Sie die WrapText-Eigenschaft aktivieren und können sie auf ähnliche Weise deaktivieren, indem Sie add als FALSE deklarieren.
Range("A1").WrapText = False
Hinweis: Es gibt eine Sache, die Sie verstehen müssen: Wenn Sie einen Wert in einer Zelle haben und die Zellenbreite ausreicht, um diesen Wert zu speichern , verschiebt Excel den Inhalt nicht in die nächste Zeile, selbst wenn Sie Text auf die Zeile anwenden.