Excel VBA állítás
A VBA Set egy olyan utasítás, amelyet bármilyen értékkulcs hozzárendeléséhez használnak, amely szerint egy objektum vagy egy változóra való hivatkozás van. Ezt a függvényt használjuk egy bizonyos változó paraméterének meghatározásához, például, ha M = A halmazot írunk, ami most M A referenciának ugyanazok az értékei és attribútumai vannak, mint az A-nak.
A VBA-ban egy objektum az excel magja, mert objektumok nélkül nem tehetünk semmit. Az objektumok a munkafüzet, a munkalap és a tartomány. Amikor deklarálunk egy változót, adattípust kell rendelnünk hozzá, és objektumokat is adhatunk adattípusnak. Ahhoz, hogy értéket rendeljünk a deklarált objektumváltozókhoz, a „SET” szót kell használnunk. A „Set” szó egy új objektumra utal a VBA-ban, például az adott munkalap adott tartományára utal.
Az Excel VBA Set Statement használata
Itt letöltheti ezt a VBA-állítássablont - VBA-állítássablon# 1 - Állítson állítást tartomány objektumváltozókkal
Tegyük fel például, hogy elég gyakran szeretné használni az A1 és D5 tartományokat. Ahelyett, hogy a kódot tartományként („A1: D5”) írnánk, minden alkalommal deklarálhatjuk a változót tartományként, és a tartomány referenciát tartományként állíthatjuk be („A1: D5”)
1. lépés: Nyújtsa be a változót Range objektumként.
Kód:
Részkészlet_Példa ()
Dim MyRange As Range
End Sub
2. lépés: Abban a pillanatban, amikor az adattípust tartománynak rendeljük, használja a „Set” szót.
Kód:
Sub Set_Példa () Dim MyRange As Range Set MyRange = End Sub
3. lépés: Most említse meg a tartományt.
Kód:
Sub Set_Példa () Dim MyRange As Range Set MyRange = Range ("A1: D5") End Sub
4. lépés: Most a „MyRange” változó megegyezik az A1 – D5 tartományral. Ennek a változónak a segítségével elérhetjük a tartomány összes tulajdonságát és módszerét.
Másolhatunk, hozzáadhatunk egy megjegyzést az excelben, és sok más dolgot is megtehetünk.
Például itt létrehoztam néhány számot.
Most a változó használatával megváltoztatom a betűméretet 12-re.
Kód:
Sub Set_Example () Dim MyRange As Range Set MyRange = Range (Range ("A1: D5") MyRange.Font.Size = 12 End Sub
Ez megváltoztatja a hozzárendelt tartomány betűméretét.
Így sok mindent megtehetünk egy adott tartományban a „Beállítás” szó használatával.
# 2 - Állítás beállítása munkalap objektumváltozókkal
Láttuk, hogyan működik a „set” egy tartomány objektummal a VBA-ban. Pontosan ugyanúgy működik, mint a munkalap objektum.
Tegyük fel, hogy 5 munkalapja van a munkafüzetében, és továbbra is vissza akar térni az adott munkalapra, beállíthatja a munkalap nevét a megadott objektumváltozóra.
Nézze meg például az alábbi kódot.
Kód:
Sub Set_Worksheet_Példa () Dim Ws mint munkalap készlet Ws = munkalapok ("Summary Sheet") End Sub
A fenti kódban az objektumváltozóként definiált „Ws” változó, és a következő sorban a „Set” szó használatával a változót az „Summary Sheet” nevű munkalapra állítottuk.
Most ennek a változónak a segítségével elvégezhetünk minden hozzá tartozó dolgot. Vessen egy pillantást az alábbi két kódkészletre.
# 1 - „Beállított” szó nélkül
Kód:
Sub Set_Worksheet_Example1 () 'A munkalapok ("Összefoglaló lap") kiválasztásához. Válassza a "A munkalapok (" Összefoglaló lap ") aktiválásához. Aktiválja" A munkalapok ("Összefoglaló lap") elrejtéséhez. Visible = xlVeryHidden' To a munkalapok ("Összefoglaló lap") elrejtése. Visible = xlVisible End Sub
Minden alkalommal, amikor a munkalapok objektummal hivatkoztam az „Összefoglaló lap” lapra. Ez olyan hosszúvá teszi a kódot, és sok időt igényel a gépeléshez.
A hatalmas kód részeként bosszantó, ha minden alkalommal meg kell adni a munkalap nevét, amikor hivatkozni kell a munkalapra.
Most vessen egy pillantást a Set in Code használatának előnyére.
# 2 - „Beállított” szóval
Kód:
Sub Set_Worksheet_Példa () Dim Ws mint munkalapkészlet Ws = munkalapok ("Összefoglaló lap") 'A Ws lap kiválasztásához. Válassza a' Ws lap aktiválásához 'Activate' lehetőséget a Ws lap elrejtéséhez. Visis = xlVeryHidden 'A Ws lap elrejtéséhez .Visible = xlVisible End Sub
Abban a pillanatban, amikor beállítjuk a munkalap nevét, láthatjuk a változó nevét, miközben a kódot a lista részeként adjuk meg.
# 3 - Állítás beállítása munkafüzet objektumváltozókkal
A VBA-ban a „Set” szó valódi előnye akkor merül fel, amikor különböző munkafüzetekre kell hivatkoznunk.
Amikor különböző munkafüzetekkel dolgozunk, olyan nehéz beírni a munkafüzet teljes nevét és a fájlkiterjesztést.
Tegyük fel, hogy két különböző munkafüzeted van: „Értékesítési összefoglaló fájl 2018.xlsx” és „Értékesítési összefoglaló fájl 2019.xlsx”. A két munkafüzetet beállíthatjuk az alábbi kódhoz hasonlóan.
Kód:
Alkészlet_Munkafüzet_példa1 () Dim Wb1 mint munkafüzet Dim Wb2 As Workbook Set Wb1 = Munkafüzetek ("Értékesítési összefoglaló fájl 2018.xlsx") Készlet Wb2 = Munkafüzetek ("Értékesítési összefoglaló fájl 2019.xlsx") Alrész
Most a Wb1 változó egyenlő az „Sales Summary File 2018.xlsx” nevű munkafüzettel, a Wb2 változó pedig az „Sales Summary File 2019.xlsx” nevű munkafüzettel.
Ennek a változónak a segítségével elérhetjük a munkafüzethez tartozó összes tulajdonságot és módszert.
Az alábbiak szerint rövidíthetjük a kódot.
A Munkakönyv aktiválásához a Kulcsszó beállítása funkció használata:
Workbooks("Sales Summary File 2018.xlsx").Activate
Using the Set Keyword to activate the workbook:
Wb1.Activate
This makes the writing of the code lot simpler and also once the workbook name is set there is a worry of typo error of the workbook names.