VBA Laplap neve / Lap átnevezése

Ez az oktatóanyag kiterjed a munkalapok nevével való interakcióra a VBA -ban.

Töltse ki a lap nevét

A munkalapok nevei a Név tulajdona a Ágynemű vagy Feladatlapok tárgy. A munkalap neve az „al” név, amely az Excel alján látható:

Get ActiveSheet Name

Ez megjeleníti az ActiveSheet nevét egy üzenetmezőben:

1 MsgBox ActiveSheet.Name

A munkalap lekérése indexszám szerint

Ez megjeleníti az első munkalap nevét egy üzenetmezőben:

1 MsgBox Sheets (1). Név

Ez megjeleníti a munkafüzet utolsó munkalapjának nevét:

1 MsgBox Sheets (Sheets.Count). Név

A munkalap lekérése kódnév szerint

A VBA szerkesztőben lehetőség van a munkalap „kódnevének” megváltoztatására. A kódnév nem látható az Excel felhasználó számára, és csak a VBA szerkesztőben látható:

A VBA -ban a Táblázatokkal való munka során hivatkozhat a szokásos lap nevére:

1 Táblázatok ("TabName"). Aktiválás

vagy a VBA kód neve:

1 Kódnév. Aktiválás

Kívánatos a kódnév hivatkozása arra az esetre, ha a Lap lap neve valaha megváltozik. Ha engedélyezi az Excel felhasználói hozzáférését a változó lapnevekhez, hivatkozzon a kódnévre a VBA -kódjában, hogy a Lap lap nevének eltérése ne okozzon hibát. A lapkódneveket itt tárgyaljuk részletesebben.

A munkalap VBA kódnévvel történő lekéréséhez tegye a következőket:

1 MsgBox CodeName.Name

Lap átnevezése

A Táblázatok átnevezése a név tulajdona a Ágynemű vagy Feladatlapok tárgy.

ActiveSheet átnevezése

1 ActiveSheet.Name = "Újnév"

Nevezze át a lapot név szerint

1 Táblázatok ("OldSheet"). Name = "NewName"

Átnevezi a lapot a lap indexszáma szerint

Itt 1 -et használunk a munkafüzet első lapjának átnevezésére.

1 Táblázatok (1) .Name = "NewName"

Nevezze át a lapot kódnév szerint

Ez a kód átnevezi a lapot a VBA kódnevével (fentebb tárgyalt):

1 Component.Name = "Újnév"

Ellenőrizze, hogy létezik -e a lap neve

Létrehoztunk egy függvényt annak ellenőrzésére, hogy létezik -e már egy adott nevű lap.

123456789101112 'Ellenőrizze, hogy van -e tartomány a lapon.'Hagyja üresen a tartományt, hogy ellenőrizze, létezik -e lap'Bemenetek:'WhatSheet - A lap karakterlánc -neve (korábbi "Sheet1")'WhatRange (opcionális, alapértelmezett = "A1") - A tartomány karakterlánca (korábbi "A1")Funkciótartomány Létezik (WhatSheet mint karakterlánc, opcionális ByVal WhatRange as karakterlánc = "A1") logikai értékkéntDim teszt As RangeHiba esetén Folytassa a következőtTeszt beállítása = ActiveWorkbook.Sheets (WhatSheet). Range (WhatRange)RangeExists = Hibaszám = 0GoTo 0 hiba eseténVége funkció

A függvény az IGAZ értéket adja vissza, ha a lap létezik, vagy hamis, ha nem.

Használja a függvényt így:

123 Sub Test_SheetExists ()MsgBox RangeExists ("beállítás")End Sub

Másolja a lapot és nevezze át

Ez a példa a Lapok másolása című cikkünkből származik.

A munkalap másolása és beillesztése után az újonnan létrehozott lapból ActiveSheet lesz. Tehát a másolt munkalap átnevezéséhez egyszerűen használja az ActiveSheet -et. Név:

12345678 Sub CopySheetRename2 ()Táblázatok ("Sheet1"). Másolás után: = Sheets (Sheets.Count)Hiba esetén Folytassa a következőtActiveSheet.Name = "LastSheet"GoTo 0 hiba eseténEnd Sub

Megjegyzés: Hibakezelést adtunk a hibák elkerülése érdekében, ha a munkalap neve már létezik.

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

wave wave wave wave wave