ワークシート名とセル番地を指定して、オブジェクトを指定します。
セルのサイズ変更とセルの背景を塗りつぶす方法を説明します。
また、セルの幅と高さを変更するプロパティの使い方を紹介します。
セルのサイズ変更と塗りつぶしのマクロ
■ コード内を「Wクリック」で選択できます。[code] Sub サンプル0035() With Worksheets(“Sheet1”).Range(“A1”) .Interior.ColorIndex = 5 .ColumnWidth = 20 .RowHeight = 20 End With With Worksheets(“Sheet2”).Range(“A1:C3”) .Interior.ColorIndex = 6 .ColumnWidth = 20 .RowHeight = 20 End With End Sub [/code]
1.デスクトップに作成した「確認用マクロのコピー」を開いて、「Visual Basic」をクリックします。
2.「Visual Basic」の画面で「Module1」を開きます。
3.サンプル0035のコードをコピーして、「Module1のコードウィンドウ」に貼り付けます。
4.このマクロを実行すると、図のようなマクロが実行されます。
Sheet1のセルA1の背景が「青」に塗りつぶされます。
コードの説明
1.ワークシートのSheet1のセル「A1」をオブジェクトに指定します。
1つのオブジェクトに対して、複数のプロパティを使う時は、Withステートメントを使います。
With Worksheets(“Sheet1”).Range(“A1”)
2.セルの背景を塗りつぶすには、InteriorオブジェクトのColorIndexプロパティを使って、塗りつぶす色のインデックス番号を設定します。
.Interior.ColorIndex = 5
3.セルの幅の変更は、Rangeオブジェクトの「ColumnWidth」プロパティを使います。
設定幅は、ポイント単位(1ポイント=約0.35mm)の整数で設定します。
.ColumnWidth = 20
4.セルの高さの設定は、Rangeオブジェクトの「RowHeight」プロパティを使います。
セルの高さの単位は、ピクセルを使います。
ピクセルは、ディスプレイの表示の出力の最小単位です。
セルの高さが13.50ポイントの場合は、ディスプレイ上では18ピクセルになります。
.RowHeight = 20
5.最後に、「End With」で閉じます。
With Worksheets(“Sheet1”).Range(“A1”)
.Interior.ColorIndex = 5
.ColumnWidth = 20
.RowHeight = 20
End With
6.次に、セル範囲のオブジェクトを指定して、セルの塗りつぶしとセルのサイズ変更を設定します。
With Worksheets(“Sheet2”).Range(“A1:C3”)
7.対象となるセルの範囲を設定したら、後は同様にInteriorオブジェクトのColorIndexプロパティと、Rangeオブジェクトの「ColumnWidth」プロパティ、「RowHeight」プロパティを設定します。
With Worksheets(“Sheet2”).Range(“A1:C3”)
.Interior.ColorIndex = 6
.ColumnWidth = 20
.RowHeight = 20
End With
8.完成したマクロを実行すると、2つのワークシートのセルが塗りつぶしとセルのサイズが変更されます。
ColorプロパティとRGB関数
上のマクロでは、セルの背景を塗りつぶすのに、ColorIndexプロパティを使いました。
しかし、ColorIndexプロパティの色数は、限られています。
好きな色を自由に使いたい場合は、Colorプロパティを使うと良いでしょう。
上のマクロをColorプロパティで置き換えると次のようになります。
■ コード内を「Wクリック」で選択できます。[code] Sub サンプル0040() With Worksheets(“Sheet1”).Range(“A1”) .Interior.Color = RGB(0, 0, 255) .ColumnWidth = 20 .RowHeight = 20 End With With Worksheets(“Sheet2”).Range(“A1:C3”) .Interior.Color = RGB(255, 255, 0) .ColumnWidth = 20 .RowHeight = 20 End With End Sub [/code]
ColorIndex = 5(青) はColor = RGB(0, 0, 255)
ColorIndex = 6(黃) はColor = RGB(255, 255, 0)となります。