Excel VBAでCELLSを使用し範囲指定する方法と文字列の代入と書式設定

CELLS単独では範囲指定できないので、RANGEを使用し行います。だったらRANGEだけでいいようですがCELLSには変数が使い易いメリットがあるため、VBAでは組み合わせて使用する場合もあります。



Homeに戻る > Excel セルのTipsへ

CELLSで範囲指定する

開始セルと終了セルの確認

下の製品一覧表を使用します。
一覧表全体を範囲指定したい場合、通常1が開始セルで2が終了セルになります。
製品一覧表を使用

1の開始セルをCELLSで選択するVBA
1の開始セルをCELLSで選択するVBA

使い方は、CELLS(行番号、列番号)なので1のセルはCELLS(4,2)になります。

Sub MyCells()
    Cells(4, 2).Select
End Sub

2の終了セルをCELLSで選択するVBA
2の終了セルをCELLSで選択するVBA

同じく、CELLS(行番号、列番号)なので2のセルはCELLS(15,4)になります。

Sub MyCells()
    Cells(15, 4).Select
End Sub

RANGEとCELLSの組み合わせ

RANGEとCELLSの組み合わせて範囲指定するVBA
RANGEとCELLSの組み合わせて範囲指定するVBA

CELLSで開始セルと終了セルを指定します。
これは、RANGE("B4","D15")と同じです。

Sub MyCells()
    Range(Cells(4, 2), Cells(15, 4)).Select
End Sub

実行結果のシートです。
実行結果のシート


文字列の代入と書式設定

範囲指定したセルに文字列の代入

選択しているセルを参照するにはSelectionプロパティを使用します。
選択しているセルに文字列を代入するVBA
選択しているセルに文字列を代入するVBA

文字列の代入はValueプロパティを使用します。

Sub MyCells()
    Range(Cells(4, 2), Cells(15, 4)).Select
    Selection.Value = "春の日"
End Sub

実行結果です。
表全体に文字列が代入できました。
表全体に文字列を代入

範囲指定したセルに書式設定を行う

ここでは背景色を設定します。
背景色を設定する

・背景色は、Interior.Colorを使用します。
・背景色の色はRGB関数を使用しました。
・使い方は、RGB(赤,緑,青)なのでここでは赤色になります。

Sub MyCells()
    Range(Cells(4, 2), Cells(15, 4)).Select
    Selection.Value = "春の日"
    Selection.Interior.Color = RGB(255, 0, 0)
End Sub

実行結果のシートです。
実行結果のシート

CELLSを変数で使用したサンプル

変数で行番号と列番号を指定するVBA
変数で行番号と列番号を指定するVBA

・変数iは行番号、変数jは列番号を指定しています。
・ループで1つのセル毎に設定しているので、下のようにIF関数などで細かな操作が可能になります。

Sub MyCellsH()
    Dim i As Long
    Dim j As Long
    
    For i = 4 To 15
        For j = 2 To 4
            Cells(i, j).Select
            Selection.Value = "春の日"
            If i <> 8 Then
                Selection.Interior.Color = RGB(255, 0, 0)
            End If
        Next
    Next
End Sub

IF関数で8行目のみ背景色を付けないようにしました。
IF関数で8行目のみ背景色を付けない


Homeに戻る > Excel セルのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved