| 
    
     |  | 根本的に、見ているところが違いますね。 グラフで比較するなら、グラフの要素だけ扱えば良いのです。
 もしワークシートの元データで判定するなら、どこかに =IF(O1>P1,1,"")
 などの数式を入れ、予め色を着けたい要素だけをピックアップしておく、なども
 考えられますが、まぁこのような簡単な数値の比較なら、直接グラフの要素を
 対比しても良いでしょう。コードはこのようになります。
 
 Sub MyCh_Points_Color()
 Dim Ch As Chart
 Dim VAry1 As Variant, VAry2 As Variant, v As Variant
 Dim i As Long
 
 Application.ScreenUpdating = False
 For Each Ch In Charts
 With Ch.Chart
 VAry1 = .SeriesCollection(1).Values
 VAry2 = .SeriesCollection(2).Values
 i = 1
 For Each v In VAry1
 If CLng(v) > CLng(VAry2(i)) Then
 .SeriesCollection(1).Points(i) _
 .Interior.ColorIndex = 3
 End If
 i = i + 1
 Next
 End With
 Next
 Application.ScreenUpdating = True
 End Sub
 
 >CLng(v) > CLng(Vary2(i))
 のところは、元データの型によって適切な型変換関数を選んで下さい。小数点以下の
 値があるなら CSng でいいでしょう。
 
 
 |  |