Excel の列には、その行のカテゴリを表すテキスト値が含まれています。
各値に対して条件付き書式を手動で作成せずに、異なる値を持つすべてのセルを一意の色で書式設定する方法はありますか?
例: カテゴリがある場合、そのカテゴリを含むすべてのセルを特定の色、別の色などにbedroom, bedroom, bathroom, kitchen, living room
設定したいとします。bedroom
bathroom
答え1
- 書式設定する列を空のワークシートにコピーします。
- 列を選択し、リボンの「データ」タブの「データ ツール」パネルから「重複の削除」を選択します。
- 一意の値または文字列のリストの右側に、一意の数値のリストを作成します。たとえば、色を付けるカテゴリが 6 つある場合、2 番目の列は 1 ~ 6 のみになります。これが参照テーブルです。
- 新しい列で、を使用して
VLOOKUP
テキスト文字列を新しい色にマッピングします。 - 新しい数値列に基づいて条件付き書式を適用します。
答え2
答え3
Sub ColourDuplicates()
Dim Rng As Range
Dim Cel As Range
Dim Cel2 As Range
Dim Colour As Long
Set Rng = Worksheets("Sheet1").Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row)
Rng.Interior.ColorIndex = xlNone
Colour = 6
For Each Cel In Rng
If WorksheetFunction.CountIf(Rng, Cel) > 1 And Cel.Interior.ColorIndex = xlNone Then
Set Cel2 = Rng.Find(Cel.Value, LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=False, SearchDirection:=xlNext)
If Not Cel2 Is Nothing Then
Firstaddress = Cel2.Address
Do
Cel.Interior.ColorIndex = Colour
Cel2.Interior.ColorIndex = Colour
Set Cel2 = Rng.FindNext(Cel2)
Loop While Firstaddress <> Cel2.Address
End If
Colour = Colour + 1
End If
Next
End Sub
答え4
条件付き書式による自動色選択は、Microsoft Excel の機能ではありません。
ただし、カテゴリ列の値に基づいて行全体を個別に色分けすることはできます。
- 条件付き書式で新しい書式ルールを作成します。
- 数式を使用して、書式設定するセルを決定します。
- 式:
=$B1="bedroom"
(カテゴリ列が B であると仮定) - 書式を設定する(塗りつぶし色を使用)
- すべてのセルにルールの書式を適用する