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.


Item プロパティは Range オブジェクトに対する既定のプロパティであるため、Cells キーワードの後に続けて行および列のインデックスをすぐに指定できます。Because the Item property is the default property for the Range object, you can specify the row and column index immediately after the Cells keyword. 詳細については、このトピックの Item プロパティおよび使用例を参照してください。For more information, see the Item property and the examples for this topic.

このプロパティでオブジェクト修飾子を指定しないコードを使用すると、アクティブ シートのすべてのセルを表す Range オブジェクトが返されます。Using this property without an object qualifier returns a Range object that represents all the cells on the active worksheet.


次の使用例は、シート 1 のセル範囲 A1:C5 のフォント スタイルを斜体に設定します。This example sets the font style for cells A1:C5 on Sheet1 to italic.

Range(Cells(1, 1), Cells(5, 3)).Font.Italic = True

この例では、_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 
Next n

この例は、列 C 全体でコメントが含まれるすべてのセルを検索します。コメント テキストは列 D に挿入され、列 C からコメントが削除されます。This example looks through column C, and for every cell that has a comment, it puts the comment text into column D and deletes the comment from column C.

Sub SplitComments()
   'Set up your variables
   Dim cmt As Comment
   Dim iRow As Integer
   'Go through all the cells in Column C, and check to see if the cell has a comment.
   For iRow = 1 To WorksheetFunction.CountA(Columns(3))
      Set cmt = Cells(iRow, 3).Comment
      If Not cmt Is Nothing Then
         'If there is a comment, paste the comment text into column D and delete the original comment.
         Cells(iRow, 4) = Cells(iRow, 3).Comment.Text
         Cells(iRow, 3).Comment.Delete
      End If
   Next iRow
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.