0

Excel VBA: テキスト ファイルで指定された入力に基づいて、いくつかの列の背景色を変更するタスクがあります。16進数の色を使用してこれを行うことができました。今、簡単な英語で色をサポートする必要があります。テキストファイルには次のようなデータが含まれます

columnname1,red
columnname2,green

したがって、この「赤」を colorConstant 番号 3 にマップして機能させる必要があります。サポートされているすべての色を許可する必要がある場合は 、ここを確認してください。すべての色に IF ELSE を記述する必要がありますか。そのための簡単な方法はありますか?

4

1 に答える 1

0

Collectionを使用してマッピングを保存できます。

Public indexOf As Collection

Sub map(color As String, index As Integer)
    Call indexOf.Add(index, color)
End Sub

Sub init()
    Set indexOf = New Collection

    map "red", 3
    map "green", 4
    map "blue", 5
End Sub

Sub test()
    init

    [A1].Interior.ColorIndex = indexOf("red")
    [A2].Interior.ColorIndex = indexOf("green")
    [A3].Interior.ColorIndex = indexOf("blue")
End Sub
于 2012-12-13T22:10:17.490 に答える