Range.Cells 屬性 (Excel)
可傳回 Range 物件,代表指定範圍內的儲存格。
注意事項
對於開發跨多個平台,擴充使用者 Office 體驗的解決方案感到興趣嗎? 請參閱新的 Office 增益集模型。 與 VSTO 增益集和解決方案相比,Office 增益集的佔用空間較小,而且您可以使用幾乎任何網頁程式技術 (例如 HTML5、JavaScript、CSS3 和 XML) 來建立這些增益集。
語法
expression.Cells
expression 代表 Range 物件的變數。
註解
傳回值是由單一儲存格組成的 Range,可讓您使用 Item 及其兩個參數版本,然後讓 For Each
迴圈逐一查看單一儲存格。
因為 Range 的預設成員會將帶參數的呼叫轉傳到 Item 屬性,您可以緊接著在 Cells 關鍵字後面指定列索引及欄索引,而不是明確呼叫 Item。
在不指定物件辨識符號的情況下使用 Cells 即等於使用 ActiveSheet.Cells。
範例
此範例會在使用中活頁簿的 Sheet1 上,將儲存格 B2:D6 的字型樣式設定為斜體。
With Worksheets("Sheet1").Range("B2:Z100")
.Range(.Cells(1, 1), .Cells(5, 3)).Font.Italic = True
End With
此範例將搜尋名為 myRange 的一欄資料。 如果儲存格的值與其後儲存格的值相同,此範例將顯示這個包含重複資料的儲存格的位址。
Set r = Range("myRange")
For n = 2 To r.Rows.Count
If r.Cells(n-1, 1) = r.Cells(n, 1) Then
MsgBox "Duplicate data in " & r.Cells(n, 1).Address
End If
Next
此範例示範 Cells 如何變更 Item 成員的行為。
Public Sub PrintRangeAdresses
Dim columnsRange As Excel.Range
Set columnsRange = ThisWorkBook.Worksheets("exampleSheet").Range("B2:Z100").Columns
Debug.Print columnsRange.Item(2).Address 'Prints "$C$2:$C$100"
Debug.Print columnsRange.Cells.Item(2).Address 'Prints "$C$2"
Debug.Print columnsRange.Cells.Item(2,1).Address 'Prints "$B$3"
End Sub
此範例示範 Cells 如何變更列舉行為。
Public Sub PrintAllRangeAdresses
Dim columnsRange As Excel.Range
Set columnsRange = ThisWorkBook.Worksheets("exampleSheet").Range("B2:C3").Columns
Dim columnRange As Excel.Range
For Each columnRange In columnsRange
Debug.Print columnRange.Address 'Prints "$B$2:$B$3", "$C$2:$C$3"
Next
Dim cell As Excel.Range
For Each cell In columnsRange.Cells
Debug.Print cell.Address 'Prints "$B$2", "$C$2", "$B$3", "$C$3"
Next
End Sub
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。