1: 如何在使用中的工作表上選取儲存格
若要在使用中的工作表上選取儲存格 D5,您可以使用下列其中一個範例:ActiveSheet.Cells(5, 4).Select
- 或 -
ActiveSheet.Range("D5").Select
2: 如何在相同的活頁簿中選取另一個工作表上的儲存格
若要在相同的活頁簿中選取另一個工作表上的儲存格 E6,您可以使用下列其中一個範例:Application.Goto ActiveWorkbook.Sheets("Sheet2").Cells(6, 5)
- 或 -
Application.Goto (ActiveWorkbook.Sheets("Sheet2").Range("E6"))
Sheets("Sheet2").Activate
ActiveSheet.Cells(6, 5).Select
3: 如何在不同的活頁簿中選取工作表上的儲存格
若要在不同的活頁簿中選取工作表上的儲存格 F7,您可以使用下列其中一個範例:Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Cells(7, 6)
- 或 -
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("F7")
Workbooks("BOOK2.XLS").Sheets("Sheet1").Activate
ActiveSheet.Cells(7, 6).Select
4: 如何在使用中的工作表上選取儲存格範圍
若要在使用中的工作表上選取範圍 C2:D10,您可以使用下列其中一個範例:ActiveSheet.Range(Cells(2, 3), Cells(10, 4)).Select
ActiveSheet.Range("C2:D10").Select
ActiveSheet.Range("C2", "D10").Select
5: 如何在相同的活頁簿中選取另一個工作表上的儲存格範圍
若要在相同的活頁簿中選取另一個工作表上的範圍 D3:E11,您可以使用下列其中一個範例:Application.Goto ActiveWorkbook.Sheets("Sheet3").Range("D3:E11")
Application.Goto ActiveWorkbook.Sheets("Sheet3").Range("D3", "E11")
Sheets("Sheet3").Activate
ActiveSheet.Range(Cells(3, 4), Cells(11, 5)).Select
6: 如何在不同的活頁簿中選取工作表上的儲存格範圍
若要在不同的活頁簿中選取工作表上的範圍 E4:F12,您可以使用下列其中一個範例:Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("E4:F12")
Application.Goto _
Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("E4", "F12")
Workbooks("BOOK2.XLS").Sheets("Sheet1").Activate
ActiveSheet.Range(Cells(4, 5), Cells(12, 6)).Select
7: 如何在使用中的工作表上選取具名的範圍
若要在使用中的工作表上選取具名範圍 "Test",您可以使用下列其中一個範例:Range("Test").Select
Application.Goto "Test"
8: 如何在相同的活頁簿中選取另一個工作表上的具名範圍
若要在相同的活頁簿中選取另一個工作表上的具名範圍 "Test",您可以使用下列範例:Application.Goto Sheets("Sheet1").Range("Test")
Sheets("Sheet1").Activate
Range("Test").Select
9: 如何在不同的活頁簿中選取工作表上的具名範圍
若要在不同的活頁簿中選取工作表上的具名範圍 "Test",您可以使用下列範例:Application.Goto _
Workbooks("BOOK2.XLS").Sheets("Sheet2").Range("Test")
Workbooks("BOOK2.XLS").Sheets("Sheet2").Activate
Range("Test").Select
10: 如何選取相對於使用中儲存格的儲存格
若要選取位於使用中儲存格下方五列和左邊四欄之間的儲存格,您可以使用下列範例:ActiveCell.Offset(5, -4).Select
ActiveCell.Offset(-2, 3).Select
11: 如何選取相對於另一個 (不是使用中) 儲存格的儲存格
若要選取位於儲存格 C7 下方五列和右邊四欄之間的儲存格,您可以使用下列其中一個範例:ActiveSheet.Cells(7, 3).Offset(5, 4).Select
ActiveSheet.Range("C7").Offset(5, 4).Select
12: 如何選取從指定範圍位移的儲存格範圍
若要選取與具名範圍 "Test" 大小相同,但向下移動四列和向右移動三欄的儲存格範圍,您可以使用下列範例:ActiveSheet.Range("Test").Offset(4, 3).Select
Sheets("Sheet3").Activate
ActiveSheet.Range("Test").Offset(4, 3).Select
13: 如何選取指定範圍和調整選取範圍大小
若要選取具名範圍 "Database",然後將選取範圍延伸五列,您可以使用下列範例:Range("Database").Select
Selection.Resize(Selection.Rows.Count + 5, _
Selection.Columns.Count).Select
14: 如何選取指定範圍、進行位移,然後調整大小
若要選取位於具名範圍 "Database" 下方四列和右邊三欄的範圍,並包括大於具名範圍兩列和一欄,您可以使用下列範例:Range("Database").Select
Selection.Offset(4, 3).Resize(Selection.Rows.Count + 2, _
Selection.Columns.Count + 1).Select
15: 如何選取兩個指定範圍以上的聯集
若要選取兩個具名範圍 "Test" 和 "Sample" 的聯集 (亦即合併區域),您可以使用下列範例:Application.Union(Range("Test"), Range("Sample")).Select
Set y = Application.Union(Range("Sheet1!A1:B2"), Range("Sheet1!C3:D4"))
Set y = Application.Union(Range("Sheet1!A1:B2"), Range("Sheet2!C3:D4"))
Union method of application class failed (應用程式類別的 Union 方法失敗)
16: 如何選取兩個指定範圍以上的交集
若要選取兩個具名範圍 "Test" 和 "Sample" 的交集,您可以使用下列範例:Application.Intersect(Range("Test"), Range("Sample")).Select
本文中的範例 17-21 會參照下列範例資料集。 每一個範例都會陳述在範例資料中所選取的儲存格範圍。
A1: Name B1: Sales C1: Quantity A2: a B2: $10 C2: 5 A3: b B3: C3: 10 A4: c B4: $10 C4: 5 A5: B5: C5: A6: Total B6: $20 C6: 20
17: 如何選取連續資料欄的最後一個儲存格
若要選取連續欄中的最後一個儲存格,請使用下列範例:ActiveSheet.Range("a1").End(xlDown).Select
18: 如何選取連續資料欄下方的空白儲存格
若要選取連續儲存格範圍下面的儲存格,請使用下列範例:ActiveSheet.Range("a1").End(xlDown).Offset(1,0).Select
19: 如何在欄中選取連續儲存格的整個範圍
若要在欄中選取連續儲存格範圍,請使用下列其中一個範例:ActiveSheet.Range("a1", ActiveSheet.Range("a1").End(xlDown)).Select
- 或 -
ActiveSheet.Range("a1:" & ActiveSheet.Range("a1"). _
End(xlDown).Address).Select
20: 如何在欄中選取非連續儲存格的整個範圍
若要選取非連續的儲存格範圍,請使用下列其中一個範例:ActiveSheet.Range("a1",ActiveSheet.Range("a65536").End(xlUp)).Select
- 或 -
ActiveSheet.Range("a1:" & ActiveSheet.Range("a65536"). _
End(xlUp).Address).Select
21: 如何選取矩形儲存格範圍
若要選取某儲存格四周的矩形儲存格範圍,請使用 CurrentRegion 方法。 透過 CurrentRegion 方法選取的範圍,是以任何組合的空白列與空白欄為邊界的區域。 下列範例說明如何使用 CurrentRegion 方法:ActiveSheet.Range("a1").CurrentRegion.Select
ActiveSheet.Range("a1", _
ActiveSheet.Range("a1").End(xlDown).End(xlToRight)).Select
- 或 -
ActiveSheet.Range("a1:" & _
ActiveSheet.Range("a1").End(xlDown).End(xlToRight).Address).Select
lastCol = ActiveSheet.Range("a1").End(xlToRight).Column
lastRow = ActiveSheet.Cells(65536, lastCol).End(xlUp).Row
ActiveSheet.Range("a1", ActiveSheet.Cells(lastRow, lastCol)).Select
- 或 -
lastCol = ActiveSheet.Range("a1").End(xlToRight).Column
lastRow = ActiveSheet.Cells(65536, lastCol).End(xlUp).Row
ActiveSheet.Range("a1:" & _
ActiveSheet.Cells(lastRow, lastCol).Address).Select
22: 如何選取不同長度的多個非連續欄
若要選取不同長度的多個非連續欄,請使用下列範例資料表和巨集範例:A1: 1 B1: 1 C1: 1 D1: 1 A2: 2 B2: 2 C2: 2 D2: 2 A3: 3 B3: 3 C3: 3 D3: 3 A4: B4: 4 C4: 4 D4: 4 A5: B5: 5 C5: 5 D5: A6: B6: C6: 6 D6:
StartRange = "A1"
EndRange = "C1"
Set a = Range(StartRange, Range(StartRange).End(xlDown))
Set b = Range(EndRange, Range(EndRange).End(xlDown))
Union(a,b).Select
範例的注意事項
- 通常可以省略 ActiveSheet 屬性,因為如果未命名特定工作表,則會隱含該屬性。 例如,與其使用
ActiveSheet.Range("D5").Select
Range("D5").Select
- 通常也可以省略 ActiveWorkbook 屬性。 除非已命名特定活頁簿,否則會隱含使用中的活頁簿。
- 使用 Application.Goto 方法時,當指定的範圍是在另一個 (不是使用中) 工作表的情況下,如果要在 Range 方法內使用兩個 Cells 方法,則每次都必須包括 Sheets 物件。 例如:
Application.Goto Sheets("Sheet1").Range( _ Sheets("Sheet1").Range(Sheets("Sheet1").Cells(2, 3), _ Sheets("Sheet1").Cells(4, 5)))
- 針對引號中的任何項目而言 (例如,具名範圍 "Test"),您也可以使用其值是文字字串的變數。 例如,與其使用
ActiveWorkbook.Sheets("Sheet1").Activate
ActiveWorkbook.Sheets(myVar).Activate