Vba: zichtbare lijnen naar een ander blad kopiëren
U kunt de volgende syntaxis in VBA gebruiken om alleen zichtbare rijen van het ene blad naar het andere te kopiëren:
SubCopyVisibleRows ()
Dim sourceWS As Worksheet
Dim destinationWS As Worksheet
Set sourceWS = ThisWorkbook.Sheets(" Sheet1 ")
Set destinationWS = ThisWorkbook.Sheets(" Sheet2 ")
sourceWS.Range(" A1:D999 ").SpecialCells(xlCellTypeVisible).Copy
destinationWS.Cells(1, 1).PasteSpecial
Application.CutCopyMode = False
End Sub
Deze specifieke macro kopieert elke zichtbare rij in het bereik A1:D999 van Blad1 en plakt deze, beginnend in cel A1 van Blad2 .
Opmerking : de regel Application.CutCopyMode = False geeft aan dat de knip- en kopieermodus moet worden uitgeschakeld na het uitvoeren van de macro.
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: Kopieer zichtbare rijen naar een ander blad met VBA
Stel dat we de volgende gegevensset in Blad 1 hebben die informatie bevat over verschillende basketbalspelers:
Stel nu dat we een filter op de dataset toepassen om alleen rijen weer te geven waarin de teamnaam gelijk is aan Mavs of Spurs:
Laten we nu zeggen dat we VBA willen gebruiken om alleen zichtbare cellen van Blad1 naar Blad2 te kopiëren.
We kunnen hiervoor de volgende macro maken:
SubCopyVisibleRows ()
Dim sourceWS As Worksheet
Dim destinationWS As Worksheet
Set sourceWS = ThisWorkbook.Sheets(" Sheet1 ")
Set destinationWS = ThisWorkbook.Sheets(" Sheet2 ")
sourceWS.Range(" A1:D999 ").SpecialCells(xlCellTypeVisible).Copy
destinationWS.Cells(1, 1).PasteSpecial
Application.CutCopyMode = False
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer in Sheet2 :
Merk op dat elke rij die zichtbaar is in Blad1 is gekopieerd en geplakt in Blad2 .
Opmerking #1 : We gebruikten xlCellTypeVisible in de macro om aan te geven dat we alleen zichtbare cellen wilden kopiëren.
Opmerking #2 : U kunt hier de volledige documentatie voor de VBA Copy- methode vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:
VBA: hoe u de laatst gebruikte regel kunt vinden
VBA: kopieer rijen naar een ander blad op basis van criteria
VBA: Hoe waarden alleen te plakken zonder opmaak