Cellreferens i Excel VBA (8 exempel)

  • Dela Detta
Hugh West

I den här artikeln visar jag hur du kan komma åt en cellreferens i VBA i Excel. Du lär dig att komma åt en enskild cell och flera celler tillsammans.

Ladda ner övningsboken

Ladda ner den här övningsboken för att träna på uppgiften medan du läser den här artikeln.

VBA Cell Reference.xlsm

8 sätt att hänvisa till cellreferens i Excel VBA

Här har vi en datamängd med Bokens namn , Boktyper, och Pris av några böcker från en bokhandel som heter Martin Bookstore.

Datamängden ligger inom intervallet B4:D13 av arbetsbladet.

Idag är vårt mål att lära oss att hänvisa till cellreferenser i denna datamängd med hjälp av VBA.

Här är de 8 bästa sätten att hänvisa till en cellreferens med VBA i Excel.

1. Hänvisa till en cellreferens genom att använda Range Object i VBA i Excel

Först och främst kan du hänvisa till en cellreferens genom att använda Utbud objektet i VBA .

Du kan hänvisa till både en enskild cell och ett antal celler med hjälp av Utbud objekt.

För att till exempel få tillgång till enstaka cell B4 , använd kodraden:

Dim Cell_Reference som intervall

Ange Cell_Reference = Range("B4")

Följande kod väljer cell B4 .

Den väljer cell B4 i det aktiva arbetsbladet.

På samma sätt kan du få tillgång till ett intervall av celler på det här sättet.

Dim Cell_Reference som intervall

Ange Cell_Reference = Range("B4:D13")

Följande kod väljer intervallet B4:D13 .

Den väljer ett intervall av celler B4:D13 .

Obs : Du kan använda Utbud objektet direkt utan att deklarera det först, till exempel:

Range("B4:D13").Select

Om du vill komma åt en cell i ett arbetsblad som inte är aktivt, använd namnet på arbetsbladet före Utbud objekt.

Till exempel, för att komma åt cellen B4 Blad2 , använda:

Arbetsblad("Sheet2").Range("B4:D13")

2. Hänvisa till en cellreferens med hjälp av indexnummer i VBA i Excel

Du kan också hänvisa till en cellreferens genom att använda indextalen. Men med den här metoden kan du bara hänvisa till en enda cell.

Om du till exempel vill komma åt cellen med radnummer 4 , och kolumnnummer 2 ( B4 ), använd:

Cells(4, 2))

Följande kod väljer återigen cell B4 på det aktiva arbetsbladet.

Den väljer cell B4 .

Observera: Om du vill komma åt en cell i ett inaktivt arbetsblad använder du arbetsbladets namn före cellreferensen.

Till exempel:

Arbetsblad("Sheet2").Cells(4, 2)

[ Samma som för metod 1 ] .

3. Hänvisa till en cellreferens i förhållande till en annan cell i VBA i Excel

Du kan också hänvisa till en cellreferens relativt till en annan cell i VBA . Du måste använda Förskjutningsfunktion VBA för detta.

Tillgång till cellen 1 rad nedåt och 2 kolumn till höger om cellen B4 (D5) , använda:

Range("B4").Offset(1, 2)

Följande kod väljer cell D5 på det aktiva arbetsbladet.

Den väljer cell D5 .

Observera: Om du vill hänvisa till en inaktiv cell i ett arbetsblad använder du arbetsbladets namn före cellhänvisningen.

Till exempel:

Arbetsblad("Sheet2").Range("B4").Offset(1, 2)

[ Samma som för metod 1 och 2 ] .

4. Hänvisa till en cellreferens med hjälp av genvägsnotationen i VBA i Excel

Det finns en genvägsnotation för att komma åt alla cellreferenser i VBA Du kan hänvisa till både en enskild cell och ett intervall av celler på det här sättet.

Tillgång till cell B4 , använda:

[B4]

Eller för att få tillgång till sortimentet B4:D13 , använda:

[B4:D13]

Följande kod väljer intervallet B4:D13 .

Den väljer intervallet B4:D13 .

Observera: Om du vill hänvisa till en cell i ett inaktivt arbetsblad använder du arbetsbladets namn före cellhänvisningen.

Till exempel:

Arbetsblad("Sheet2").[B4:D13]

[ Samma som metoderna 1, 2 och 3 ] .

Liknande läsningar:

  • Hur du låser en cell i en Excel-formel (2 sätt)
  • Genväg för absolut cellreferens i Excel (4 användbara exempel)
  • Hur man håller en cell fast i en Excel-formel (4 enkla sätt)
  • Använd cellreferenser i Excel-formeln (3 sätt)

5. Hänvisa till ett namngivet intervall i VBA i Excel

Du kan hänvisa till en Namngiven serie med VBA i Excel.

Låt oss namnge intervallet B4:D13 på det aktiva arbetsbladet som Boklista.

Nu kan vi hänvisa till detta Namngiven serie av kodraden:

Range("Book_List")

Följande kod väljer intervallet Boklista ( B4:D13 ).

Den väljer intervallet Boklista .

Observera: Om du vill komma åt en cell i ett inaktivt arbetsblad använder du arbetsbladets namn före cellreferensen.

Till exempel:

Arbetsblad("Sheet2").Range("Book_List")

[ Samma som metoderna 1, 2, 3 och 4. ] .

6. Hänvisa till flera intervall i VBA i Excel

Du kan också hänvisa till flera områden i VBA i Excel.

För att få tillgång till intervallet B4:D5 , B7:D8 , och B10:D11 , använda:

Range("B4:D5,B7:D8,B10:D11")

Det markerar flera områden tillsammans.

Du kan också använda Unionen egenskap hos VBA för att få tillgång till flera områden tillsammans.

Union(Range("B4:D5"), Range("B7:D8"), Range("B10:D11"))

Eller så kan du få tillgång till flera Namngivna områden tillsammans.

Range("Named_Range_1,Named_Range_2")

Sätt också arbetsbladets namn framför inaktiva arbetsblad.

Till exempel:

Arbetsblad("Sheet2").Range("B4:D5,B7:D8,B10:D11")

[ Samma som metoderna 1, 2, 3, 4 och 5. ]

7. Referera till rader och kolumner i VBA i Excel

Du kan också hänvisa till en eller flera rader eller kolumner i VBA i Excel.

Om du vill komma åt 4:e rad, använd:

Rader (4)

Den väljer hela 4:e rad.

På samma sätt, kolumner(4) kommer att få tillgång till hela 4:e kolumn.

Om du vill komma åt flera rader eller kolumner tillsammans använder du Unionen egenskap hos VBA .

För att komma åt raderna 4, 6, 8, och 10 tillsammans, använda:

Union(Rader(4), Rader(6), Rader(8), Rader(10))

Det kommer att välja hela raderna 4, 6, 8 , och 10 .

Observera: Lägg till arbetsbladets namn framför om det är ett inaktivt arbetsblad.

Till exempel:

Arbetsblad("Sheet2").Rader (4)

[ Samma som metod 1, 2, 3, 4, 5 och 6. ]

8. Hänvisa till hela arbetsbladet i VBA i Excel

Slutligen ska jag visa hur du hänvisar till hela arbetsbladet. För att komma åt hela arbetsbladet i VBA , använda:

Celler

Eller för att hänvisa till ett inaktivt arbetsblad (t.ex, Blad2 ), använd:

Arbetsblad("Sheet2").Cells

Det väljer hela arbetsbladet Blad2 .

Relaterat innehåll: Relativ och absolut celladress i kalkylbladet

Saker att komma ihåg

  • Om du vill komma åt en eller flera celler i det aktiva arbetsbladet kan du nämna arbetsbladets namn framför eller inte, men om du vill komma åt celler i ett inaktivt arbetsblad måste du nämna arbetsbladets namn framför cellreferensen.
  • Du kan även komma åt celler i en inaktiv arbetsbok i VBA I det fallet måste du ange både arbetsboksnamnet och arbetsbokens namn och namn på arbetsbladet framför cellreferensen.

Slutsats

Med dessa metoder kan du hänvisa till alla cellreferenser med VBA i Excel. Om du har några frågor är du välkommen att ställa dem till oss.

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.