VBA ActiveSheet és a lap aktiválása vagy kiválasztása

Ez a cikk a VBA ActiveSheet objektumát tárgyalja. Azt is tárgyalja, hogyan lehet aktiválni, kiválasztani és megnyitni a munkalapokat (és még sok más). Olvassa el teljes VBA -munkalap -útmutatónkat, ha további információra van szüksége a VBA -munkalapokkal való munkáról.

ActiveSheet

A VBA -ban az ActiveSheet az éppen aktív munkalapra utal. Egyszerre csak egy munkalap lehet aktív.

Munkalap aktiválása (az ActiveSheet beállítása)

Az ActiveSheet beállításához használja a Munkalapot. Aktiválja:

1 Munkalapok ("Bemenet"). Aktiválás

Az Activate Sheet parancs valójában „elmegy” a lapra, megváltoztatva a látható munkalapot.

A fenti példa a Lap (Tab) nevet használja. Ehelyett használhatja a VBA kódnevet a munkalaphoz:

1 1. lap. Aktiválás

ActiveSheet neve

Az ActiveSheet név beszerzése:

1 msgbox ActiveSheet.name

Kiválasztott lapok és ActiveSheet

Bármikor csak egy lap lehet az ActiveSheet. Ugyanakkor egyszerre több munkalap is kiválasztható.

Ha több munkalap van kiválasztva, csak a "legfelső" munkalap tekinthető aktívnak (az ActiveSheet).

Válassza a Munkalap lehetőséget

Ha egy munkalapot szeretne aktiválás helyett kiválasztani. Használja a .Választ lehetőséget.

Válassza ki a Munkalapot a Név lap alapján

Ez kiválaszt egy munkalapot a Tábla lap neve alapján

1 Táblázatok ("Bemenet"). Válassza ki

Válassza ki a munkalapot az indexszám alapján

Ez a munkalapot a többi laphoz viszonyított helyzete alapján választja ki

1 Munkalapok (1). Válassza ki

Válassza ki a VBA kódnevű munkalapot

1 1. lap. Válassza ki

Ha a munkalapokat kódnév alapján választja ki, akkor megelőzheti a munkalapnév -változások okozta hibákat.

Válassza az Aktuális munkalap lehetőséget

Az aktuális munkalap kiválasztásához használja az ActiveSheet objektumot:

1 ActiveSheet. Válassza ki

Továbbiak Példák aktiválása / kiválasztása

Állítsa az ActiveSheet -et Változó értékre

Ez hozzárendeli az ActiveSheet -et egy munkalap -objektum -változóhoz.

123 Dim ws munkalapkéntÁllítsa be ws = ActiveSheet

Módosítsa az ActiveSheet nevet

Ez megváltoztatja az ActiveSheet nevét.

1 ActiveSheet.Name = "Újnév"

ActiveSheet segítségével

A With Statement használata lehetővé teszi a kód egyszerűsítését objektumok (például Táblázatok vagy ActiveSheet) használatakor.

12345 ActiveSheet segítségével.Name = "StartFresh".Sejtek.Tiszta.Range ("A1"). Érték = .NameVége ezzel

Figyelje meg, hogy nem kell megismételnie az „ActiveSheet” -et minden kódsor előtt. Ez óriási időmegtakarítást jelenthet, ha hosszú parancslistával dolgozik.

Tekintse át a kiválasztott lapokat

A következő makró végigmegy az összes kiválasztott munkalapon, és megjeleníti a nevüket.

12345678 GetSelectedSheetsName () alrészDim ws munkalapkéntMinden ws -hez az ActiveWindow.SelectedSheets -benMsgBox ws.NameKövetkező wsEnd Sub

GoTo Next Sheet

Ez a kód a következő munkalapra kerül. Ha az ActiveSheet az utolsó munkalap, akkor a munkafüzet első lapjára kerül.

12345 Ha ActiveSheet.Index = Munkalapok.SzámMunkalapok (1). AktiválásMásActiveSheet.Next.ActivateVége Ha

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave