Ustaw zakres w Excel VBA
Ustaw zakres w vba oznacza, że określamy dany zakres do kodu lub procedury do wykonania, jeśli nie podamy określonego zakresu do kodu, automatycznie przyjmie zakres z arkusza roboczego, który ma aktywną komórkę, więc jest to bardzo ważne w kod do ustawiania zmiennej zakresu.
Po tylu latach pracy w programie Excel musieliście zrozumieć, że wszystkie prace, które wykonujemy, znajdują się w arkuszu, aw arkuszach są to komórki zawierające dane. Więc kiedy chcesz bawić się danymi, musisz być wzorem zachowania komórek w arkuszach roboczych. Więc kiedy zbiera się wiele komórek, staje się ZAKRESEM. Aby nauczyć się VBA, powinieneś wiedzieć wszystko o komórkach i zakresach. W tym artykule pokażemy, jak szczegółowo ustawić zakres komórek, które mogą być używane do kodowania VBA.

Co to jest obiekt Range?
Zakres w języku VBA jest określany jako obiekt. Zakres może zawierać jedną komórkę, wiele komórek, wiersz lub kolumnę itd.…
W VBA możemy sklasyfikować zakres jak poniżej.
„Aplikacja >>> Skoroszyt >>> Arkusz >>> Zakres”
Najpierw musimy uzyskać dostęp do aplikacji. Następnie w ramach tego musimy odnieść się do skoroszytu, do którego się odnosimy, aw skoroszycie odnosimy się do arkusza roboczego, do którego się odwołujemy, a następnie w arkuszu roboczym musimy wspomnieć o zakresie komórek.
Korzystając z Zakres komórek, możemy wprowadzić wartość do komórki lub komórek, możemy odczytać lub pobrać wartości z komórki lub komórek, możemy usunąć, możemy formatować, a także możemy zrobić wiele innych rzeczy.
Jak uzyskać dostęp do zakresu komórek w Excel VBA?
W kodowaniu VBA możemy odwołać się do komórki za pomocą właściwości VBA CELLS i obiektu RANGE. Na przykład, jeśli chcesz odwołać się do komórki A1, to najpierw zobaczymy użycie obiektu RANGE.
Wewnątrz podprocedury musimy najpierw otworzyć obiekt RANGE.
Kod:
Sub Range_Examples () Range (End Sub

Jak widać powyżej, obiekt RANGE pyta o komórkę, do której się odnosimy. Musimy więc wpisać adres komórki w cudzysłowach.
Kod:
Sub Range_Examples () Range („A1”) End Sub

Po podaniu adresu komórki musimy zdecydować, co zrobić z tą komórką, używając właściwości i metod. Teraz umieść kropkę, aby zobaczyć właściwości i metody obiektu RANGE.

Jeśli chcemy wstawić wartość do komórki, musimy wybrać właściwość „Wartość”.
Kod:
Sub Range_Examples () Range („A1”). Value End Sub

Aby ustawić wartość, musimy umieścić znak równości i wpisać wartość, którą chcemy wstawić do komórki A1.
Kod:
Sub Range_Examples () Range („A1”). Value = „Excel VBA Class” End Sub

Uruchom kod za pomocą opcji uruchamiania i zobacz magię w komórce A1.

Jak wspomniano w kodzie, otrzymaliśmy wartość w komórce A1.
Podobnie możemy odwołać się do komórki przy użyciu właściwości CELLS. Otwórz właściwość CELLS i zobacz składnię.

W przeciwieństwie do obiektu RANGE, w którym adres komórki możemy wprowadzić bezpośrednio w cudzysłowach. Zamiast tego musimy podać numer wiersza i kolumnę, aby odnieść się do komórki. Ponieważ odnosimy się do komórki A1, możemy powiedzieć, że wiersz to 1, a kolumna to 1.

Po podaniu adresu komórki możemy używać właściwości i metod do pracy z komórkami. Ale problem tutaj jest inny niż obiekt zakresu po wstawieniu kropki. Nie widzimy listy IntelliSense.

Musisz więc być ekspertem, aby odwoływać się do komórek za pomocą właściwości CELLS.
Kod:
Sub CELLS_Examples () Cells (1, 1) .Value = "Klasa Excel VBA" End Sub

Dostęp do wielu komórek i odniesienie do zakresu ustawień w VBA
Jedną z dużych różnic między CELLS & RANGE jest używanie CELLS. Mamy dostęp tylko do jednej komórki, ale za pomocą RANGE. Mamy również dostęp do wielu komórek.
Na przykład dla komórek od A1 do B5, jeśli chcemy mieć wartość 50, możemy napisać kod jak poniżej.
Kod:
Sub Range_Examples () Range („A1: B5”). Wartość = 50 End Sub

Spowoduje to wstawienie wartości 50 z komórki A1 do B5.

Zamiast bezpośrednio odwoływać się do komórek, możemy użyć zmiennej do przechowywania odwołania do określonych komórek.
Najpierw zdefiniuj zmienną jako obiekt „Zakres”.
Kod:
Sub Range_Examples () Dim Rng As Range End Sub

Gdy zmienna zostanie zdefiniowana jako obiekt „Zakres”, musimy ustawić odniesienie do tej zmiennej dotyczące adresów komórek, do których będą się odwoływać.
Aby ustawić odniesienie, musimy użyć słowa kluczowego „SET” i wprowadzić adresy komórek za pomocą obiektu RANGE.
Kod:
Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") End Sub

Teraz zmienna „Rng” odnosi się do komórek od A1 do B5.
Zamiast wpisywać zakres adresów komórek („A1: B5”), możemy po prostu użyć nazwy zmiennej „Rng”.
Kod:
Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") Rng.Value = "Range Setting" End Sub

Teraz spowoduje to wstawienie wspomnianej wartości z komórki A1 do komórki B5.

Załóżmy, że chcesz, aby wybrana komórka była odwołaniem, wtedy możemy ustawić odwołanie w następujący sposób.
Kod:
Sub Range_Examples () Dim Rng As Range Set Rng = Selection Rng.Value = "Range Setting" End Sub

Jest to piękna, ponieważ jeśli wybiorę dowolną z komórek i uruchomię, wstawi wartość również do tych komórek.
Na przykład wybiorę określone komórki.

Teraz wykonam kod i zobaczę, co się stanie.

Dla wszystkich zaznaczonych komórek wstawił wartość.
W ten sposób możemy ustawić odwołanie do zakresu, deklarując zmienne w VBA.
Rzeczy do zapamiętania
- Zakres może zaznaczyć wiele komórek, ale CELLS może zaznaczyć tylko jedną komórkę naraz.
- RANGE to obiekt, a CELLS to własność.
- Każda zmienna obiektu powinna mieć odniesienie do obiektu za pomocą słowa kluczowego SET.