|
▼dai さん:
>マクロをかけるとシート1のA列を参照して同じだったら
>下記のようにしたいです。
>A列 B列 C列 D列
>Aさん(赤色) あ(赤色) 11 さ
>Bさん た 12 は
>Cさん(赤色) ま 13 か(赤色)
ぼくがやるとすれば、
○○の一つ覚えですがSheet1A列をDictionaryに登録しておき、
Sheet2からはそれを「辞書引き」して何度もLOOKUPしなくて
すむようにします。
'-------------------------------------------- 標準モジュールに
Sub Lookup1()
Dim dic As Object
Dim i As Long
Dim v
'---- Sheet1 A列を辞書にキー登録
With Worksheets(1)
v = .Range("A2", .Cells(1).End(xlDown)).Value
End With
Set dic = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(v)
dic(v(i, 1)) = Empty
Next
'---- Sheet2のB列またはD列が 辞書にあれば セルを色塗り
With Worksheets(2)
.UsedRange.Interior.ColorIndex = xlNone
v = .Cells(1).CurrentRegion.Columns(2).Resize(, 3).Value
For i = 1 To UBound(v)
If dic.Exists(v(i, 1)) Then
.Cells(i, 1).Interior.Color = vbRed
.Cells(i, 2).Interior.Color = vbRed
ElseIf dic.Exists(v(i, 3)) Then
.Cells(i, 1).Interior.Color = vbRed
.Cells(i, 4).Interior.Color = vbRed
End If
Next
End With
End Sub
|
|