Tartalomjegyzék
Ez a cikk a sorozatom része: Excel VBA & Makrók - lépésről lépésre teljes útmutató A következőkben csak a 10 leggyakrabban használt Excel VBA-objektum listáját fogjuk megvitatni.
Gyakorlati munkafüzet letöltése
Töltse le ezt a gyakorlati munkafüzetet, hogy gyakorolhasson, miközben ezt a cikket olvassa.
VBA objektumok.xlsmMik azok a VBA objektumok?
Egy Objektum egy parancs vagy valami, ami egy VBA kódban bizonyos feladatok elvégzésére vonatkozik.
A VBA (Visual Basic Application) egy objektumorientált programozási nyelv. Az objektum a VBA egyik eleme.
Egy objektumnak van tulajdonsága és metódusa. A metódus az adott objektum által végrehajtott művelet, a tulajdonság pedig az objektum jellemzőit magyarázza.
A VBA objektumok attribútumai
Egy VBA objektum alkalmazásához az objektumban kell lennie egy metódusnak vagy tulajdonságnak. Ezeket a tulajdonságokat itt tárgyaljuk.
Tulajdonságok
VBA objektum tulajdonságai a tárgyak beállításainak tekinthetők.Az Excel számos objektummal rendelkezik. Az Excel VBA-ban a legtöbb objektum, amellyel dolgozunk, rendelkezik tulajdonságokkal.
Példa:
- Range objektum tulajdonságokkal rendelkezik. Ezek közül néhány Oszlop , Formula , Sor , Szélesség , és Érték .
- A Diagram objektum olyan tulajdonságokkal rendelkezik, mint például Legenda , ChartArea , ChartStyle , és így tovább.
- ChartTitle szintén egy objektum, olyan tulajdonságokkal, mint Betűtípus , Formátum , és Határ .
A VBA objektumtulajdonságok használata:
VBA kódot írhatunk a következőkhöz:
- Megvizsgálhatja egy objektum aktuális tulajdonságbeállításait, és ezek alapján tehet valamit.
- Az objektum tulajdonságainak beállításait új értékek megadásával módosíthatja.
Nézze meg ezt a VBA utasítást:
Range("E10").Value
Ebben a nyilatkozatban, Tartomány egy objektum, Érték a tulajdonságok egyike. A VBA utasításban az objektumok és a tulajdonságok egymás mellé kerülnek, és pont ( egy pont, . Először az objektumok kerülnek elhelyezésre, majd a tulajdonságaik.
A következő VBA utasítás például beállítja a Érték tulajdonsága E10:100 tartomány .
Range("E10").Value = 100
Ez a kijelentés a számot 100 megjeleníteni a E10-es cella .
Módszerek:
A módszer egy objektumon végrehajtott művelet.Az objektumoknak is vannak módszerei, például, Tartomány objektumoknak van egy Tiszta módszer. A következő VBA utasítás törli a Tartomány Ez az utasítás egyenértékű a Tartomány majd a Kezdőlap ➪ Szerkesztés ➪ Törlés ➪ Összes törlése :
Range("A10:C20").Clear
A VBA-kódban a metódusok úgy néznek ki, mint a tulajdonságok. A metódusok az objektumokhoz egy elválasztó operátorral (.) kapcsolódnak. A metódusok és a tulajdonságok azonban a VBA-ban különböző fogalmak.
Bővebben: Az Excel-diagram eltűnik, amikor az adatok el vannak rejtve (3 megoldás)
Az Excel 10 leggyakrabban használt VBA-objektumának listája
Van egy hierarchia, amelyet az Excel követ az objektumok esetében:
Alkalmazás → Munkafüzet → Munkalap → Tartomány
Az alábbiakban részletesen ismertetjük az Excel VBA leggyakrabban használt objektumainak listáját.
1. Alkalmazási objektum
A Alkalmazás objektum az Excel egyik legszélesebb körben használt objektuma, amely a teljes Excel-alkalmazás ábrázolására szolgál.
Módszerek | Tulajdonságok |
---|---|
Számítsa ki a címet. | ActiveCell |
CalculateFull | ActiveSheet |
InputBox | ActiveWindow |
Kilépés | ActiveWorkbook |
Fuss | DisplayScrollBars |
Undo | DisplayFormulaBar |
Várjon | Útvonal |
StatusBar |
Az objektum Excelben történő alkalmazása során hozzá kell adnunk a szükséges tulajdonságot vagy módszert.
Példa 1:
Itt a Számítsa ki a címet. módszer. Ez a makró az összes nyitott munkafüzet kiszámítására szolgál.
Sub Calculate_All_Opened_Workbooks() Application.Calculate End Sub
2. példa:
Az alábbi példában a DisplayScrollBars tulajdonságot a Alkalmazás A makró célja a görgetősáv elrejtése.
Sub Hide_Status_Bar() Application.DisplayScrollBars = False End Sub
Itt a státuszt Hamis , ami azt jelenti, hogy nem jeleníti meg az Excel lap görgetősávjait.
Bővebben: Hogyan nyissa meg a munkafüzetet az Excel VBA segítségével (4 példa)
2. Munkafüzetek objektum
Munkafüzetek objektum a munkafüzethez kapcsolódik. Az Excel alkalmazásban jelenleg megnyitott munkafüzetek listáját jelöli.
Módszerek | Tulajdonságok |
---|---|
Add | Alkalmazás |
CheckOut | Count |
Zárja be a | Alkotó |
Nyissa meg a címet. | Tétel |
Szülő |
Példa 1:
Itt egy egyszerű VBA-kódot alkalmaztunk a Workbooks objektumon alapulva, amely bezárja az Excel munkafüzetet.
Sub Close_All_Opened_Workbooks() Workbooks.Close End Sub
2. példa:
Ez a példa egy új változót ad hozzá page_1 a Disney.xlsx munkafüzet.
Sub Add_Variable_to_Specific_Workbook() Set page_1 = Workbooks.Item("Disney.xlsx") End Sub
3. Munkafüzet objektum
A Munkafüzet objektum egyetlen munkafüzetet reprezentál. Ez egy tagja a Munkafüzetek amelyek jelenleg aktívak vagy nyitva vannak. A munkafüzet inkább munkalapok gyűjteménye.
Módszerek | Tulajdonságok |
---|---|
Aktív | ActiveChart |
AddToFavourite | ActiveSheet |
Zárja be a | AutoSaveOn |
DeleteNumberFormat | Teljes név |
Mentés | UserStatus |
SaveAs |
Példa 1:
Be akarjuk zárni az aktuális munkafüzetet.
Sub Close_Single_Workbook() ActiveWorkbook.Close End Sub
Hasonló kódot alkalmaztunk a bezárt munkafüzetre is. A Workbooks objektum az összes megnyitott munkafüzetre vonatkozik. A Workbook objektum azonban csak az aktív munkafüzetre alkalmazható.
2. példa:
Ebben a példában egy cellát fogunk elnevezni a Munkafüzet tárgy.
Sub Name_A_Cell() ActiveWorkbook.Names.Add Name:="myName", RefersToR1C1:="=Sheet1!R5C5" End Sub
4. Lapok Objektum
A Lapok objektum a megadott vagy aktív Excel-munkafüzet mindenféle lapjához kapcsolódik. Lapok lehetnek munkalapok, táblázatlapok, mikrolapok.
Módszerek | Tulajdonságok |
---|---|
Add | Alkalmazás |
Add2 | Count |
Másolás | Tétel |
Törölje a címet. | Szülő |
Mozgás | Látható |
PrintOut | |
PrintPreview | |
SelectCalculate |
Példa 1:
Ez a VBA kód aktiválja a 2. lap a munkafüzetben.
Sub Activate_Workbook() Worksheets(2).Activate End Sub
2. példa:
Ebben a példában egy új lapot adunk hozzá a 1. lap.
Sub Add_New_Sheet() Sheets.Add after:=Sheets(1) End Sub
5. Munkalapok objektum
Ez a Munkalapok objektum a Lapok objektum. Ez csak a munkalapok gyűjteménye. De a Lapok A tárgy tartalmaz táblázatos és mikrolapokat is.
Módszerek | Tulajdonságok |
---|---|
Másolás | Alkalmazás |
Törölje a címet. | Count |
Mozgás | Alkotó |
PrintOut | Tétel |
PrintPreview | Szülő |
Válassza ki a címet. | Látható |
Add | |
Add2 |
Példa 1:
Ez aktiválja a 2. a következő munkafüzet munkalapja
Sub Activate_Worksheet() Worksheets(2).Activate End Sub
Használhatjuk a Lapok objektumot. De ha a Lapok objektum, amely egy diagramot vagy mikrolapot aktiválhat, szintén a megadott munkafüzet helyétől függ.
2. példa:
Egy lapot másolunk a munkafüzet kívánt helyére.
Sub Copy_A_Worksheet() Worksheets("Disney").Copy Before:=Worksheets("Sheet1") End Sub
Hasonló olvasmányok
- 22 makró példa az Excel VBA-ban
- 20 gyakorlati kódolási tipp az Excel VBA elsajátításához
- Hogyan írjunk VBA kódot az Excelben (egyszerű lépésekkel)
- A VBA makrók típusai az Excelben (gyors útmutató)
- Bevezetés a VBA jellemzőibe és alkalmazásaiba
6. Munkalap objektum
A Munkalap objektum a Munkalapok Csak egyetlen munkalapot képvisel. Ez a szakasz egy VBA kódmintát mutat be, amely a Munkalap objektum, amely átnevez egy munkalapot.
Módszerek | Tulajdonságok |
---|---|
Aktiválja a címet. | Alkalmazás |
Számítsa ki a címet. | Sejtek |
CheckSpelling | Oszlopok |
Másolás | Megjegyzések |
Törölje a címet. | Név |
Értékelje a honlapot. | Következő |
Mozgás | Vázlat |
Paste | PageSetup |
PasteSpecial | Szülő |
PrintOut | Tartomány |
PrintPreview | Sorok |
SaveAs | Formák |
Válassza ki a címet. | Rendezés |
Tab | |
Típus | |
Látható |
Példa 1:
A VBA-kód alkalmazása után az aktív munkalap neve megváltozik.
Sub Rename_A_Worksheet() ActiveSheet.Name = "Data Set -2" End Sub
2. példa:
Az aktuális munkalapra vagyunk kíváncsiak. Alkalmazzuk a következő VBA kódot.
Sub Show_Worksheet_Name() MsgBox ActiveSheet.Name End Sub
7. Tartomány objektum
A Tartomány objektum az Excel fájl celláihoz kapcsolódik. Egyetlen cella, sor, oszlop vagy bizonyos számú cella, sor vagy oszlop kiválasztására szolgál egy Excel munkalapból. Az argumentumban a cellahivatkozást kell megadnunk.
Módszerek | Tulajdonságok |
---|---|
Aktiválja a címet. | Cím: |
AutoFill | Alkalmazás |
Számítsa ki a címet. | Területek |
Tiszta | Sejtek |
Másolás | Oszlop |
Törölje a címet. | Count |
Keresd meg a | Vége |
Beillesztés | Betűtípus |
PasteSpecial | Magasság |
Cserélje ki a címet. | Tétel |
Fuss | Balra |
Válassza ki a címet. | ListObject |
Mutasd meg a | Név |
Rendezés | Következő |
Asztal | Szülő |
Tartomány | |
Sor | |
Sorok | |
Top | |
Érvényesítés | |
Érték | |
Szélesség |
Példa 1:
Ez egy VBA kódminta, amely a tartomány celláit választja ki. B5:D5 .
Sub Select_A_Range() Range("B5:D5").Select End Sub
2. példa:
Ez a példa egy bizonyos tartományt másol az aktív lapról.
Sub Copy_A_Range1() Range("A1:E1").Copy End Sub
8. Alakzatok objektum
A Formák objektum a munkalapon létező összes alakzathoz kapcsolódik. Ezzel az objektummal kijelölhetjük és törölhetjük, illetve egyéb feladatokat végezhetünk.
Módszerek | Tulajdonságok |
---|---|
AddCallout | Alkalmazás |
AddConnector | Count |
AddLine | Alkotó |
AddPicture | Szülő |
AddShape | Tartomány |
Tétel | |
SelectAll |
Példa 1:
Ez a VBA kód mindenféle alakzatot kiválaszt egy munkalapról.
Sub All_Shapes_of_A_Worksheet() ActiveSheet.Shapes.SelectAll End Sub
2. példa:
Ebben a példában a kívánt műveletet az aktív munkalap meglévő alakzataira fogjuk alkalmazni.
Sub Apply_A_Procedure_on_Shapes() ActiveSheet.Shapes(1).OnAction = "ShapeClick" End Sub
9. Alakzat objektum
A Shape objektum a Shapes része. Egyetlen alakzatot jelöl az aktív munkalapon. A Shapes objektumot az Formák tárgy.
Módszerek | Tulajdonságok |
---|---|
Alkalmazás | Alkalmazás |
Másolás | AutoShapeType |
Vágja | BackgroundStyle |
Törölje a címet. | Diagram |
Duplikátum | Csatlakozó |
Válassza ki a címet. | Töltse ki a címet. |
Magasság | |
Balra | |
Név | |
OnAction | |
Szülő | |
Reflection | |
Cím | |
Top | |
Típus | |
Látható | |
Szélesség |
Példa:
Ezt az egyszerű VBA kódot egy csillag létrehozására alkalmazzuk a következővel 5 szélei.
Sub Create_A_Shape() ActiveSheet.Shapes.AddShape msoShape5pointStar, 300, 100, 60, 60 End Sub
Az msoShape5pointStar parancs megváltoztatásával bármilyen alakzatot rajzolhatunk.
10. ListObject objektum
ListObject a ListObjects objektum . A ListObject a munkalap egyetlen táblázatát jelzi.
Módszerek | Tulajdonságok |
---|---|
Törölje a címet. | Aktív |
Közzététel | Alkalmazás |
Frissítés | AutoFilter |
Méretváltoztatás | Comment |
Alkotó | |
Név | |
Szülő | |
Tartomány | |
Rendezés | |
Összefoglaló |
Példa:
Ebben a példában adatokat kell kivenni egy táblázatból és tárolni a tömbben.
Sub Store_Data_From_Table_To_Array() Dim D_Table As ListObject Dim D_Array As Variant Dim N As Long Set D_Table = ActiveSheet.ListObjects("My_Data") D_Array = D_Table.DataBodyRange For N = LBound(D_Array) To UBound(D_Array) Debug.Print D_Array(N, 2) Next N End Sub
Bővebben: Excel VBA a tömb betöltéséhez a cellák értékeivel (4 megfelelő példa)
Következtetés
Ebben a cikkben az általánosan használt Excel VBA objektumok listáját ismertettük. Remélem, ez kielégíti az Ön igényeit. Kérjük, nézze meg weboldalunkat. ExcelWIKI.com és tegye meg javaslatait a megjegyzés rovatban.