Lista över 10 mest använda Excel VBA-objekt (attribut och exempel)

  • Dela Detta
Hugh West

Den här artikeln är en del av min serie: Excel VBA & Macros - en komplett guide steg för steg Vi kommer att diskutera en lista med endast 10 mest använda Excel VBA-objekt.

Ladda ner övningsboken

Ladda ner den här arbetsboken för att träna medan du läser den här artikeln.

VBA-objekt.xlsm

Vad är VBA-objekt?

En Objekt är ett kommando eller något som används i en VBA-kod för att utföra vissa specifika uppgifter.

VBA (Visual Basic Application) är ett objektorienterat programmeringsspråk. Objektet är en av delarna i VBA.

Ett objekt har en egenskap och en metod. Metoden är den operation som utförs av objektet och egenskapen förklarar objektets egenskaper.

Egenskaper för VBA-objekt

För att tillämpa ett VBA-objekt måste det finnas en metod eller egenskap i objektet. Vi kommer att diskutera dessa attribut här.

Egenskaper

Egenskaper för VBA-objekt kan betraktas som inställningar av objekt.

Excel har många objekt och de flesta objekt i Excel VBA som vi arbetar med har egenskaper.

Exempel:

  • Objekt för räckvidd har egenskaper. Några av dem är Kolumn , Formel , Rad , Bredd , och Värde .
  • A Diagram objektet har egenskaper, t.ex. Legend , ChartArea , ChartStyle och så vidare.
  • ChartTitle är också ett objekt, med egenskaper som t.ex. Typsnitt , Format , och Gränsen .

Användning av VBA-objektegenskaper:

Vi kan skriva VBA-kod för att göra följande:

  • Du kan undersöka ett objekts aktuella egenskapsinställningar och göra något baserat på dessa inställningar.
  • Du kan ändra objektets egenskapsinställningar genom att ange nya värden.

Titta på det här VBA-kommandot:

Range("E10").Värde

I detta uttalande, Utbud är ett objekt, Värde är en av egenskaperna. I VBA-angivelsen placeras objekt och egenskaper sida vid sida och separeras med en punkt ( en punkt, . ). Först placeras objekt och sedan deras egenskaper.

Följande VBA-anvisning anger till exempel att Värde egenskap hos Intervall E10:100 .

 Range("E10").Value = 100 

Detta uttalande kommer att leda till att antalet 100 som ska visas i Cell E10 .

Metoder:

A metod är en åtgärd som genomförs på ett objekt.

Objekt har också metoder, till exempel, Utbud objekt har en Klart metod. Följande VBA-anvisning rensar en Utbud Detta uttalande är detsamma som att välja Utbud och sedan välja Hem ➪ Redigering ➪ Rensa ➪ Rensa alla :

 Range("A10:C20").Clear 

I VBA-kod ser metoder ut som egenskaper. Metoder kopplas till objekt med en separationsoperator (.). Metoder och egenskaper är dock olika begrepp i VBA.

Läs mer: Excel-diagrammet försvinner när data döljs (3 lösningar)

Lista över 10 mest använda VBA-objekt i Excel

Excel följer en hierarki när det gäller objekt:

Program → Arbetsbok → Arbetsblad → Område

Här kommer vi att diskutera en lista över de vanligaste objekten i Excel VBA i detalj.

1. Objekt för ansökan

Ansökan är ett av de mest använda objekten i Excel och används för att representera hela Excel-programmet.

Metoder Egenskaper
Beräkna ActiveCell
CalculateFull ActiveSheet
InputBox ActiveWindow
Sluta med ActiveWorkbook
Kör DisplayScrollBars
Ångra DisplayFormulaBar
Vänta Sökväg
StatusBar

Vi måste lägga till den önskade egenskapen eller metoden när vi tillämpar det här objektet i Excel.

Exempel 1:

Här har vi använt oss av Beräkna Metod. Detta makro används för beräkning av alla öppna arbetsböcker.

 Sub Calculate_All_Opened_Workbooks() Application.Calculate End Sub 

Exempel 2:

I exemplet nedan använde vi DisplayScrollBars med egenskapen Ansökan Syftet med detta makro är att dölja rullgardinsfältet.

 Sub Hide_Status_Bar() Application.DisplayScrollBars = False End Sub 

Här anger vi status Falskt , vilket innebär att den inte visar rullgardinslinjerna i Excel-arket.

Läs mer: Öppna arbetsbok från sökvägen med Excel VBA (4 exempel)

2. Arbetsböcker Objekt

Arbetsböcker objektet är relaterat till arbetsboken. Det anger listan över de arbetsböcker som för närvarande är öppna i ett Excel-program.

Metoder Egenskaper
Lägg till Ansökan
Utcheckning Räkna
Stäng Skapare
Öppna Artikel
Förälder

Exempel 1:

Här tillämpar vi en enkel VBA-kod baserad på objektet Workbooks som stänger Excel-arbetsboken.

 Sub Close_All_Opened_Workbooks() Workbooks.Close End Sub 

Exempel 2:

I det här exemplet läggs en ny variabel till page_1 på den Disney.xlsx arbetsbok.

 Sub Add_Variable_to_Specific_Workbook() Set page_1 = Workbooks.Item("Disney.xlsx") End Sub 

3. Arbetsboksobjekt

Arbetsbok objektet representerar en enskild arbetsbok. Det är en medlem av Arbetsböcker som för närvarande är aktiva eller öppna. En arbetsbok är snarare en samling arbetsblad.

Metoder Egenskaper
Aktiv ActiveChart
AddToFavourite ActiveSheet
Stäng AutoSaveOn
DeleteNumberFormat Fullständigt namn
Spara UserStatus
SaveAs

Exempel 1:

Vi vill stänga den aktuella arbetsboken.

 Sub Close_Single_Workbook() ActiveWorkbook.Close End Sub 

Vi tillämpade en liknande kod på den stängda arbetsboken. Objektet Workbooks tillämpas på alla öppnade arbetsböcker, men objektet Workbook tillämpas bara på den aktiva arbetsboken.

Exempel 2:

I det här exemplet namnger vi en cell med hjälp av Arbetsbok objekt.

 Sub Name_A_Cell() ActiveWorkbook.Names.Add Name:="myName", RefersToR1C1:="="=Sheet1!R5C5" End Sub 

4. Objekt för ark

Ark objektet är relaterat till alla typer av ark i den angivna eller aktiva Excel-arbetsboken. Ark kan vara arbetsblad, diagramblad, mikroblad.

Metoder Egenskaper
Lägg till Ansökan
Add2 Räkna
Kopiera Artikel
Ta bort Förälder
Flytta Synlig
Utskrift
PrintPreview
VäljBeräkna

Exempel 1:

Denna VBA-kod aktiverar 2:a ark i arbetsboken.

 Sub Activate_Workbook() Arbetsblad(2).Activate End Sub 

Exempel 2:

I det här exemplet lägger vi till ett nytt blad efter 1:a ark.

 Sub Add_New_Sheet() Sheets.Add after:=Sheets(1) End Sub 

5. Objekt för arbetsblad

Denna Arbetsblad objektet är en del av Ark objektet. Det är en samling av endast arbetsbladen. Ark Objektet omfattar även diagramblad och mikroblad.

Metoder Egenskaper
Kopiera Ansökan
Ta bort Räkna
Flytta Skapare
Utskrift Artikel
PrintPreview Förälder
Välj Synlig
Lägg till
Add2

Exempel 1:

Den aktiverar 2:a arbetsbladet i följande arbetsbok

 Sub Activate_Worksheet() Arbetsblad(2).Activate End Sub 

Vi kan också använda Ark objektet. Men om vi använder Ark objektet som kan aktivera ett diagram eller mikroblad beror också på var den angivna arbetsboken är placerad.

Exempel 2:

Vi kopierar ett blad till den plats i arbetsboken som vi vill ha.

 Sub Copy_A_Worksheet() Worksheets("Disney").Copy Before:=Worksheets("Sheet1") End Sub 

Liknande läsningar

  • 22 makroexempel i Excel VBA
  • 20 praktiska kodningstips för att behärska Excel VBA
  • Hur man skriver VBA-kod i Excel (med enkla steg)
  • Typer av VBA-makron i Excel (en snabbguide)
  • Introduktion till VBA-funktioner och -tillämpningar

6. Objekt för arbetsblad

Arbetsblad objektet är en del av Arbetsblad Den representerar endast ett enda arbetsblad. I det här avsnittet visas ett exempel på VBA-kod baserad på Arbetsblad objekt som byter namn på ett arbetsblad.

Metoder Egenskaper
Aktivera Ansökan
Beräkna Celler
CheckSpelling Kolumner
Kopiera Kommentarer
Ta bort Namn
Utvärdera Nästa
Flytta Översikt
Klistra in PageSetup
Klistra inSpecial Förälder
Utskrift Utbud
PrintPreview Rader
SaveAs Former
Välj Sortera
Fliken
Typ
Synlig

Exempel 1:

Namnet på det aktiva arbetsbladet ändras efter att du har tillämpat den här VBA-koden.

 Sub Rename_A_Worksheet() ActiveSheet.Name = "Data Set -2" End Sub 

Exempel 2:

Vi vill veta vad det aktuella arbetsbladet är. Använd följande VBA-kod.

 Sub Show_Worksheet_Name() MsgBox ActiveSheet.Name End Sub 

7. Objekt för intervallet

Utbud objektet är relaterat till celler i Excel-filen. Det används för att välja en enda cell, rad, kolumn eller ett visst antal celler, rader eller kolumner från ett Excel-arbetsblad. Vi måste ange cellreferensen i argumentet.

Metoder Egenskaper
Aktivera Adress
AutoFill Ansökan
Beräkna Områden
Klart Celler
Kopiera Kolumn
Ta bort Räkna
Hitta Slut
Infoga Typsnitt
Klistra inSpecial Höjd
Ersätt Artikel
Kör Vänster
Välj ListObject
Visa Namn
Sortera Nästa
Tabell Förälder
Utbud
Rad
Rader
Topp
Validering
Värde
Bredd

Exempel 1:

Detta är ett exempel på VBA-kod som väljer celler i intervallet B5:D5 .

 Sub Select_A_Range() Range("B5:D5").Select End Sub 

Exempel 2:

Det här exemplet kopierar ett visst intervall från det aktiva arket.

 Sub Copy_A_Range1() Range("A1:E1").Copy End Sub 

8. Objektet Shapes

Former objektet är relaterat till alla former som finns i ett kalkylblad. Vi kan välja och ta bort eller utföra andra uppgifter med hjälp av detta objekt.

Metoder Egenskaper
AddCallout Ansökan
AddConnector Räkna
AddLine Skapare
AddPicture Förälder
AddShape Utbud
Artikel
SelectAll

Exempel 1:

Den här VBA-koden väljer alla typer av former från ett arbetsblad.

 Sub All_Shapes_of_A_Worksheet() ActiveSheet.Shapes.SelectAll End Sub 

Exempel 2:

I det här exemplet tillämpar vi den önskade åtgärden på de befintliga formerna i det aktiva arbetsbladet.

 Sub Apply_A_Procedure_on_Shapes() ActiveSheet.Shapes(1).OnAction = "ShapeClick" End Sub 

9. Shape Object

Form objektet är en del av Shapes. Det anger en enskild form i ett aktivt arbetsblad. Det används tillsammans med Former objekt.

Metoder Egenskaper
Ansök på Ansökan
Kopiera AutoShapeType
Skär BackgroundStyle
Ta bort Diagram
Dubbla Anslutning
Välj Fyll på
Höjd
Vänster
Namn
OnAction
Förälder
Reflektion
Titel
Topp
Typ
Synlig
Bredd

Exempel:

Den här enkla VBA-koden används för att skapa en stjärna med 5 kanter.

 Sub Create_A_Shape() ActiveSheet.Shapes.AddShape msoShape5pointStar, 300, 100, 60, 60 End Sub 

Vi kan rita vilken form som helst genom att ändra kommandot msoShape5pointStar.

10. ListObject Objekt

ListObject är en del av ListObjects Objekt . A ListObject anger en enda tabell i arbetsbladet.

Metoder Egenskaper
Ta bort Aktiv
Publicera Ansökan
Uppdatera AutoFilter
Ändra storlek Kommentar
Skapare
Namn
Förälder
Utbud
Sortera
Sammanfattning

Exempel:

I det här exemplet extraheras data från en tabell och lagras i matrisen.

 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 

Läs mer: Excel VBA för att fylla matriser med cellvärden (4 lämpliga exempel)

Slutsats

I den här artikeln har vi beskrivit de vanligaste Excel VBA-objekten. Jag hoppas att detta uppfyller dina behov. Ta en titt på vår webbplats. ExcelWIKI.com och ge dina förslag i kommentarsfältet.

Hugh West är en mycket erfaren Excel-tränare och analytiker med över 10 års erfarenhet i branschen. Han har en kandidatexamen i redovisning och ekonomi och en magisterexamen i företagsekonomi. Hugh har en passion för undervisning och har utvecklat ett unikt undervisningssätt som är lätt att följa och förstå. Hans expertkunskap om Excel har hjälpt tusentals studenter och yrkesverksamma över hela världen att förbättra sina färdigheter och utmärka sig i sina karriärer. Genom sin blogg delar Hugh med sig av sin kunskap med världen, och erbjuder gratis Excel-handledning och onlineutbildning för att hjälpa individer och företag att nå sin fulla potential.