Nastavte rozsah v aplikaci Excel VBA
Set range in vba means we specify a given range to the code or the procedure to execute, if we don't provide a specific range to a code it will automatically expect the range from the worksheet which has the active cell so it is very important in kód pro nastavení proměnné rozsahu.
Po tolika letech práce s Excelem jste jistě pochopili, že všechny práce, které děláme, jsou v listu a v listech jsou to buňky, které obsahují data. Takže pokud si chcete pohrát s daty, musíte být vzorem chování buněk v pracovních listech. Když se tedy spojí více buněk, stane se z nich RANGE. Chcete-li se naučit VBA, měli byste vědět všechno o buňkách a rozsazích. V tomto článku vám tedy ukážeme, jak podrobně nastavit rozsah buněk, které lze použít pro kódování VBA.

Co je to Range Range?
Rozsah ve VBA se označuje jako objekt. Rozsah může obsahovat jednu buňku, více buněk, řádek nebo sloupec atd.…
Ve VBA můžeme rozsah klasifikovat níže.
„Aplikace >>> Sešit >>> Pracovní list >>> Rozsah“
Nejprve musíme získat přístup k aplikaci. Pak v této části musíme odkázat na sešit, na který odkazujeme, a v sešitu odkazujeme na to, na který list odkazujeme, a poté v listu musíme zmínit rozsah buněk.
Pomocí rozsahu buněk můžeme zadat hodnotu do buňky nebo buněk, můžeme číst nebo získávat hodnoty z buňky nebo buněk, můžeme je mazat, formátovat a můžeme dělat i mnoho dalších věcí.
Jak získat přístup k rozsahu buněk v aplikaci Excel VBA?
V kódování VBA můžeme buňku označit pomocí vlastnosti VBA CELLS a objektu RANGE. Například pokud chcete odkázat na buňku A1, pak nejprve uvidíme použití RANGE objektu.
Uvnitř podprocesu musíme nejprve otevřít RANGE objekt.
Kód:
Sub Range_Examples () Range (End Sub

Jak vidíte výše, objekt RANGE se ptá, co je buňka, na kterou odkazujeme. Musíme tedy zadat adresu buňky v uvozovkách.
Kód:
Sub Range_Examples () Range ("A1") End Sub

Jakmile je zadána adresa buňky, musíme se pomocí vlastností a metod rozhodnout, co dělat s touto buňkou. Teď vložte tečku, abyste viděli vlastnosti a metody objektu RANGE.

Pokud chceme vložit hodnotu do buňky, musíme zvolit vlastnost „Hodnota“.
Kód:
Sub Range_Examples () Range ("A1"). Hodnota End Sub

Chcete-li nastavit hodnotu, musíme vložit znaménko rovná se a zadat hodnotu, kterou chceme vložit do buňky A1.
Kód:
Sub Range_Examples () Range ("A1"). Value = "Excel VBA Class" End Sub

Spusťte kód pomocí možnosti spuštění a podívejte se na kouzlo v buňce A1.

Jak je uvedeno v kódu, máme hodnotu v buňce A1.
Podobně můžeme na buňku odkazovat také pomocí vlastnosti CELLS. Otevřete vlastnost CELLS a podívejte se na syntaxi.

To je na rozdíl od objektu RANGE, kde můžeme zadat adresu buňky přímo v uvozovkách. Spíše musíme uvést číslo řádku a sloupec, abychom odkazovali na buňku. Protože máme na mysli buňku A1, můžeme říci, že řádek je 1 a sloupec je 1.

Po zmínce adresy buňky můžeme použít vlastnosti a metody pro práci s buňkami. Ale problém je zde na rozdíl od range objektu po vložení tečky. Nechceme vidět seznam IntelliSense.

Musíte tedy být odborníkem, který bude odkazovat na buňky pomocí vlastnosti CELLS.
Kód:
Sub CELLS_Examples () Cells (1, 1) .Value = "Excel VBA Class" End Sub

Přístup k více buňkám a nastavení reference rozsahu ve VBA
Jedním z velkých rozdílů mezi CELLS & RANGE je používání CELLS. Můžeme přistupovat pouze k jedné buňce, ale pomocí RANGE. Můžeme také přistupovat k více buňkám.
Například pro buňky A1 až B5, pokud chceme hodnotu 50, můžeme napsat kód níže.
Kód:
Sub Range_Examples () Range ("A1: B5"). Hodnota = 50 End Sub

Tím se vloží hodnota 50 z buňky A1 do B5.

Místo přímého odkazu na buňky můžeme pomocí proměnné uchovat odkaz na určené buňky.
Nejprve definujte proměnnou jako objekt „Range“.
Kód:
Sub Range_Examples () Dim Rng jako Range End Sub

Jakmile je proměnná definována jako objekt „Rozsah“, musíme pro tuto proměnnou nastavit odkaz na to, na jaké adresy buňky budou odkaz obsahovat.
Chcete-li nastavit odkaz, musíme použít klíčové slovo „SET“ a zadat adresy buněk pomocí objektu RANGE.
Kód:
Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") End Sub

Proměnná „Rng“ nyní odkazuje na buňky A1 až B5.
Místo psaní rozsahu adresy buňky („A1: B5“) můžeme jednoduše použít název proměnné „Rng“.
Kód:
Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") Rng.Value = "Range Range" End Sub

Nyní vložíte zmíněnou hodnotu z buňky A1 do buňky B5.

Předpokládejme, že chcete, aby vybraná buňka měla být odkazem, a pak můžeme nastavit odkaz následujícím způsobem.
Kód:
Sub Range_Examples () Dim Rng As Range Set Rng = výběr Rng.Value = "Nastavení rozsahu" End Sub

To je krása, protože když vyberu některou z buněk a spustím, vloží hodnotu také do těchto buněk.
Například vyberu určité buňky.

Nyní spustím kód a uvidím, co se stane.

Pro všechny vybrané buňky vložila hodnotu.
Takto můžeme nastavit odkaz na rozsah deklarováním proměnných ve VBA.
Věci k zapamatování
- Rozsah může vybrat více buněk, ale CELLS může vybrat jednu buňku najednou.
- RANGE je objekt a CELLS je vlastnost.
- U jakékoli proměnné objektu by měla být nastavena reference objektu pomocí klíčového slova SET.