Obiekt zakresu Excel VBA
Co to jest zakres VBA?
Obiekt zakresu VBA reprezentuje komรณrkฤ lub wiele komรณrek w arkuszu programu Excel. Jest to najwaลผniejszy obiekt Excel VBA. Korzystajฤ c z obiektu zakresu Excel VBA, moลผesz odwoลywaฤ siฤ do:
- Pojedyncza komรณrka
- Wiersz lub kolumna komรณrek
- Wybรณr komรณrek
- Seria 3D
Jak omรณwiliลmy w naszym poprzednim samouczku, ten jฤzyk VBA sลuลผy do rejestrowania i uruchamiania makr. Ale w jaki sposรณb VBA identyfikuje, jakie dane z arkusza naleลผy wykonaฤ. W tym miejscu przydatne sฤ obiekty zakresu VBA.
Wprowadzenie do odwoลywania siฤ do obiektรณw w VBA
Odwoลywanie siฤ do obiektu zakresu VBA programu Excel i kwalifikatora obiektu.
- Kwalifikator obiektu: Sลuลผy do odwoลywania siฤ do obiektu. Okreลla skoroszyt lub arkusz, do ktรณrego siฤ odwoลujesz.
Aby manipulowaฤ wartoลciami komรณrek, Wลaลciwoลci oraz Metody sฤ uลผywane.
- Nieruchomoลฤ: Wลaลciwoลฤ przechowuje informacje o obiekcie.
- Metoda: Metoda to akcja obiektu, ktรณrฤ wykona. Obiekt Range moลผe wykonywaฤ akcje, takie jak zaznaczanie, kopiowanie, czyszczenie, sortowanie itp.
VBA stosuje wzorzec hierarchii obiektรณw, aby odwoลywaฤ siฤ do obiektรณw w programie Excel. Musisz postฤpowaฤ zgodnie z nastฤpujฤ cฤ strukturฤ . Pamiฤtaj, ลผe kropka powyลผej ลฤ czy obiekt na kaลผdym z rรณลผnych poziomรณw.
Aplikacja. Skoroszyty. Arkusze ฤwiczeล. Zakres
Istniejฤ dwa gลรณwne typy obiektรณw domyลlnych.
Jak odwoลywaฤ siฤ do obiektu zakresu Excel VBA za pomocฤ wลaลciwoลci Range
Wลaลciwoลฤ Range moลผna zastosowaฤ w dwรณch rรณลผnych typach obiektรณw.
- Obiekty arkusza
- Obiekty zasiฤgu
Skลadnia wลaลciwoลci zakresu
- Sลowo kluczowe โZakresโ.
- Nawiasy nastฤpujฤ ce po sลowie kluczowym
- Odpowiedni zakres komรณrek
- Cytat (" ")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Kiedy odwoลujesz siฤ do obiektu Range, jak pokazano powyลผej, nazywa siฤ go w peลni kwalifikowane referencje. Powiedziaลeล Excelowi dokลadnie, jakiego zakresu chcesz, w jakim arkuszu i w jakim arkuszu.
Przykลad: WiadomoลฤBox Arkusz(โarkusz1โ).Zakres(โA1โ).Wartoลฤ
Korzystajฤ c z wลaลciwoลci Range, moลผesz wykonywaฤ wiele zadaล, takich jak:
- Zapoznaj siฤ z wลaลciwoลciฤ Pojedyncza komรณrka uลผywajฤ ca zakresu
- Odwoลaj siฤ do pojedynczej komรณrki, korzystajฤ c z wลaลciwoลci Worksheet.Range
- Odwoลaj siฤ do caลego wiersza lub kolumny
- Odwoลaj siฤ do poลฤ czonych komรณrek, korzystajฤ c z wลaลciwoลci Worksheet.Range i wielu innych
W zwiฤ zku z tym omรณwienie wszystkich scenariuszy dotyczฤ cych wลaลciwoลci zakresu bฤdzie zbyt dลugie. Dla scenariuszy wymienionych powyลผej zademonstrujemy przykลad tylko dla jednego. Zapoznaj siฤ z wลaลciwoลciฤ Pojedyncza komรณrka uลผywajฤ ca zakresu.
Odwoลaj siฤ do pojedynczej komรณrki, korzystajฤ c z wลaลciwoลci Worksheet.Range
Aby odwoลaฤ siฤ do pojedynczej komรณrki, musisz odwoลaฤ siฤ do pojedynczej komรณrki.
Skลadnia jest prosta โZakres (โKomรณrkaโ)โ.
Tutaj uลผyjemy polecenia โ.Selectโ, aby wybraฤ pojedynczฤ komรณrkฤ z arkusza.
Krok 1) W tym kroku otwรณrz swรณj Excel.
Krok 2) W tym etapie,
- Kliknij na
przycisk.
- Otworzy okno.
- Wpisz tutaj nazwฤ swojego programu i kliknij przycisk โOKโ.
- Przeniesie Ciฤ do gลรณwnego pliku Excel, w gรณrnym menu kliknij przycisk โzatrzymajโ nagrywanie, aby zatrzymaฤ nagrywanie makra.
Krok 3) W nastฤpnym kroku
- Kliknij przycisk Makro
z gรณrnego menu. Otworzy siฤ okno poniลผej.
- W tym oknie kliknij przycisk โedytujโ.
Krok 4) Powyลผszy krok otworzy edytor kodu VBA dla nazwy pliku โSingle Cell Rangeโ. Wprowadลบ kod jak pokazano poniลผej, aby wybraฤ zakres โA1โ z Excela.
Krok 5) Teraz zapisz plik i uruchom program jak pokazano poniลผej.
Krok 6) Po wykonaniu programu zobaczysz, ลผe komรณrka โA1โ zostaลa wybrana.
Podobnie moลผesz wybraฤ komรณrkฤ o okreลlonej nazwie. Na przykลad, jeลli chcesz wyszukaฤ komรณrkฤ o nazwie โGuru99- Samouczek VBAโ. Musisz uruchomiฤ polecenie, jak pokazano poniลผej. Zaznaczy ono komรณrkฤ o tej nazwie.
Zakres("Guru99- Samouczek VBAโ).Wybierz
Aby zastosowaฤ inny obiekt zakresu, tutaj znajduje siฤ przykลadowy kod.
| Zakres zaznaczania komรณrki w programie Excel | Zadeklarowany zakres |
|---|---|
| Dla pojedynczego wiersza | Zakres (โ1:1โ) |
| Dla pojedynczej kolumny | Zakres (โA: Aโ) |
| Dla sฤ siadujฤ cych komรณrek | Zakres(โA1:C5โ) |
| Dla komรณrek nie sฤ siadujฤ cych | Zakres(โA1:C5, F1:F5โ) |
| Dla przeciฤcia dwรณch zakresรณw | Zakres(โA1:C5 F1:F5โ)
(Pamiฤtaj, ลผe w przypadku komรณrki przeciฤcia nie ma operatora przecinka) |
| Aby poลฤ czyฤ komรณrkฤ | Zakres(โA1:C5โ)
(Aby poลฤ czyฤ komรณrki, uลผyj polecenia โscalโ) |
Wลaลciwoลฤ komรณrki
Podobnie jak zakres, w VBA moลผesz takลผe โWลaลciwoลฤ komรณrkiโ. Jedyna rรณลผnica polega na tym, ลผe ma wลaลciwoลฤ โelementโ, ktรณrej uลผywasz do odwoลywania siฤ do komรณrek w arkuszu kalkulacyjnym. Wลaลciwoลฤ komรณrki jest przydatna w pฤtli programistycznej.
Na przykลad,
Cells.item(wiersz, kolumna). Obie linie poniลผej odnoszฤ siฤ do komรณrki A1.
- Komรณrki.item(1,1) LUB
- Komรณrki.item(1,โAโ)
Wลaลciwoลฤ przesuniฤcia zakresu
Wลaลciwoลฤ przesuniฤcia zakresu wybierze wiersze/kolumny z dala od ich pierwotnej pozycji. Na podstawie zadeklarowanego zakresu wybierane sฤ komรณrki. Zobacz przykลad poniลผej.
Na przykลad,
Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select
Wynikiem tego bฤdzie komรณrka B2. Wลaลciwoลฤ offset przesunie komรณrkฤ A1 do 1 kolumny i 1 wiersza dalej. Moลผesz zmieniฤ wartoลฤ przesuniฤcia wierszy/kolumny zgodnie z wymaganiami. Moลผesz uลผyฤ wartoลci ujemnej (-1), aby przesunฤ ฤ komรณrki do tyลu.
Pobierz Excel zawierajฤ cy powyลผszy kod
Pobierz powyลผszy plik Excel Code
Podsumowanie
- Obiekt zakresu VBA reprezentuje komรณrkฤ lub wiele komรณrek w arkuszu programu Excel
- Pojedyncza komรณrka
- Wiersz lub kolumna komรณrek
- Wybรณr komรณrek
- Seria 3D
- Aby manipulowaฤ wartoลciami komรณrek, Wลaลciwoลci oraz Metody sฤ uลผywane
- Wลaลciwoลฤ przechowuje informacje o obiekcie
- Metoda to akcja obiektu, ktรณrฤ bฤdzie wykonywaฤ, taka jak wybieranie, scalanie, sortowanie itp.
- Wzorzec hierarchii obiektรณw jฤzyka VBA umoลผliwia odwoลanie siฤ do obiektu w programie Excel za pomocฤ operatora .dot
- Wลaลciwoลฤ Range moลผna zastosowaฤ w dwรณch rรณลผnych typach obiektรณw
- Obiekty arkusza
- Obiekty zasiฤgu






