VBA ActiveSheet a ako aktivovať alebo vybrať list

Tento článok sa bude zaoberať objektom ActiveSheet vo VBA. Tiež bude diskutovať o tom, ako aktivovať, vybrať a prejsť na pracovné listy (a oveľa viac). Prečítajte si nášho úplného sprievodcu pracovnými listami VBA, kde nájdete ďalšie informácie o práci s pracovnými listami vo VBA.

ActiveSheet

Vo VBA ActiveSheet odkazuje na aktuálne aktívny pracovný hárok. Súčasne môže byť aktívny iba jeden hárok.

Aktivovať pracovný hárok (nastavenie ActiveSheetu)

Na nastavenie ActiveSheetu použite Worksheet. Aktivovať:

1 Pracovné listy („Vstup“). Aktivujte

Príkaz Aktivovať hárok skutočne „prejde“ na hárok a zmení viditeľný hárok.

Vyššie uvedený príklad používa názov hárka (tab). Namiesto toho môžete pre pracovný list použiť kódové meno VBA:

1 List 1. Aktivujte

Názov ActiveSheet

Ak chcete získať názov ActiveSheet:

1 msgbox ActiveSheet.name

Vybraté hárky vs ActiveSheet

V každom okamihu môže byť ActiveSheet iba jeden hárok. Je však možné vybrať viac pracovných listov naraz.

Keď je vybratých viac pracovných hárkov, za aktívny sa považuje iba „úplne hore“ pracovný hárok (aktívny list).

Vyberte pracovný list

Ak by ste chceli pracovný hárok vybrať namiesto jeho aktivácie. Namiesto toho použite .Vyberte.

Vyberte hárok podľa názvu karty

Tým sa vyberie pracovný hárok na základe názvu karty Tabuľka

1 Tabuľky ("Vstup"). Vyberte

Vyberte pracovný list podľa indexového čísla

Tým sa vyberie pracovný hárok na základe jeho polohy voči iným kartám

1 Pracovné listy (1). Vyberte

Vyberte pracovný hárok s kódovým názvom VBA

1 List 1. Vyberte

Výber hárkov podľa kódového názvu môže zabrániť chybám spôsobeným zmenami názvu hárka.

Vyberte Aktuálny pracovný hárok

Ak chcete vybrať aktuálny pracovný hárok, použite objekt ActiveSheet:

1 ActiveSheet. Vyberte

Viac Aktivovať / Vybrať príklady hárkov

Nastavte ActiveSheet na premennú

Tým sa ActiveSheet priradí k premennej objektu pracovného hárka.

123 Dim ws As worksheetNastaviť ws = ActiveSheet

Zmeňte názov ActiveSheet

Tým sa zmení názov ActiveSheet.

1 ActiveSheet.Name = "Nové meno"

S programom ActiveSheet

Použitie príkazu With vám umožňuje zefektívniť kód pri práci s objektmi (ako sú napríklad Tabuľky alebo ActiveSheet).

12345 S programom ActiveSheet.Name = "StartFresh".Články.jasné.Rozsah („A1“). Hodnota = .NázovUkončiť s

Všimnite si, ako nemusíte „ActiveSheet“ opakovať pred každým riadkom kódu. Pri práci s dlhým zoznamom príkazov to môže byť obrovská úspora času.

Smyčka cez vybrané listy

Nasledujúce makro bude prechádzať všetkými vybranými listami a zobrazovať ich názvy.

12345678 Sub GetSelectedSheetsName ()Dim ws As worksheetPre každé ws v ActiveWindow.SelectedSheetsMsgBox ws.NameĎalšie wsKoniec pod

Prejdite na nasledujúci hárok

Tento kód prejde na nasledujúci hárok. Ak je ActiveSheet posledným listom, prejde na prvý list v zošite.

12345 Ak ActiveSheet.Index = Worksheets.Count ThenPracovné listy (1). AktivovaťInakActiveSheet.Next.ActivateKoniec Ak

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave