2017-08-16 10 views
-2

参照テーブルに対して値の列を書式設定する方法を決定しようとしています。これが可能であれば、 "forumula"という条件付き書式を使用する必要があるようです。しかし、私はそれについて多くの経験を積んでおらず、自分が探しているものを正確に見つけることができませんでした。列Bの値がより大きいか等しい場合:Excelの条件付き書式設定と参照テーブルの比較

Example - Data and Reference Table

意図は、「レベル」に応じて、列BのセルをセルB1に示されている「赤/緑」にできることですそのレベルの参照チャートの値に、列Bの値が緑色に変わり、そうでない場合は赤色に変わります。

私はこのような情報を何百も持っていますが、すべて同じようにフォーマットする必要があります。この情報は定期的に更新されます(B1の「レベル」値、Bの「1/2/3」値)。

私はExcel 2016を使用していますが、これは関連情報です。

ご協力いただければ幸いです。必要に応じて追加情報を提供することができます。

答えて

0

は本当に基本的なVBAスクリプトを作成しました。コードは以下の通りです。

Public Sub UpdateTheLevel() 
Dim Currentlevel, templevel As String 
Dim i, j, MaxLevel, column, MaxSkill, currlevel, wantedlevel As Integer 
column = 0 
''Need to set MaxLevel, MaxSkill 
Currentlevel = ActiveSheet.Cells(2, 1).Value 
For i = 4 To MaxLevel 
    templevel = ActiveSheet.Cells(2, i).Value 
    If templevel = Currentlevel Then 
     column = i 
     Exit For 
    Else 
     Next i 
If column = 0 Then 
    MsgBox "Level Not Found." 
Else 
    For j = 3 To MaxSkill 
     currlevel = Cells(j, 2).Value 
     wantedlevel = Cells(j, column).Value 
     If currlevel < wantedlevel Then 
      Range (Cells(j, 2)), Interior.ColorIndex = 3 
     Else 
      Range (Cells(j, 2)), Interior.ColorIndex = 4 
     Next j 
End Sub 

これは、ボタンを押すか、ファイルを開くたびに実行するフォームにすることができます。

0

これは、式を使用して形式を判別する2つの条件付き書式設定規則を使用して、VBAなしで行うことができます。

B3からB17を選択し、B3がアクティブセルであることに十分注意してください。次に、2つのルールを作成します。

赤式:

=AND(ISNUMBER(B3),B3<INDEX($D$3:$H$17,ROW(B3)-2,MATCH($B$1,$D$2:$H$2,0))) 

式緑:

=AND(ISNUMBER(B3),B3>=INDEX($D$3:$H$17,ROW(B3)-2,MATCH($B$1,$D$2:$H$2,0))) 

enter image description here

関連する問題