Turinys
Šis straipsnis yra mano straipsnių ciklo dalis: "Excel" VBA ir makrokomandos - žingsnis po žingsnio išsamus vadovas . Aptarsime tik 10 dažniausiai naudojamų "Excel" VBA objektų sąrašą.
Atsisiųsti praktikos sąsiuvinį
Atsisiųskite šį pratybų sąsiuvinį, kad galėtumėte atlikti pratimus skaitydami šį straipsnį.
VBA objektai.xlsmKas yra VBA objektai?
Svetainė Objektas tai komanda arba kažkas, kas taikoma VBA kode tam tikroms konkrečioms užduotims atlikti.
Svetainė VBA (Visual Basic Application) yra objektinė programavimo kalba. Objektas yra vienas iš VBA elementų.
Objektas turi savo savybę ir metodą. Metodas yra to objekto atliekama operacija, o savybė paaiškina to objekto savybes.
VBA objektų atributai
Norint taikyti VBA objektą, objekte turi būti metodas arba savybė. Šiuos požymius aptarsime čia.
Savybės
VBA objekto savybės galima laikyti objektų nuostatomis."Excel" turi daug objektų. Dauguma "Excel" VBA objektų, su kuriais dirbame, turi savybių.
Pavyzdys:
- Kategorijos objektas turi savybių. Kai kurios iš jų yra Stulpelis , Formulė , Eilutė , Plotis , ir Vertė .
- A Diagrama objektas turi savybių, pvz. Legenda , ChartArea , ChartStyle ir t. t.
- ChartTitle taip pat yra objektas, turintis tokias savybes kaip Šriftas , Formatas , ir Pasienis .
VBA objektų savybių naudojimas:
Galime parašyti VBA kodą ir atlikti šiuos veiksmus:
- Galite ištirti esamus objekto savybių nustatymus ir pagal juos ką nors atlikti.
- Galite keisti objekto savybių nustatymus nustatydami naujas reikšmes.
Pažvelkite į šį VBA sakinį:
Range("E10").Value
Šiame teiginyje, Diapazonas yra objektas, Vertė yra viena iš savybių. VBA sakinyje objektai ir savybės yra išdėstyti šalia vienas kito, atskiriant juos tašku ( taškas, . ). Pirmiausia dedami objektai, tada jų savybės.
Pavyzdžiui, toliau pateikiamoje VBA komandoje nustatomas Vertė savybė Diapazonas E10:100 .
Range("E10").Value = 100
Dėl šio teiginio skaičius 100 rodyti E10 ląstelė .
Metodai:
A metodas yra veiksmas, atliekamas su objektu.Objektai taip pat turi metodus, pvz, Diapazonas objektai turi Skaidrus metodas. Toliau pateikiamas VBA teiginys išvalo Diapazonas . Šis teiginys yra lygiavertis pasirinkimui Diapazonas ir pasirinkę Pagrindinis ➪ Redagavimas ➪ Išvalyti ➪ Išvalyti viską :
Range("A10:C20").Clear
VBA kode metodai atrodo kaip savybės. Metodai prie objektų jungiami su atskyrimo operatoriumi (.). Tačiau metodai ir savybės VBA yra skirtingos sąvokos.
Skaityti daugiau: "Excel" diagrama dingsta, kai duomenys paslepiami (3 sprendimai)
10 dažniausiai naudojamų "Excel" VBA objektų sąrašas
Objektų atveju "Excel" laikosi tam tikros hierarchijos:
Programa → Darbaknygė → Darbalapis → Darbalapis → Diapazonas
Čia išsamiai aptarsime dažniausiai naudojamų "Excel VBA" objektų sąrašą.
1. Taikymo objektas
Svetainė Paraiška objektas yra vienas iš plačiausiai naudojamų "Excel" objektų. Jis naudojamas visai "Excel" programai atvaizduoti.
Metodai | Savybės |
---|---|
Apskaičiuokite | ActiveCell |
CalculateFull | ActiveSheet |
InputBox | ActiveWindow |
Baigti | ActiveWorkbook |
Paleisti | DisplayScrollBars |
Atšaukti | DisplayFormulaBar |
Laukite | Kelias |
StatusBar |
Taikydami šį objektą "Excel" programoje, turime pridėti reikiamą savybę arba metodą.
1 pavyzdys:
Čia naudojome Apskaičiuokite metodas. Šis makrokomandas naudojamas visų atidarytų sąsiuvinių skaičiavimams.
Sub Calculate_All_Opened_Workbooks() Application.Calculate End Sub
2 pavyzdys:
Toliau pateiktame pavyzdyje naudojome DisplayScrollBars savybė su Paraiška objektas. Šio makrokomandos tikslas - paslėpti slinkties juostą.
Sub Hide_Status_Bar() Application.DisplayScrollBars = False End Sub
Čia pateikiame būseną Klaidingas , o tai reiškia, kad nebus rodomos "Excel" lapo slinkties juostos.
Skaityti daugiau: Kaip atidaryti darbaknygę iš kelio naudojant "Excel VBA" (4 pavyzdžiai)
2. Darbaknygių objektas
Darbo sąsiuviniai objektas yra susijęs su darbo knyga. Jis žymi šiuo metu "Excel" programoje atidarytų darbo knygų sąrašą.
Metodai | Savybės |
---|---|
Pridėti | Paraiška |
Išsiregistravimas | Skaičiuokite |
Uždaryti | Kūrėjas |
Atviras | Prekė |
Tėvai |
1 pavyzdys:
Čia pritaikėme paprastą VBA kodą, pagrįstą "Workbooks" objektu, kuris uždarys "Excel" sąsiuvinį.
Sub Uždaryti_All_Opened_Workbooks() Workbooks.Close End Sub
2 pavyzdys:
Šiame pavyzdyje bus pridėtas naujas kintamasis puslapis_1 apie Disney.xlsx darbo knyga.
Sub Add_Variable_to_Specific_Workbook() Set page_1 = Workbooks.Item("Disney.xlsx") End Sub
3. Darbo knygos objektas
Svetainė Darbo knyga objektas vaizduoja vieną sąsiuvinį. Jis yra narys Darbo sąsiuviniai kurie šiuo metu yra aktyvūs arba atidaryti. darbo knyga - tai darbalapių rinkinys.
Metodai | Savybės |
---|---|
Aktyvus | ActiveChart |
AddToFavourite | ActiveSheet |
Uždaryti | AutoSaveOn |
DeleteNumberFormat | Pilnas pavadinimas |
Išsaugoti | Vartotojo statusas |
SaveAs |
1 pavyzdys:
Norime uždaryti dabartinį sąsiuvinį.
Sub Uždaryti_Single_Workbook() ActiveWorkbook.Close End Sub
Panašų kodą pritaikėme ir uždarymo sąsiuviniui. Objektas Workbooks taikomas visiems atidarytiems sąsiuviniams. Tačiau objektas Workbook taikomas tik aktyviam sąsiuviniui.
2 pavyzdys:
Šiame pavyzdyje pavadinsime ląstelę naudodami Darbo knyga objektas.
Sub Name_A_Cell() ActiveWorkbook.Names.Add Name:="myName", RefersToR1C1:="="=Sheet1!R5C5" End Sub
4. "Sheets" objektas
Svetainė Lapai objektas yra susijęs su visų rūšių nurodyto arba aktyvaus "Excel" sąsiuvinio lapais. Lapai gali būti darbalapiai, diagramų lapai, mikrolapai.
Metodai | Savybės |
---|---|
Pridėti | Paraiška |
Pridėti2 | Skaičiuokite |
Kopijuoti | Prekė |
Ištrinti | Tėvai |
Perkelti | Matomas |
PrintOut | |
PrintPreview | |
PasirinkiteSkaičiuoti |
1 pavyzdys:
Šis VBA kodas suaktyvins 2. sąsiuvinio lape.
Sub Activate_Workbook() Worksheets(2).Activate End Sub
2 pavyzdys:
Šiame pavyzdyje pridėsime naują lapą po 1. lapas.
Sub Add_New_Sheet() Sheets.Add after:=Sheets(1) End Sub
5. Darbalapių objektas
Šis Darbo lapai objektas yra Lapai objektas. Tai yra tik darbalapių rinkinys. Tačiau Lapai objektą taip pat sudaro diagramų lapai ir mikrolapai.
Metodai | Savybės |
---|---|
Kopijuoti | Paraiška |
Ištrinti | Skaičiuokite |
Perkelti | Kūrėjas |
PrintOut | Prekė |
PrintPreview | Tėvai |
Pasirinkite | Matomas |
Pridėti | |
Pridėti2 |
1 pavyzdys:
Jis suaktyvins 2. šio sąsiuvinio darbalapį
Sub Activate_Worksheet() Worksheets(2).Activate End Sub
Taip pat galime naudoti Lapai objektą. Tačiau jei naudosime Lapai objektas, kuris gali suaktyvinti diagramą arba mikrolapą, taip pat priklauso nuo nurodytos darbo knygos vietos.
2 pavyzdys:
Nukopijuosime lapą norimoje darbo knygos vietoje.
Sub Copy_A_Worksheet() Worksheets("Disney").Copy Before:=Worksheets("Sheet1") End Sub
Panašūs skaitiniai
- 22 "Excel VBA" makrokomandų pavyzdžiai
- 20 praktinių kodavimo patarimų, kaip įvaldyti "Excel VBA
- Kaip rašyti VBA kodą programoje "Excel" (paprastais žingsniais)
- "Excel" VBA makrokomandų tipai (trumpas vadovas)
- Įvadas į VBA funkcijas ir programas
6. Darbalapio objektas
Svetainė Darbalapis objektas yra Darbo lapai . Jis atspindi tik vieną darbo lapą. Šiame skirsnyje bus parodytas VBA kodo pavyzdys, pagrįstas Darbalapis objektas, kuris pervadina darbalapį.
Metodai | Savybės |
---|---|
Suaktyvinti | Paraiška |
Apskaičiuokite | Ląstelės |
CheckSpelling | Stulpeliai |
Kopijuoti | Komentarai |
Ištrinti | Pavadinimas |
Įvertinkite | Kitas |
Perkelti | Kontūras |
Pasta | Puslapio sąranka |
PasteSpecial | Tėvai |
PrintOut | Diapazonas |
PrintPreview | Eilutės |
SaveAs | Formos |
Pasirinkite | Rūšiuoti |
Skirtukas | |
Tipas | |
Matomas |
1 pavyzdys:
Pritaikius šį VBA kodą pasikeis aktyviojo darbalapio pavadinimas.
Sub Rename_A_Worksheet() ActiveSheet.Name = "Duomenų rinkinys -2" End Sub
2 pavyzdys:
Norime sužinoti apie dabartinį darbalapį. Taikykite šį VBA kodą.
Sub Show_Worksheet_Name() MsgBox ActiveSheet.Name End Sub
7. Kategorijos objektas
Svetainė Diapazonas objektas yra susijęs su Excel failo ląstelėmis. Jis naudojamas vienai ląstelei, eilutei, stulpeliui arba tam tikram ląstelių, eilučių ar stulpelių skaičiui iš Excel darbalapio pasirinkti. Argumente turime pateikti ląstelės nuorodą.
Metodai | Savybės |
---|---|
Suaktyvinti | Adresas |
Automatinis pildymas | Paraiška |
Apskaičiuokite | Sritys |
Skaidrus | Ląstelės |
Kopijuoti | Stulpelis |
Ištrinti | Skaičiuokite |
Rasti | Pabaiga |
Įdėkite | Šriftas |
PasteSpecial | Aukštis |
Pakeisti | Prekė |
Paleisti | Kairėje pusėje |
Pasirinkite | ListObject |
Rodyti | Pavadinimas |
Rūšiuoti | Kitas |
Lentelė | Tėvai |
Diapazonas | |
Eilutė | |
Eilutės | |
Viršuje | |
Patvirtinimas | |
Vertė | |
Plotis |
1 pavyzdys:
Tai pavyzdinis VBA kodas, kuriuo pasirenkamos diapazono ląstelės B5:D5 .
Sub Select_A_Range() Range("B5:D5").Select End Sub
2 pavyzdys:
Šiame pavyzdyje iš aktyviojo lapo nukopijuojamas tam tikras diapazonas.
Sub Copy_A_Range1() Range("A1:E1").Copy End Sub
8. Formos objektas
Svetainė Formos objektas yra susijęs su visomis figūromis, egzistuojančiomis darbalapyje. Naudodamiesi šiuo objektu galime pasirinkti ir ištrinti arba atlikti kitas užduotis.
Metodai | Savybės |
---|---|
AddCallout | Paraiška |
AddConnector | Skaičiuokite |
AddLine | Kūrėjas |
AddPicture | Tėvai |
AddShape | Diapazonas |
Prekė | |
SelectAll |
1 pavyzdys:
Šis VBA kodas iš darbalapio parinks visų rūšių figūras.
Sub All_Shapes_of_A_Worksheet() ActiveSheet.Shapes.SelectAll End Sub
2 pavyzdys:
Šiame pavyzdyje norimą veiksmą taikysime esamoms aktyvaus darbalapio formoms.
Sub Apply_A_Procedure_on_Shapes() ActiveSheet.Shapes(1).OnAction = "ShapeClick" End Sub
9. Formos objektas
Svetainė Forma objektas yra formų dalis. Jis nurodo vieną aktyvaus darbalapio formą. Jis naudojamas kartu su Formos objektas.
Metodai | Savybės |
---|---|
Taikyti | Paraiška |
Kopijuoti | AutoShapeType |
Iškirpti | BackgroundStyle |
Ištrinti | Diagrama |
Dublikatas | Jungtis |
Pasirinkite | Užpildykite |
Aukštis | |
Kairėje pusėje | |
Pavadinimas | |
OnAction | |
Tėvai | |
Atspindys | |
Pavadinimas | |
Viršuje | |
Tipas | |
Matomas | |
Plotis |
Pavyzdys:
Šis paprastas VBA kodas naudojamas žvaigždei sukurti su 5 kraštus.
Sub Create_A_Shape() ActiveSheet.Shapes.AddShape msoShape5pointStar, 300, 100, 60, 60 End Sub
Pakeitus komandą msoShape5pointStar, galime nupiešti bet kokią formą.
10. ListObject objektas
ListObject yra dalis ListObjects Objektas . A ListObject nurodo vieną darbalapio lentelę.
Metodai | Savybės |
---|---|
Ištrinti | Aktyvus |
Paskelbti | Paraiška |
Atnaujinti | Automatinis filtras |
Pakeisti dydį | Komentaras |
Kūrėjas | |
Pavadinimas | |
Tėvai | |
Diapazonas | |
Rūšiuoti | |
Santrauka |
Pavyzdys:
Šiame pavyzdyje iš lentelės išgaunami duomenys ir saugomi masyve.
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
Skaityti daugiau: "Excel" VBA masyvui užpildyti ląstelių vertėmis (4 tinkami pavyzdžiai)
Išvada
Šiame straipsnyje aprašėme dažniausiai naudojamų "Excel" VBA objektų sąrašą. Tikiuosi, kad tai patenkins jūsų poreikius. Peržiūrėkite mūsų svetainę ExcelWIKI.com ir pateikite savo pasiūlymus komentarų lauke.