根据文本值颜色单元格

根据文本值颜色单元格

Excel 列包含代表该行类别的文本值。

有没有办法将所有具有不同值的单元格格式化为独特的颜色,而无需为每个值手动创建条件格式?

例如:如果我有类别bedroom, bedroom, bathroom, kitchen, living room,我希望所有单元格都包含bedroom特定的颜色、bathroom不同的颜色等等。

答案1

  1. 将要格式化的列复制到空白工作表。
  2. 选择该列,然后从功能区“数据”选项卡上的“数据工具”面板中选择“删除重复项”。
  3. 在唯一值或字符串列表的右侧,创建一个唯一数字列表。例如,如果您有 6 个类别需要着色,则第二列可以是 1-6。这是您的查找表。
  4. 在新列中,使用将VLOOKUP文本字符串映射到新颜色。
  5. 根据新的数字列应用条件格式。

答案2

下面的屏幕截图来自 Excel 2010,但 2007 应该相同。

选择单元格并转到Conditional Formatting | Highlight Cells Rules | Text that Contains

要对整个工作表应用条件格式,请选择所有单元格,然后应用条件格式。

在此处输入图片描述
(点击图片放大)

现在只需选择您想要的格式。

在此处输入图片描述

答案3

从:http://www.mrexcel.com/forum/excel-questions/861678-highlighting-rows-random-colors-if-there-duplicates-one-column.html#post4185738

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 的功能。

但是,您可以根据类别列的值单独为整行着色。

  1. 在条件格式中创建新的格式规则。
  2. 使用公式来确定要格式化的单元格。
  3. 公式:(=$B1="bedroom"假设类别列为B)
  4. 设置格式(使用填充颜色)
  5. 将规则格式应用于所有单元格

相关内容