Range.Cells プロパティ (Excel)Range.Cells property (Excel)

指定した範囲のセルを表すRangeオブジェクトを返します。Returns a Range object that represents the cells in the specified range.


複数のプラットフォーム間で Office エクスペリエンスを拡張するソリューションを開発することに関心がありますか?Interested in developing solutions that extend the Office experience across multiple platforms? 新しい Office アドイン モデルを参照してください。Check out the new Office Add-ins model. Office アドインには、VSTO アドインおよびソリューションと比較して、小さな設置面積があります。 HTML5、JavaScript、CSS3、XML など、ほぼすべての web プログラミングテクノロジを使用して構築できます。Office Add-ins have a small footprint compared to VSTO Add-ins and solutions, and you can build them by using almost any web programming technology, such as HTML5, JavaScript, CSS3, and XML.



expressionRange オブジェクトを表す変数です。expression A variable that represents a Range object.


戻り値は、単一のセルで構成される Range です。そしてそれにより、2 つのパラメーターを含む Item のバージョンを使用し、単一のセルで For Each ループを繰り返すことができます。The return value is a Range consisting of single cells, which allows to use the version of the Item with two parameters and lets For Each loops iterate over single cells.

Range の既定のメンバーではパラメーターを使用して Item プロパティの呼び出しを転送するため、Item の明示的な呼び出しの代わりに、セル キーワードの後に続けて行および列のインデックスを指定できます。Because the default member of Range forwards calls with parameters to the Item property, you can specify the row and column index immediately after the Cells keyword instead of an explicit call to Item.

オブジェクト修飾子を指定せずにセル を使用するのと、ActiveSheet.Cells を使用するのは同じです。Using Cells without an object qualifier is equivalent to ActiveSheet.Cells.


この例では、アクティブなブックの Sheet1 上のセル B2:D6 に斜体のフォント スタイルを設定します。This example sets the font style for cells A1:C5 on Sheet1 to italic.

With Worksheets("Sheet1").Range("B2:Z100") 
   .Range(.Cells(1, 1), .Cells(5, 3)).Font.Italic = True
End With

この例では、_myRange_という名前のデータ列をスキャンします。This example scans a column of data named myRange. セルの値が 1 つ上のセルの値と同じ場合は、その例は重複するデータを含むセルのアドレスを表示します。If a cell has the same value as the cell immediately preceding it, the example displays the address of the cell that contains the duplicate data.

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 

この例では、セル により アイテム メンバーの動作が変化するしくみを説明します。This example demonstrates how Cells changes the behavior of the Item member.

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

この例では、セル により Enumeration の動作が変化するしくみを説明します。This example demonstrates how Cells changes the enumeration behavior.

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"
   Dim cell As Excel.Range
   For Each cell In columnsRange.Cells
      Debug.Print cell.Address          'Prints "$B$2", "$C$2", "$B$3", "$C$3"
End Sub

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.