Vba: jak wybrać wszystkie komórki zawierające dane
Aby zaznaczyć wszystkie komórki zawierające dane w arkuszu, możesz użyć następujących metod w VBA:
Metoda 1: Wybierz siatkę komórek z danymi
SubSelectCellsWithData ()
Range(" A1 ").CurrentRegion.Select
End Sub
To konkretne makro wybierze siatkę komórek z danymi zaczynając od komórki A1 aktualnie aktywnego arkusza.
Metoda 2: Wybierz pojedyncze komórki z danymi
SubSelectCellsWithData ()
Worksheets(" Sheet1 ").Activate
ActiveSheet.Cells.SpecialCells(xlCellTypeConstants).Activate
End Sub
To konkretne makro zaznaczy wszystkie pojedyncze komórki zawierające dane z Arkusza1 .
Poniższe przykłady pokazują, jak w praktyce zastosować każdą metodę z następującym arkuszem o nazwie Arkusz1 w programie Excel:
Przykład 1: Wybierz siatkę komórek z danymi
Załóżmy, że chcemy wybrać siatkę komórek zawierającą dane w Arkuszu1 .
W tym celu możemy utworzyć następujące makro:
SubSelectCellsWithData ()
Range(" A1 ").CurrentRegion.Select
End Sub
Po uruchomieniu tego makra możemy zobaczyć, że została wybrana cała siatka komórek zawierająca dane w Arkuszu 1 :
Należy zauważyć, że ta metoda używa właściwości CurrentRegion do wybierania zakresu komórek ujętych w puste komórki.
Pełną dokumentację właściwości CurrentRegion można znaleźć tutaj .
Przykład 2: Wybierz pojedyncze komórki z danymi
Załóżmy, że chcemy wybrać tylko wszystkie pojedyncze komórki zawierające dane w Arkuszu 1 .
W tym celu możemy utworzyć następujące makro:
SubSelectCellsWithData ()
Worksheets(" Sheet1 ").Activate
ActiveSheet.Cells.SpecialCells(xlCellTypeConstants).Activate
End Sub
Kiedy uruchomimy to makro, możemy zobaczyć, że każda z pojedynczych komórek w Arkuszu 1 zawierająca dane jest zaznaczona:
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
VBA: Jak ustawić wartość komórki w innym arkuszu
VBA: Jak wybrać zakres w aktywnej komórce
VBA: Jak usuwać wiersze na podstawie wartości komórki