Hoe kan ik wrap text overal gebruiken via vba?
In VBA is er een eigenschap genaamd “WrapText” waartoe u toegang hebt om teruglooptekst toe te passen op een cel of celbereik. U moet code schrijven om deze in of uit te schakelen. Het is een lees- en schrijfeigenschap, dus u kunt deze toepassen, of u kunt deze ook verkrijgen als deze op een cel wordt toegepast.
In deze zelfstudie bekijken we verschillende manieren om teruglooptekst toe te passen met behulp van VBA-code.
Tekst in een cel plaatsen met VBA
Gebruik de volgende stappen om Tekstterugloop toe te passen met VBA-code.
- Definieer de cel waarop u de teruglooptekst wilt toepassen met behulp van de eigenschap range .
- Typ een punt om de lijst met eigenschappen en methoden voor die cel te bekijken.
- Selecteer de eigenschap “WrapText” in de lijst.
- Voer het gelijkteken “=” in en typ TRUE om woordterugloop in te schakelen.
Sub vba_wrap_text() Range("A1").WrapText = True End Sub
U kunt een cel ook op de volgende manier opgeven.
Cells(1, 1).WrapText = True
Laat tekst in een rij cellen lopen
En als u teruglooptekst op een heel bereik wilt toepassen, moet u het bereik opgeven in plaats van een enkele cel.
Range("A1:A5").WrapText = True
U kunt het ook toepassen op het gebruikte bereik (selectie van het werkblad waarop u gegevens hebt ingevoerd) met behulp van de eigenschap “UsedRange”.
Worksheets("Sheet1").UsedRange.WrapText = True ActiveSheet.UsedRange.WrapText = True
In de eerste regel van de bovenstaande code hebt u het werkblad opgegeven en vervolgens de “UsedProperty” om de tekst terug te laten lopen. Op de tweede regel ziet u het gebruikte bereik van het actieve blad . Maar beide lijnen werken hetzelfde.
Hier zijn nog een paar voorbeelden die u moet kennen:
- Niet-continue cellen
- Hele lijn
- Hele kolom
- Genoemd bereik
Range("A1:A10,C1:C10").WrapText = True Range("A:A").WrapText = True Range("1:1").WrapText = True Range("myRange").WrapText = True
Tekst door het hele werkblad laten lopen
Om naar het hele werkblad te verwijzen, moet u de eigenschap Cells gebruiken, zoals in de volgende code.
Cells.WrapText = True Worksheets("Sheet1").Cells.WrapText = True
De eerste regel code verwijst naar het actieve blad en de tweede regel verwijst naar het werkblad ‘Blad1’. U kunt ook een lus gebruiken met FOR EACH (For Next) om door alle werkbladen in de werkmap te lopen en omlooptekst op alle cellen toe te passen.
Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets Cells.WrapText = True Next ws
In de bovenstaande code heb je “ws” als variabele , waarna For Each Loop door alle werkbladen in de werkmap loopt en van toepassing is om de tekst van het hele werkblad te laten teruglopen met behulp van cellen.
Schakel WrapText uit
Zoals je hebt gezien, moet je de eigenschap WrapText inschakelen en op dezelfde manier kun je deze uitschakelen door add te gebruiken en FALSE te declareren.
Range("A1").WrapText = False
Opmerking: er is één ding dat u moet begrijpen als u een waarde in een cel heeft en de celbreedte voldoende is om die waarde op te slaan. Zelfs als u tekst op de rij toepast , zal Excel de inhoud niet naar de volgende regel verplaatsen .