Objektegenskaper och metoder i Excel 2016 VBA-programmering

Även om det är viktigt att veta hur man refererar till objekt, kan du inte göra någon användbar Excel VBA-programmering genom att bara hänvisa till ett objekt. För att åstadkomma något meningsfullt måste du göra en av två saker:

  • Läs eller ändra ett objekts egenskaper.

  • Ange en åtgärdsmetod som ska användas med ett objekt.

Med bokstavligen tusentals egenskaper och metoder tillgängliga kan du lätt bli överväldigad. Kom bara ihåg att du aldrig behöver använda de flesta av de tillgängliga egenskaperna och metoderna.

Objektegenskaper

Varje objekt har egenskaper. Du kan tänka på egenskaper som attribut som beskriver objektet. Ett objekts egenskaper avgör hur det ser ut, hur det beter sig och till och med om det är synligt. Med VBA kan du göra två saker med ett objekts egenskaper:

  • Undersök den aktuella inställningen för en fastighet.

  • Ändra egenskapens inställning.

Till exempel har ett encelligt Range-objekt en egenskap som heter Value. Egenskapen Value lagrar värdet i cellen. Du kan skriva VBA-kod för att visa egenskapen Value, eller så kan du skriva VBA-kod för att ställa in Value-egenskapen till ett specifikt värde. Följande makro använder den inbyggda VBA-funktionen MsgBox för att få fram en ruta som visar värdet i cell A1 på Sheet1 i den aktiva arbetsboken:

Objektegenskaper och metoder i Excel 2016 VBA-programmering

Den här meddelanderutan visar ett Range-objekts Value-egenskap.

Sub ShowValue()
 Innehåll = Arbetsblad(“Sheet1”).Omfång(“A1”).Värde
 MsgBox innehåll
Avsluta Sub

MsgBox är förresten en mycket användbar funktion. Du kan använda den för att visa resultat medan Excel kör din VBA-kod.

Koden i föregående exempel visar den aktuella inställningen för en cells värde-egenskap. Vad händer om du vill ändra inställningen för den egenskapen? Följande makro ändrar värdet i cell A1 genom att ändra cellens värde-egenskap:

Sub ChangeValue()
 Arbetsblad(“Sheet1”).Omfång(“A1”).Värde = 994,92
Avsluta Sub

Efter att Excel har kört den här proceduren innehåller cell A1 på Blad1 i den aktiva arbetsboken värdet 994,92. Om den aktiva arbetsboken inte har ett ark med namnet Sheet1, är resultatet av att köra det makrot ett felmeddelande. VBA följer bara instruktionerna och det kan inte fungera med ett ark som inte finns.

Varje objekt har sin egen uppsättning egenskaper, även om vissa egenskaper är gemensamma för många objekt. Till exempel har många (men inte alla) objekt en Visible-egenskap. De flesta objekt har också en Name-egenskap.

Vissa objektegenskaper är skrivskyddade egenskaper, vilket innebär att din kod kan få egenskapens värde, men den kan inte ändra det.

En samling är också ett föremål. Det betyder att en samling också har egenskaper. Du kan till exempel bestämma hur många arbetsböcker som är öppna genom att gå till egenskapen Räkna i samlingen Arbetsböcker. Följande VBA-procedur visar en meddelanderuta som talar om hur många arbetsböcker som är öppna:

Sub CountBooks()
 MsgBox Workbooks.Count
Avsluta Sub

Objektmetoder

Förutom egenskaper har objekt metoder. En metod är en handling du utför med ett objekt. En metod kan ändra ett objekts egenskaper eller få objektet att göra något.

Detta enkla exempel använder metoden ClearContents på ett Range-objekt för att radera innehållet i 12 celler på det aktiva arket:

Sub ClearRange()
 Range(“A1:A12”). Rensa innehåll
Avsluta Sub

Vissa metoder tar ett eller flera argument. Ett argument är ett värde som ytterligare specificerar åtgärden som ska utföras. Du placerar argumenten för en metod efter metoden, åtskilda av ett mellanslag. Flera argument separeras med kommatecken.

Följande exempel aktiverar Sheet1 (i den aktiva arbetsboken) och kopierar sedan innehållet i cell A1 till cell B1 med hjälp av Range-objektets Copy-metod. I det här exemplet har kopieringsmetoden ett argument, vilket är destinationsintervallet för kopieringsoperationen:

Sub CopyOne()
 Arbetsblad(“Sheet1”). Aktivera
 Range(“A1”). Kopiera intervall(“B1”)
Avsluta Sub

Observera att kalkylbladsreferensen uteslöts när Range-objekten refererades. Detta kan göras säkert eftersom ett uttalande för att aktivera Sheet1 användes. (med hjälp av Aktivera-metoden).

Ett annat sätt att ange ett argument för en metod är att använda det officiella namnet på argumentet följt av ett kolon och ett likhetstecken. Att använda namngivna argument är valfritt, men att göra det kan ofta göra din kod lättare att förstå. Det andra påståendet i CopyOne-proceduren skulle kunna skrivas så här:

Range(“A1”).Kopiera Destination:=Range(“B1”)

Lägg märke till den lilla uppmaningen när uttalandet skrivs. Den uppmaningen visar det officiella namnet på argumentet.

Objektegenskaper och metoder i Excel 2016 VBA-programmering

VBE visar en lista med argument medan du skriver.

Eftersom en samling också är ett objekt har samlingar metoder. Följande makro använder Add-metoden för Workbooks-samlingen:

Sub AddAWorkbook()
 Arbetsböcker. Lägg till
Avsluta Sub

Som du kan förvänta dig skapar detta uttalande en ny arbetsbok. Med andra ord läggs en ny arbetsbok till i Workbooks-samlingen. När du har kört detta makro kommer en ny arbetsbok att vara den aktiva arbetsboken.

Objekthändelser

Det finns ytterligare ett ämne som du behöver veta om: evenemang. Objekt reagerar på olika händelser som inträffar. Till exempel, när du arbetar i Excel och du aktiverar en annan arbetsbok, inträffar en Workbook Activate-händelse. Du kan till exempel ha ett VBA-makro som är utformat för att köras när en Activate-händelse inträffar för ett visst Workbook-objekt.

Excel stöder många händelser, men alla objekt kan inte svara på alla händelser. Och vissa objekt reagerar inte på några händelser. De enda händelser du kan använda är de som gjorts tillgängliga av programmerarna för Microsoft Excel.


Hur man blockerar Microsoft Word från att öppna filer i skrivskyddat läge på Windows

Hur man blockerar Microsoft Word från att öppna filer i skrivskyddat läge på Windows

Hur man blockerar Microsoft Word från att öppna filer i skrivskyddat läge på Windows Microsoft Word öppnar filer i skrivskyddat läge, vilket gör det omöjligt att redigera dem? Oroa dig inte, metoderna finns nedan

Hur man åtgärdar felaktig utskrift av Microsoft Word-dokument

Hur man åtgärdar felaktig utskrift av Microsoft Word-dokument

Så här åtgärdar du fel vid utskrift av felaktiga Microsoft Word-dokument Fel vid utskrift av Word-dokument med ändrade teckensnitt, röriga stycken, saknad text eller förlorat innehåll är ganska vanligt. Men gör det inte

Radera ritningar med penna och överstrykningspenna på dina PowerPoint-bilder

Radera ritningar med penna och överstrykningspenna på dina PowerPoint-bilder

Om du har använt pennan eller överstrykningspennan för att rita på dina PowerPoint-bilder under en presentation, kan du spara ritningarna till nästa presentation eller radera dem så att nästa gång du visar den börjar du med rena PowerPoint-bilder. Följ dessa instruktioner för att radera ritningar med penna och överstrykningspenna: Radera linjer ett på […]

Stilbiblioteksinnehåll i SharePoint 2010

Stilbiblioteksinnehåll i SharePoint 2010

Stilbiblioteket innehåller CSS-filer, XSL-filer (Extensible Stylesheet Language) och bilder som används av fördefinierade mallsidor, sidlayouter och kontroller i SharePoint 2010. För att hitta CSS-filer i stilbiblioteket på en publiceringswebbplats: Välj Webbplatsåtgärder→Visa Allt webbplatsinnehåll. Innehållet på webbplatsen visas. Style-biblioteket ligger i […]

Formatera siffror i tusentals och miljoner i Excel-rapporter

Formatera siffror i tusentals och miljoner i Excel-rapporter

Överväldiga inte din publik med gigantiska siffror. I Microsoft Excel kan du förbättra läsbarheten för dina instrumentpaneler och rapporter genom att formatera dina siffror så att de visas i tusentals eller miljoner.

Hur man delar och följer SharePoint-webbplatser

Hur man delar och följer SharePoint-webbplatser

Lär dig hur du använder SharePoints sociala nätverksverktyg som låter individer och grupper kommunicera, samarbeta, dela och ansluta.

Hur man konverterar datum till Julian-format i Excel

Hur man konverterar datum till Julian-format i Excel

Julianska datum används ofta i tillverkningsmiljöer som en tidsstämpel och snabbreferens för ett batchnummer. Denna typ av datumkodning tillåter återförsäljare, konsumenter och serviceagenter att identifiera när en produkt tillverkades och därmed produktens ålder. Julianska datum används också i programmering, militären och astronomi. Annorlunda […]

Hur man skapar en Access Web App

Hur man skapar en Access Web App

Du kan skapa en webbapp i Access 2016. Så vad är en webbapp egentligen? Tja, webben betyder att den är online, och appen är bara en förkortning för "applikation". En anpassad webbapp är en onlinedatabasapplikation som nås från molnet med en webbläsare. Du bygger och underhåller webbappen i skrivbordsversionen […]

Snabbstartsfält i SharePoint 2010

Snabbstartsfält i SharePoint 2010

De flesta sidor i SharePoint 2010 visar en lista med navigeringslänkar i snabbstartsfältet till vänster på sidan. Snabbstartsfältet visar länkar till utvalt webbplatsinnehåll som listor, bibliotek, webbplatser och publiceringssidor. Snabbstartsfältet innehåller två mycket viktiga länkar: Länken Allt webbplatsinnehåll: […]

Vad betyder lösarens felmeddelanden i Excel?

Vad betyder lösarens felmeddelanden i Excel?

För enkla problem hittar Solver i Excel vanligtvis snabbt de optimala Solver-variabelvärdena för objektivfunktionen. Men i vissa fall har Solver problem med att hitta Solver-variabelvärdena som optimerar objektivfunktionen. I dessa fall visar Solver vanligtvis ett meddelande eller ett felmeddelande som beskriver eller diskuterar problemet som […]