Innehållsförteckning
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.xlsm8 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 på 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 på 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.