|
こんにちは。かみちゃん です。
>例として2つの表で共に上位2位に入ってきている人
>ここでは人名bのセル("A2")("C2")を色づけと思っています。
最終結果は、並べ替えた状態がいいのですか?
並べ替えなくても、以下のような方法でできます。
なお、同じ数値の場合は、それぞれに色をつけます。
Sub Test()
Dim intCol As Integer
Dim intData As Integer
Dim c As Range
Dim FirstAddress As String
For intCol = 2 To 4 Step 2
Columns(intCol).Offset(, -1).Interior.ColorIndex = xlColorIndexNone
'2番目に大きい値を取得する(LARGEワークシート関数を利用)
intData = Application.WorksheetFunction.Large(Columns(intCol), 2)
With Columns(intCol).Cells
Set c = .Find(intData, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
FirstAddress = c.Address
Do
c.Offset(, -1).Interior.ColorIndex = 6
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> FirstAddress
End If
End With
Next
MsgBox "終了しました"
End Sub
|
|