Ez az oktatóanyag megtanítja az objektumváltozók definiálását a Set utasítás használatával a VBA -ban.
Objektumváltozók meghatározása
Az objektumok a Microsoft Office sarokkövei - objektumok nélkül nem érhetünk el semmit. Az Excelben az objektumok közé tartozik a munkafüzet, a munkalap vagy a tartományobjektumok. A Microsoft Word alkalmazásban példák a Dokumentum vagy Táblázat objektumok. Mindegyik objektum sokféle Tulajdonságok és Mód amely programozható az adott objektum viselkedésének szabályozására.
Az objektumváltozó deklarálása
Mielőtt kódban hivatkozhatnánk az objektumra, és ezért irányíthatnánk az objektumot, deklarálnunk kell az objektumot. Ezt a Dim Statement segítségével tehetjük meg.
123456 | Dim wkb munkafüzetkéntDim wks munkalapkéntDim Rng mint tartományDim wdDoc dokumentumkéntDim wdTbl táblázatkéntDim shp mint Shape |
Ez Homályos nyilatkozat egy eljárásban is előfordulhat:
vagy egy modul szintű eljáráson kívül:
Ha a változót a modul szintjén deklarálják (az eljáráson kívül), akkor a változó az egész modulban használható.
Ha az objektumváltozót a Public utasítással deklaráljuk, akkor a változó használható a VBA projekt során:
Érték beállítása
Miután deklarálta az objektumot, értéket kell rendelnie az objektumhoz. Ezt a. Használatával kell megtenni Állítsa be a nyilatkozatot és csak a -n belül tehető meg Eljárás.
12345 | Objektumok alcsoportja ()Állítsa be a wkb = ActiveWorkbook beállítástÁllítsa be a wks = Sheet1Rng = tartomány beállítása ("A1: G4")End Sub |
Megjegyzés: Ez eltér attól, hogy értékeket rendelünk a nem objektív változókhoz. A Set utasítással KELL használnia az objektumot a változóhoz. Ha nem, akkor hibaüzenetet kap:
Miután hozzárendelt egy értéket az objektumhoz, írhat kódot a viselkedés szabályozására vagy az objektum manipulálására.
VBA programozás | A kódgenerátor működik az Ön számára!
Példák objektumokra az Excelben
Munkafüzet objektum
Miután deklarálta a munkafüzet változóját, hozzárendelhet egy munkafüzetet az objektumhoz, és a rendelkezésre álló tulajdonságok és módszerek segítségével manipulálhatja az objektumot. Az alábbi példában egy munkafüzetet mentünk.
123456789101112 | AlmunkafüzetObject ()'deklarálja a munkafüzet objektumotDim wkb munkafüzetként'hozzárendel egy nem mentett munkafüzetet az objektumhozSet wkb = Munkafüzetek ("Könyv1")'mentse el a munkafüzetetwkb.SaveAs "C: \ data \ testbook.xlsx"'zárja be a munkafüzetetwkb.zár'ne felejtse el elengedni a tárgyatSet wkb = SemmiEnd Sub |
Munkalap objektum
Hasonló módon manipulálhat egy munkalapot vagy munkalapokat, miután a munkalapot változónak nyilvánította. Az alábbi példában a Sheet1 és Sheet2 nevet adjuk át.
12345678910111213 | AlmunkalapObject ()Dim wks1 MunkalapkéntDim wks2 Munkalapként'inicializálja az objektumokatSet wks1 = Sheet1Set wks2 = Sheet2nevezze át a lapokatwks1.Name = "Ügyfelek"wks2.Name = "Termékek"'állítsa a tárgyakat semmibewks1 = Semmiwks2 = SemmiEnd Sub |
Unod már a VBA kódpéldák keresését? Próbálja ki az AutoMacro -t!
Tartomány objektum
A Range objektum az egyik leghasznosabb objektum az Excelben. Az alábbi példában az A1 – E1 tartományt félkövérre írjuk, és alsó szegéllyel formázjuk.
12345678910111213 | Sub RangeObject ()Dim rng1 mint tartomány'intializálja a tartománytRng = tartomány beállítása ("A1: E1")'Félkövér a tartomány és állítsa be az alsó szegélytrng.Font.Bold = IgazRng1.Borders (xlEdgeBottom).LineStyle = xlFolytonos.ColorIndex = 0.TintAndShade = 0.Súly = xlVékonyVége ezzelEnd Sub |
Alak objektum
Az alakzatokkal való munkához objektumváltozókat is használhat.
123456789101112 | Sub AddShape ()Dim shp As Shape'hozza létre a formátAz shp = ActiveDocument.Shapes.AddShape beállítása (msoShapeSmileyFace, 68.25, 225.75, 136.5, 96#)Shp -vel„változtatni a színt és a stílust.Fill.ForeColor.RGB = RGB (255, 255, 0).Fill.Solid'igazítsd a mosolyt!.Beállítások.Item (1) = 0,07181Vége ezzelEnd Sub |