« エクセルを開いた時にマクロを起動させる | メイン | cellsプロパティの使用方法 »

rangeプロパティの使用方法

rangeプロパティはworksheetオブジェクトやrangeオブジェクトに使用して
特定のセルを指定することができます。
rangeオブジェクトに使用すると相対的な位置で判定します。
下の例では、rangeプロパティでセルの指定を行い、その範囲を塗りつぶすとともに、指定した内容をシートに記述します。
行、列単位の指定や離れたセルを同一の範囲として指定できます
※ソース中chr(34)は引用符(")です。

Sub レンジプロパティ()
Dim x As Integer
Dim y As Integer
Dim StrCell As String
Dim StrIx1 As String
Dim StrIx2 As String
Dim cell1 As Range
Dim cell2 As Range

'事前準備
On Error Resume Next
Application.DisplayAlerts = False
Sheets("NotAcitveSheet").Delete
Sheets("AcitveSheet").Delete
Application.DisplayAlerts = True
Sheets.Add
ActiveSheet.name = "NotAcitveSheet"
Sheets.Add
ActiveSheet.name = "AcitveSheet"

'rangeプロパティのオブジェクトを指定しないとアクティブシートと判断する
'列インデックスと行インデックスを数値で指定
Range("a1") = "Range(" & Chr(34) & "a1" & Chr(34) & ") "

'範囲演算子:で指定
Range("b2:c3").Interior.ColorIndex = 20
Range("b2") = "Range(" & Chr(34) & "b2:c3" & Chr(34) & ")"

'範囲演算子,で指定
Range("e2,f3").Interior.ColorIndex = 22
Range("e2") = "Range(" & Chr(34) & "e2,f3" & Chr(34) & ")"

'対角線上のセルで指定
Set cell1 = Range("h2")
Set cell2 = Range("i3")
Range(cell1, cell2).Interior.ColorIndex = 24
Range("h2") = "Range(cell1, cell2)"

'列を直接指定
Range("k:k").Interior.ColorIndex = 50
Range("k1") = "Range(" & Chr(34) & "k:k" & Chr(34) & ")"

'列を変数で指定
StrIx1 = "l": StrIx2 = "m"
Range(StrIx1 & ":" & StrIx2).Interior.ColorIndex = 55
Range("l1") = "Range(StrIx1 & " & Chr(34) & ":" & Chr(34) & " & StrIx2)"

'行を直接指定
Range("10:10").Interior.ColorIndex = 48
Range("a10") = "Range(" & Chr(34) & "10:10" & Chr(34) & ")"

'行を変数で指定
StrIx1 = "12": StrIx2 = "13"
Range(StrIx1 & ":" & StrIx2).Interior.ColorIndex = 53
Range("a12") = "Range(StrIx1 & " & Chr(34) & ":" & Chr(34) & " & StrIx2)"

'rangeプロパティのオブジェクトにrangeオブジェクトを指定すると
'そのrangeオブジェクトの中の相対的なセルとして判定される
Range("c5").Range("b2:c3").Interior.ColorIndex = 26
Range("c5").Range("b2") = "Range(" & Chr(34) & "c5" & Chr(34) _
& ").Range(" & Chr(34) & "b2:c3" & Chr(34) & ")"

'rangeプロパティのオブジェクトにworksheetオブジェクトを指定すると
'アクティブシート以外のセルも指定が可能
Sheets("NotAcitveSheet").Range("a1") = "Sheets(" & Chr(34) & "NotAcitveSheet" & Chr(34) _
& ").range(" & Chr(34) & "a1" & Chr(34) & ")"

End Sub

ひとつ前の投稿は「エクセルを開いた時にマクロを起動させる」です。
次の投稿は「cellsプロパティの使用方法」です。

トラックバック

このエントリーのトラックバックURL:
http://www.xillion.net/mova/mt-tb.cgi/70

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2004年01月24日 00:00に投稿されたエントリーのページです。

メインページアーカイブページも見てください。

Powered by
Movable Type 3.34