Zakres VBA

Obiekt zakresu Excel VBA

Zakres to właściwość w VBA jest podobna do właściwości arkusza roboczego, właściwość zakresu ma również wiele zastosowań i zastosowań, kiedy piszemy nasz kod i określamy określony zakres komórek lub konkretną komórkę, odbywa się to metodą właściwości range, służy podać odniesienia do komórek, wierszy i kolumn.

Jak wiesz, język VBA jest używany do rejestrowania i uruchamiania makr oraz automatyzacji zadań programu Excel oraz wykonywania powtarzalnych zadań szybciej i dokładniej.

W kontekście arkusza programu Excel obiekt zakresu VBA oznacza komórki, pojedyncze lub wielokrotne. Obiekt zakresu może zawierać pojedynczą komórkę, cały wiersz lub kolumnę albo wiele komórek rozmieszczonych w wierszach i kolumnach.

Aby VBA mógł uruchamiać makra i wykonywać zadania, musi zidentyfikować komórki, na których należy wykonać wywoływane zadania. To tutaj koncepcja Range Objects znajduje swoją użyteczność.

Jak używać obiektu Range?

Aby odnieść się do obiektów w VBA, używamy techniki hierarchicznej. Istnieją 3 hierarchie:

  • Kwalifikator obiektu: Odnosi się do lokalizacji obiektu, na przykład miejsca, w którym się on znajduje, tj. Skoroszytu lub arkusza, do którego się odnosi.
  • Pozostałe 2 służą do manipulacji wartościami komórek. To są właściwości i metody.
  • Właściwość: Tutaj przechowywane są informacje o obiekcie.
  • Metoda: Odnosi się do działania, które wykona obiekt.

Na przykład w przypadku Range metodą będą działania takie jak sortowanie, formatowanie, wybieranie, czyszczenie itp.

Jest to struktura, która jest stosowana przy każdym odwołaniu do obiektu VBA. Te 3 są oddzielone kropką (.)

Application.Workbooks.Worksheets.Range

składnia

Aplikacja.Workbooks („Booknew.xlsm”). Arkusze („Arkusz3”). Zakres („B1”)

Przykłady

Możesz pobrać ten szablon programu Excel dla zakresu VBA tutaj - szablon programu Excel dla zakresu VBA

Przykład 1 - odwołanie do pojedynczej komórki

Załóżmy, że musimy zaznaczyć komórkę „B2” w „arkuszu1” w skoroszycie.

Wykonaj poniższe kroki:

  1. Otwórz program Excel. Otwórz taki plik z rozszerzeniem programu Excel „.xlsm”, co oznacza „skoroszyt programu Excel z obsługą makr”. Skoroszyt programu Excel typu „.xlsx” nie pozwala na zapisanie makr, które będziesz teraz pisać.
  2. Teraz, po otwarciu skoroszytu, musisz przejść do edytora VBA. Możesz użyć skrótu „ALT + F11”, aby otworzyć edytor lub użyć poniższej metody, jak pokazano na zrzucie ekranu:

Zobaczysz ekran podobny do poniższego:

Teraz napisz kod, jak pokazano na poniższym zrzucie ekranu.

Public Sub SingleCellRange ()

ThisWorkbook.Worksheets („Sheet1”). Range („B2”)

Napis końcowy

Zobacz na poniższym zrzucie ekranu programu Excel, że obecnie komórka A2 jest aktywna. Po uruchomieniu kodu zanotuj, gdzie jest aktywowana komórka.

Uruchom kod, jak pokazano na poniższym zrzucie ekranu:

Wskazówka: do uruchomienia kodu można również użyć klawisza skrótu programu Excel, np. F5

Po wykonaniu programu zobaczysz komórkę „B2”.

To, co tutaj robisz, to wydawanie programowi instrukcji, aby przejść do określonej komórki w określonym arkuszu roboczym określonego skoroszytu i wykonać czynność zgodnie z instrukcją, którą można tutaj wybrać.

Podobnie możesz użyć składni, aby wybrać szeroką gamę komórek i zakresów, a także wykonać na nich różnego rodzaju działania.

Przykład 2 - wybór całego rzędu

Na przykład tutaj, aby wybrać drugi wiersz. Uruchom poniższy kod, aby zaznaczyć cały wiersz

Public Sub EntireRowRange ()

ThisWorkbook.Worksheets („Sheet1”). Range („2: 2”)

Napis końcowy

Tutaj zakres („2: 2”) oznacza drugi rząd. Możesz wrócić do arkusza programu Excel i zobaczyć wyniki, jak pokazano na zrzucie ekranu poniżej.

Przykład # 3 - Wybór całej kolumny

Na przykład tutaj, aby zaznaczyć całą kolumnę C. Uruchom poniższy kod i zobacz wyniki.

Public Sub EntireRowRange ()

ThisWorkbook.Worksheets („Sheet1”). Range („2: 2”)

Napis końcowy

Po wprowadzeniu powyższego kodu zobaczysz, że cała kolumna została zaznaczona w arkuszu programu Excel. Zobacz poniższy zrzut ekranu.

W tym przypadku zakres („C: C”) oznacza kolumnę C.

Podobnie możesz zaznaczyć komórki ciągłe lub nieciągłe, przecięcie zakresów komórek itp.

Po prostu wprowadź poniższe zmiany w części Range pokazanej w kodzie.

Przykład 4 - zaznaczanie ciągłych komórek: zakres („B2: D6”)

Przykład # 5 - Wybieranie nieciągłych komórek: zakres („B1: C5, G1: G3”)

Przykład # 6 - Wybieranie przecięcia zakresu: zakres („B1: G5 G1: G3”)

[Zwróć uwagę na brak przecinka tutaj]. Tutaj zobaczysz wybierane od G1 do G3, które są typowymi komórkami w podanym zakresie.

Teraz następnym przykładem będzie wybranie grupy komórek w arkuszu i połączenie ich w jedną komórkę.

Przykład # 7 - Scal zakres komórek

Załóżmy, że chcesz scalić komórki „B1: C5” w jedną. Zobacz poniższy kod i postępuj zgodnie z nim.

Tutaj „.merge” to akcja, którą wykonujemy na grupie komórek podanej w zakresie

Przykład # 8 - Czyszczenie formatowania zakresu komórek

Załóżmy, że komórki „F2: H6” są podświetlone na żółto i chcemy wyczyścić to formatowanie programu Excel. Być może w innym scenariuszu chcesz usunąć całe formatowanie z całego arkusza lub z grupy komórek.

Zobacz zrzuty ekranu poniżej, aby śledzić dalej. Najpierw pokażę ci sformatowane komórki (F2: H6).

Uruchom kody pokazane na zrzucie ekranu poniżej, aby usunąć to formatowanie w wybranym zakresie komórek.

Składnia: ThisWorkbook.Worksheets („Sheet1”). Range („F2: H6”). ClearFormats

Publiczne podrzędne ClearFormats ()

ThisWorkbook.Worksheets („Sheet1”). Range („F2: H6”). ClearFormats

Napis końcowy

Możesz odnieść się do tego zrzutu ekranu podanego poniżej:

Podobnie możesz wyczyścić zawartość zakresu komórek, używając akcji „.ClearContents”.

Jest wiele takich rzeczy, które możesz zrobić. Spróbuj ich lepiej się uczyć.

Rzeczy do zapamiętania

  • Obiekt Range oznacza pojedynczą komórkę lub wiele komórek.
  • Aby manipulować wartościami komórek, musimy użyć właściwości i metod
  • Aby odnieść się do obiektów w programie Excel, Range podąża za wzorcem hierarchii obiektów za pomocą „.” Notacja.