Estou procurando fórmula para célula de destaque da planilha do google se o valor duplicar na mesma coluna
alguém pode me ajudar para esta consulta?
google-sheets
gs-conditional-formatting
user3331309
fonte
fonte
=COUNTIFS(A:A; A1; B:B; B1)>1
;
resulta em um erro de "fórmula inválida" para mim. Apenas removê-lo fez o truque. Também tenha cuidado: a célula que você especificar como segundo argumento dacountif
deve ser a primeira célula do intervalo que você selecionar.=countif(B:B,B2)>1
. Isso permite que você faça uma formatação bastante avançada ao usar referências de célula absolutas versus relativas.Embora a resposta do zolley seja perfeitamente adequada para a pergunta, aqui está uma solução mais geral para qualquer faixa, além de uma explicação:
Observe que neste exemplo eu usarei o intervalo
A1:C50
. O primeiro parâmetro ($A$1:$C$50
) deve ser substituído pelo intervalo no qual você deseja destacar duplicatas!para destacar duplicatas:
Format
>Conditional formatting...
Apply to range
, selecione o intervalo ao qual a regra deve ser aplicada.Format cells if
, selecioneCustom formula is
no menu suspenso.Por que isso funciona?
COUNTIF(range, criterion)
, comparará todas as célulasrange
com acriterion
, que é processada de maneira semelhante às fórmulas. Se nenhum operador especial for fornecido, ele comparará todas as células no intervalo com a célula especificada e retornará o número de células que correspondem à regra (nesse caso, a comparação). Estamos usando um intervalo fixo (com$
sinais) para sempre ver o intervalo completo.O segundo bloco
INDIRECT(ADDRESS(ROW(), COLUMN(), 4))
,, retornará o conteúdo da célula atual. Se isso foi colocado dentro da célula, os documentos terão chorado por dependência circular, mas, neste caso, a fórmula é avaliada como se estivesse na célula, sem alterá-la.ROW()
eCOLUMN()
retornará o número da linha e o número da coluna da célula especificada, respectivamente. Se nenhum parâmetro for fornecido, a célula atual será retornada (isso é baseado em 1, por exemplo,B3
retornará 3 paraROW()
e 2 paraCOLUMN()
).Então usamos:
ADDRESS(row, column, [absolute_relative_mode])
para converter a linha e a coluna numéricas em uma referência de célula (comoB3
. Lembre-se, enquanto estamos dentro do contexto da célula, não sabemos o endereço OU o conteúdo e precisamos do conteúdo para comparar com). O terceiro parâmetro cuida da formatação e4
retorna osINDIRECT()
gostos da formatação .INDIRECT()
, pegará uma referência de célula e retornará seu conteúdo. Nesse caso, o conteúdo da célula atual. Então, de volta ao início,COUNTIF()
testará todas as células do intervalo contra as nossas e retornará a contagem.O último passo é fazer a nossa fórmula retornar um boolean, tornando-a uma expressão lógica:
COUNTIF(...) > 1
. O> 1
é usado porque sabemos que há pelo menos uma célula idêntica à nossa. Essa é a nossa célula, que está no intervalo e, portanto, será comparada a si mesma. Portanto, para indicar uma duplicata, precisamos encontrar 2 ou mais células correspondentes às nossas.Fontes:
fonte
*
) e outra verificação, portanto, ao longo das linhas de((COUNTIF(...))*(NOT(ISBLANK(INDIRECT(...current cell...)))))
. É o melhor que posso fazer no celular. :)$A$1:$C$50
- de acordo com as colunas em questão. Gosto mais dessa abordagem genérica do que do zolley.Resposta de @zolley está certa. Basta adicionar um GIF e etapas para a referência.
Format > Conditional formatting..
Format cells if..
=countif(A:A,A1)>1
campoCustom formula is
A
com sua própria coluna.fonte
Fiz exatamente o que o zolley propôs, mas deve ser feita uma pequena correção: use "A fórmula personalizada é" em vez de "O texto contém" . E a renderização condicional funcionará.
fonte
Text Contains
, e é nisso que o usuário geralmente clica para acessar o menu suspenso.Destaque duplicatas (na coluna C):
Explicação: O
C1
aqui não se refere à primeira linha em C. Como esta fórmula é avaliada por uma regra de formato condicional, em vez disso, quando a fórmula é verificada para ver se ela se aplica,C1
refere-se efetivamente a qualquer linha que está sendo avaliada atualmente. veja se o destaque deve ser aplicado. ( Então é maisINDIRECT(C &ROW())
, se isso significa alguma coisa para você! ). Essencialmente, ao avaliar uma fórmula de formato condicional, qualquer coisa que se refira à linha 1 é avaliada na linha em que a fórmula está sendo executada. ( E sim, se você usa C2, solicita à regra que verifique o status da linha imediatamente abaixo da que está sendo avaliada no momento. )Portanto, conte as ocorrências do que estiver
C1
(a célula atual sendo avaliada) que está na coluna inteiraC
e se houver mais de 1 delas (ou seja, o valor tem duplicatas), então: aplique o destaque ( porque a fórmula , em geral, avalia comoTRUE
).Destaque apenas a primeira duplicata:
Explicação: Isso destaca apenas se os dois
COUNTIF
sãoTRUE
(eles aparecem dentro de umAND()
).O primeiro termo a ser avaliado (o
COUNTIF(C:C, C1) > 1
) é exatamente o mesmo que no primeiro exemplo; éTRUE
apenas se o conteúdo estiverC1
com uma duplicata. ( Lembre-se queC1
efetivamente se refere à linha atual que está sendo verificado para ver se ele deve ser destacado ).O segundo termo (
COUNTIF(C$1:C1, C1) = 1
) parece semelhante, mas possui três diferenças cruciais:Ele não pesquisa a coluna inteira
C
(como a primeira fazC:C
:), mas inicia a pesquisa a partir da primeira linha:C$1
($
obriga a olhar literalmente para a linha1
, não para a linha que estiver sendo avaliada).E então interrompe a pesquisa na linha atual que está sendo avaliada
C1
.Finalmente diz
= 1
.Portanto, somente ocorrerá
TRUE
se não houver duplicatas acima da linha que está sendo avaliada atualmente (o que significa que deve ser a primeira das duplicatas).Combinado com o primeiro termo (que será apenas
TRUE
se esta linha tiver duplicatas), isso significa que apenas a primeira ocorrência será destacada.Destaque a segunda e seguintes duplicatas:
Explicação: A primeira expressão é a mesma de sempre (
TRUE
se a linha atualmente avaliada for uma duplicata).O segundo termo é exatamente o mesmo que o último, exceto que é negado: tem um
NOT()
contorno. Por isso, ignora a primeira ocorrência.Finalmente, o terceiro termo coleta duplicatas 2, 3 etc.
COUNTIF(C1:C, C1) >= 1
inicia o intervalo de pesquisa na linha atualmente avaliada (aC1
naC1:C
). Em seguida, ele avalia apenasTRUE
(aplicar destaque) se houver uma ou mais duplicatas abaixo desta (e incluindo esta):>= 1
(não deve ser>=
apenas o>
contrário, a última duplicata será ignorada).fonte
Eu tentei todas as opções e nenhuma funcionou.
Somente scripts de aplicativos do Google me ajudaram.
fonte: https://ctrlq.org/code/19649-find-duplicate-rows-in-google-sheets
Na parte superior do seu documento
1.- vá para ferramentas> editor de scripts
2.- defina o nome do seu script
3.- cole este código:
4.- salve e execute
Em menos de 3 segundos, minha linha duplicada estava colorida. Apenas copie e cole o script.
Se você não conhece os scripts do Google Apps, esses links podem ajudá-lo:
https://zapier.com/learn/google-sheets/google-apps-script-tutorial/
https://developers.google.com/apps-script/overview
Eu espero que isso ajude.
fonte