Rozsah výběru VBA - Jak vybrat rozsah v aplikaci Excel VBA?

Rozsah výběru Excel VBA

Po základním obsahu s VBA je důležité pochopit, jak pracovat s řadou buněk v listu. Jakmile začnete provádět kódy prakticky většinu času, musíte pracovat s řadou buněk, takže je důležité pochopit, jak pracovat s řadou buněk, a jedním z takových konceptů je VBA „Výběr rozsahu“. V tomto článku vám ukážeme, jak pracovat s „rozsahem výběru“ v aplikaci Excel VBA.

Výběr a rozsah jsou dvě různá témata, ale když řekneme, že chceme vybrat rozsah nebo výběr rozsahu, jedná se o jediný koncept. RANGE je objekt, „Selection“ je vlastnost a „Select“ je metoda. Lidé mají tendenci si s těmito pojmy pletou. Je důležité znát rozdíly obecně.

Jak vybrat rozsah v aplikaci Excel VBA?

Příklad č. 1

Předpokládejme například, že poté chcete vybrat buňku A1 v listu. Nejprve musíme určit adresu buňky pomocí objektu RANGE, jak je uvedeno níže.

Kód:

Po zmínce buňky, kterou musíme vybrat, vložte tečku, abyste zobrazili seznam IntelliSense, který je přidružen k RANGE objektu.

Pokud vytvoříte tuto rozmanitost seznamů, zvolíte metodu „Vybrat“.

Kód:

Sub Range_Example1 () Range ("A1"). Vyberte End Sub

Nyní tento kód vybere buňku A1 v aktivním listu.

Chcete-li vybrat buňku v různých pracovních listech, musíme nejprve zadat list podle názvu. K určení listu musíme použít objekt „WORKSHEET“ a zadat název listu v uvozovkách.

Chcete-li například vybrat buňku A1 v listu „Datový list“, zadejte nejprve list jako níže.

Kód:

Sub Range_Example1 () Worksheets ("Data Sheet") End Sub

Pak pokračujte v kódu a v této tabulce určete, co musíme udělat. V části „Datový list“ musíme vybrat buňku A1, takže kód bude RANGE („A1“). Vyberte.

Kód:

Sub Range_Example1 () Worksheets ("Data Sheet"). Range ("A1"). Select End Sub

Když se pokusíte tento kód spustit, zobrazí se níže uvedená chyba.

Důvodem je „nemůžeme přímo dodat objekt rozsahu a vybrat metodu objektu pracovních listů.“

Nejprve musíme vybrat nebo aktivovat list VBA a pak můžeme dělat cokoli, co jsme chtěli dělat.

Kód:

Sub Range_Example1 () Worksheets ("Data Sheet"). Activate Range ("A1"). Select End Sub

Nyní vyberete buňku A1 v listu „Datový list“.

Příklad č. 2 - Práce s aktuálně vybraným rozsahem

Select je jiná věc a práce s již vybraným rozsahem buněk je jiná. Předpokládejme, že chcete do buňky A1 vložit hodnotu „Hello VBA“, pak to můžeme udělat dvěma způsoby.

Nejprve můžeme přímo předat kód VBA jako RANGE („A1“). Hodnota = „Dobrý den, VBA.“

Kód:

Sub Range_Example1 () Range ("A1"). Value = "Hello VBA" End Sub

Tento kód udělá pouze to, že do buňky A1 vloží hodnotu „Hello VBA“ bez ohledu na to, která buňka je aktuálně vybrána.

Podívejte se na výše uvedený výsledek kódu. Když tento kód provedeme, vložil hodnotu „Hello VBA“, přestože aktuálně vybraná buňka je B2.

Zadruhé můžeme hodnotu vložit do buňky pomocí vlastnosti „Výběr“. Nejprve musíme buňku vybrat ručně a spustit kód.

Kód:

Sub Range_Example1 () Selection.Value = "Hello VBA" End Sub

Tento kód udělá to, že do aktuálně vybrané buňky vloží hodnotu „Hello VBA“. Podívejte se například na níže uvedený příklad provedení.

Když jsem spustil kód, moje aktuální vybraná buňka byla B2 a náš kód vložil stejnou hodnotu do aktuálně vybrané buňky.

Nyní vyberu buňku B3 a provedu tam také stejnou hodnotu.

Ještě jedna věc, kterou můžeme udělat s vlastností „selection“, je, že můžeme vložit hodnotu do více než jedné buňky. Například nyní vyberu rozsah buněk od A1 do B5.

Teď, když spustím kód, pro všechny vybrané buňky dostaneme hodnotu jako „Hello VBA.“

Jednoduchý rozdíl mezi zadáním adresy buňky objektem RANGE a vlastností Selection je tedy v tom, že v kódu objektu Range vloží hodnotu do buněk, které jsou výslovně uvedeny.

Ale v objektu Výběr nezáleží na tom, ve které buňce se nacházíte. Vloží zmíněnou hodnotu do všech vybraných buněk.

Na co si pamatovat zde

  • Metodu výběru nemůžeme přímo dodat ve vlastnosti Výběr.
  • RANGE je objekt a výběr je vlastnost.
  • Místo rozsahu můžeme použít vlastnost CELLS.

Zajímavé články...