Acest tutorial vă va învăța cum să definiți variabilele obiect folosind instrucțiunea Set din VBA.
Definirea variabilelor de obiect
Obiectele sunt piatra de temelie a Microsoft Office - fără obiecte, nu putem realiza nimic. În Excel, obiectele includ Caietul de lucru, Foaia de lucru sau Obiectele de gamă. În Microsoft Word, exemplele sunt obiectul Document sau Tabel. Fiecare obiect are o varietate de Proprietăți și Metode care poate fi programat pentru a controla comportamentul acelui obiect.
Declararea variabilei obiectului
Înainte să putem referi obiectul în cod și, prin urmare, să controlăm obiectul, trebuie să declarăm obiectul. Putem face acest lucru folosind declarația Dim.
123456 | Dim wkb ca registru de lucruDim wks ca foaie de lucruDim Rng ca RangeDim wdDoc ca documentDim wdTbl ca TabelDim shp ca Shape |
Acest Dim declarația poate apărea în cadrul unei proceduri:
sau în afara unei proceduri la nivel de modul:
Dacă variabila este declarată la nivel de modul (în afara procedurii), variabila poate fi utilizată în întregul modul.
Dacă variabila obiect este declarată cu declarația publică, atunci variabila poate fi utilizată în întregul proiect VBA:
Setați valoarea
Odată ce ați declarat obiectul, trebuie să atribuiți o valoare obiectului. Acest lucru trebuie făcut folosind Declarație set și se poate face numai în cadrul unui Procedură.
12345 | Sub SetObjects ()Setați wkb = ActiveWorkbookSet wks = Sheet1Setați rng = Range („A1: G4”)Sfârșitul Sub |
Notă: Aceasta este diferită de atribuirea de valori variabilelor care nu sunt obiecte. TREBUIE să utilizați instrucțiunea Set pentru a atribui obiectul variabilei. În caz contrar, veți primi o eroare:
După ce ați atribuit o valoare obiectului, puteți scrie cod pentru a controla comportamentul sau pentru a manipula obiectul.
Programare VBA | Generatorul de coduri funcționează pentru dvs.!
Exemple de obiecte în Excel
Obiect de registru de lucru
După ce ați declarat o variabilă de registru de lucru, puteți atribui un registru de lucru acelui obiect și puteți utiliza Proprietățile și metodele disponibile pentru a manipula acel obiect. În exemplul de mai jos vom salva un registru de lucru.
123456789101112 | Sub WorkbookObject ()'declarați obiectul registrului de lucruDim wkb ca registru de lucru'atribuiți un registru de lucru nesalvat obiectuluiSet wkb = Workbooks („Book1”)'salvați registrul de lucruwkb.SaveAs "C: \ data \ testbook.xlsx"'închideți registrul de lucruwkb.closenu uitați să eliberați obiectulSet wkb = NimicSfârșitul Sub |
Foaie de lucru Obiect
În mod similar, puteți manipula o foaie de lucru sau foi de lucru după ce ați declarat foaia de lucru ca variabilă. În exemplul de mai jos, redenumim Sheet1 și Sheet2.
12345678910111213 | Sub Foaie de lucru Obiect ()Dim wks1 ca foaie de lucruDim wks2 ca foaie de lucru'initializeaza obiecteleSetați wks1 = Sheet1Set wks2 = Sheet2'redenumiți foilewks1.Name = "Clienți"wks2.Name = "Produse"'setează obiectele la nimicwks1 = Nimicwks2 = NimicSfârșitul Sub |
V-ați săturat să căutați exemple de cod VBA? Încercați AutoMacro!
Obiectul Range
Obiectul Range este unul dintre cele mai utile obiecte de manipulat în Excel. În exemplul de mai jos, îndrăznețăm gama A1 la E1 și o formatăm cu o margine inferioară.
12345678910111213 | Sub RangeObject ()Dim rng1 ca interval'Intializați gamaSetați rng = Range („A1: E1”)„îndrăznește intervalul și setează marginea de josrng.Font.Bold = AdevăratCu rng1.Borders (xlEdgeBottom).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Greutate = xlThinSe termina cuSfârșitul Sub |
Obiect Shape
De asemenea, puteți utiliza variabile de obiect pentru a lucra cu forme.
123456789101112 | Sub AddShape ()Dim shp Ca formă'creați formaSetați shp = ActiveDocument.Shapes.AddShape (msoShapeSmileyFace, 68.25, 225.75, 136.5, 96 #)Cu shp„schimbați culoarea și stilul interior.Fill.ForeColor.RGB = RGB (255, 255, 0).Umple.Solid'ajustează zâmbetul!.Adjustments.Item (1) = 0,07181Se termina cuSfârșitul Sub |