Co je rozsah VBA?
Objekt rozsahu VBA představuje buňku nebo více buněk v listu aplikace Excel. Je to nejdůležitější objekt aplikace Excel VBA. Pomocí objektu rozsahu Excel VBA můžete odkazovat na,
- Jedna buňka
- Řádek nebo sloupec buněk
- Výběr buněk
- Rozsah 3-D
Jak jsme diskutovali v našem předchozím tutoriálu, tento VBA se používá k záznamu a spuštění makra. Ale jak VBA identifikuje, jaká data z listu je třeba provést. To je místo, kde jsou užitečné objekty VBA Range.
V tomto výukovém programu se naučíte
- Úvod do odkazování na objekty ve VBA
- Odkaz na jednu buňku pomocí vlastnosti Worksheet.Range
- Vlastnost buňky
- Vlastnost Offset rozsahu
Úvod do odkazování na objekty ve VBA
Odkazování na Excel VBA Range Object a Object Qualifier.
- Kvalifikátor objektu : Používá se pro odkazování na objekt. Určuje sešit nebo list, na který odkazujete.
K manipulaci s těmito hodnotami buněk se používají Vlastnosti a metody .
- Vlastnost: Vlastnost ukládá informace o objektu.
- Metoda: Metoda je akce objektu, který provede. Objekt rozsahu může provádět akce jako vybrané, kopírované, vymazané, tříděné atd.
VBA se řídí vzorem hierarchie objektů a odkazuje na objekt v aplikaci Excel. Musíte postupovat podle následující struktury. Pamatujte, že dot. Overot spojuje objekt na každé z různých úrovní.
Application.Workbooks.Worksheets.Range
Existují dva hlavní typy výchozích objektů.
Jak odkazovat na objekt Excel VBA Range pomocí vlastnosti Range
Vlastnost Range lze použít ve dvou různých typech objektů.
- Objekty listu
- Rozsah objektů
Syntaxe vlastnosti Range
- Klíčové slovo „Rozsah“.
- Závorky následující za klíčovým slovem
- Relevantní rozsah buněk
- Citát (" ")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Když odkazujete na Range objekt, jak je znázorněno výše, je označován jako plně kvalifikovaný odkaz . Řekli jste aplikaci Excel přesně, jaký rozsah chcete, jaký list a v jakém listu.
Příklad : MsgBox Worksheet ("sheet1"). Rozsah ("A1"). Hodnota
Pomocí vlastnosti Range můžete provádět mnoho úkolů, například
- Odkaz na vlastnost Jedna buňka pomocí rozsahu
- Odkaz na jednu buňku pomocí vlastnosti Worksheet.Range
- Odkaz na celý řádek nebo sloupec
- Odkazujte na sloučené buňky pomocí vlastnosti Worksheet.Range a mnoha dalších
Jako takový bude příliš zdlouhavý, aby pokryl všechny scénáře pro vlastnost rozsahu. U scénářů uvedených výše ukážeme příklad pouze pro jeden. Odkaz na vlastnost Jedna buňka pomocí rozsahu.
Odkaz na jednu buňku pomocí vlastnosti Worksheet.Range
Chcete-li odkazovat na jednu buňku, musíte odkazovat na jednu buňku.
Syntaxe je jednoduchá „Rozsah („ Buňka “)“.
Zde použijeme příkaz „.Select“ k výběru jednotlivé buňky z listu.
Krok 1) V tomto kroku otevřete svůj Excel.
Krok 2) V tomto kroku
- Klikněte na knoflík.
- Otevře se okno.
- Sem zadejte název svého programu a klikněte na tlačítko „OK“.
- Dostanete se do hlavního souboru aplikace Excel, v horním menu kliknutím na tlačítko „stop“ nahrávání zastavíte nahrávání makra.
Krok 3) V dalším kroku
- Klikněte na tlačítko Makro z horního menu. Otevře se okno níže.
- V tomto okně klikněte na tlačítko „upravit“.
Krok 4) Výše uvedeným krokem se otevře editor kódu VBA pro název souboru „Single Cell Range“. Zadejte kód, jak je znázorněno níže, pro výběr rozsahu „A1“ z aplikace Excel.
Krok 5) Nyní uložte soubor a spusťte program, jak je znázorněno níže.
Krok 6) Uvidíte, že po provedení programu je vybrána buňka „A1“.
Podobně můžete vybrat buňku s konkrétním názvem. Například pokud chcete prohledávat buňku s názvem „Guru99- VBA Tutorial“. Musíte spustit příkaz, jak je znázorněno níže. Vybere buňku s tímto názvem.
Rozsah („Výukový program Guru99- VBA“). Vyberte
Chcete-li použít další objekt rozsahu, je zde ukázka kódu.
Rozsah pro výběr buňky v aplikaci Excel | Rozsah deklarován |
Pro jeden řádek | Rozsah ("1: 1") |
Pro jeden sloupec | Rozsah („A: A“) |
Pro souvislé buňky | Rozsah ("A1: C5") |
Pro nesousedící buňky | Rozsah („A1: C5, F1: F5“) |
Pro křižovatku dvou rozsahů | Rozsah ("A1: C5 F1: F5") (U buňky průniku nezapomeňte, že neexistuje žádný operátor čárky) |
Sloučit buňku | Range ("A1: C5") (Ke sloučení buňky použijte příkaz "merge") |
Vlastnost buňky
Podobně jako u rozsahu, ve VBA můžete také „Vlastnost buňky“. Jediný rozdíl je v tom, že má vlastnost „item“, kterou používáte k odkazování na buňky v tabulce. Vlastnost buňky je užitečná v programovací smyčce.
Například,
Cells.item (řádek, sloupec). Oba řádky níže odkazují na buňku A1.
- Buňky. Položka (1,1) NEBO
- Cells.item (1, "A")
Vlastnost Offset rozsahu
Vlastnost posunutí rozsahu vybere řádky / sloupce od původní polohy. Na základě deklarovaného rozsahu jsou vybrány buňky. Viz příklad níže.
Například,
Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select
Výsledkem bude buňka B2. Vlastnost offset přesune buňku A1 do 1 sloupce a 1 řádku pryč. Hodnotu rowoffset / columnoffset můžete změnit podle požadavku. K přesunutí buněk dozadu můžete použít zápornou hodnotu (-1).
Stáhněte si Excel obsahující výše uvedený kód
Stáhněte si výše uvedený kód Excel
Shrnutí :
- Objekt rozsahu VBA představuje buňku nebo více buněk v listu aplikace Excel
- Jedna buňka
- Řádek nebo sloupec buněk
- Výběr buněk
- Rozsah 3-D
- K manipulaci s hodnotami buněk se používají vlastnosti a metody
- Vlastnost ukládá informace o objektu
- Metoda je akce objektu, který bude provádět jako výběr, sloučení, seřazení atd.
- VBA podle vzoru hierarchie objektů odkazuje na objekt v aplikaci Excel pomocí operátoru .dot
- Vlastnost Range lze použít ve dvou různých typech objektů
- Objekty listu
- Rozsah objektů