Célula colorida com base no valor do texto

23

Uma coluna do Excel contém um valor de texto que representa a categoria dessa linha.

Existe uma maneira de formatar todas as células com um valor distinto em uma cor exclusiva sem criar manualmente um formato condicional para cada valor?

Exemplo: se eu tivesse as categorias bedroom, bedroom, bathroom, kitchen, living room, desejaria que todas as células que contivessem bedroomuma cor específica, bathroomuma cor diferente etc.

Steven
fonte
Se você não deseja fazê-lo manualmente, como deseja que ele decida quais devem ser as cores?
27611 soandos
2
Eu gostaria que fosse automático, se possível, semelhante à maneira como as cores são escolhidas para diferentes séries em um gráfico.
27711 Steven
Ah, então você quer que todas as células com o mesmo conteúdo sejam da mesma cor, mas não se importa com a cor?
27611 soandos
Uma macro descartável (para criar os formatos condicionais uma vez) seria aceitável? Ele precisaria ser executado exatamente uma vez por pasta de trabalho e poderia ser removido depois disso.
Tex Hex
soandos: Sim, TeX Hex: Claro!
27711 Steven

Respostas:

6
  1. Copie a coluna que deseja formatar para uma planilha vazia.
  2. Selecione a coluna e escolha "Remover duplicatas" no painel "Ferramentas de dados" na guia "Dados" da faixa de opções.
  3. À direita da sua lista exclusiva de valores ou cadeias, faça uma lista exclusiva de números. Por exemplo, se você tiver 6 categorias para colorir, a segunda coluna poderá ser apenas de 1 a 6. Esta é a sua tabela de pesquisa.
  4. Em uma nova coluna, use VLOOKUPpara mapear a sequência de texto para a nova cor.
  5. Aplique a formatação condicional com base na nova coluna numérica.
Eric
fonte
3
O passo 4 é um pouco incerto para mim, você poderia elaborar? Obrigado.
pixels
1
Você poderia elaborar em 5?
Zthomas.nc 26/03
1
Mas, certamente, isso significa então que a formatação está nas células que contêm o valor numérico e não o valor de texto
Adolf alho
11

As capturas de tela abaixo são do Excel 2010, mas devem ser as mesmas para 2007.

Selecione a célula e vá para Conditional Formatting | Highlight Cells Rules | Text that Contains

ATUALIZAÇÃO: para aplicar a formatação condicional para toda a planilha, selecione todas as células e aplique a formatação condicional.

insira a descrição da imagem aqui
(Clique na imagem para ampliar)

Agora basta selecionar a formatação desejada.

insira a descrição da imagem aqui

Nicu Zecheru
fonte
5
Isso ainda não exigirá que o OP crie manualmente um formato condicional para cada valor?
Dave DuPlantis
1
@Dave DuPlantis - NÃO. Você pode selecionar TODAS as células e usar a formatação condicional. Todas as células que atenderam à condição serão formatadas de acordo.
Nicu Zecheru
6
Cada condição ainda precisa ser criada manualmente, mesmo que apenas precise ser criada uma única vez para toda a pasta de trabalho. Ele está procurando uma solução que não exija que ele especifique os valores.
Dave DuPlantis
Portanto, é possível ter várias regras para o 'texto contém'? isso ainda é muito pobre funcionalidade do MS
Adolf alho
2

De: 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
Karmo
fonte
Vejo que já votei positivamente nesta resposta, mas não consigo encontrar o código que acabei usando. Um dia, eventualmente, escreverei algum código flexível e o compartilharei aqui também.
Ryan
1

A cor automática que escolhe Formatação condicional não é um recurso do Microsoft Excel.

No entanto, você pode colorir uma linha inteira com base no valor de uma coluna de categoria individualmente.

  1. Crie uma nova regra de formatação na formatação condicional.
  2. Use uma fórmula para determinar quais células serão formatadas.
  3. Fórmula: =$B1="bedroom"(supondo que a coluna da categoria seja B)
  4. Definir formato (usando cor de preenchimento)
  5. Aplicar formatação de regra a todas as células
Steven
fonte
2
Fyi, Eric postou uma resposta muito mais útil ... a sua parece uma repetição da primeira resposta que você recebeu.
Frank