Como posso encontrar valores duplicados em uma coluna que delimita os resultados por intervalos em uma coluna diferente?

1
     A          B            C
1  RANGES     VALUES   FORMULA NEEDED  
2    1          x           yes
3    1          x           yes
4    2          x           no
5    3                      no
6    3          y           yes
7    3          y           yes
8    4          x           no
9    5          z           no
10   5          y           no

Então, quero identificar duplicatas em VALUES, delimitando resultados por valores em RANGES. Eu gostaria que o resultado fosse na coluna FÓRMULA NECESSÁRIA.

O que eu preciso são os valores duplicados da coluna VALUES. Mais especificamente, eu preciso ver se o que eu encontro na coluna VALUES é uma duplicata, usando (isto é importante) o intervalo de duplicatas da coluna RANGES como um delimitador. Espero que tenha feito sentido.

Então, se: - x é duplicado dentro das linhas que são numeradas 1, isso é um sim. - y é duplicado dentro das linhas numeradas 3, mesmo com valores em branco ou valores adicionais, como x lançado lá, isso ainda é um sim.

Esta é a minha tentativa falhada:

=IF(AND(A2=A1,B2=B1),"yes","no")
    
por alex 14.05.2015 / 14:21

1 resposta

0

Você precisa usar o VBA.

Então, o que você precisa fazer é ler os valores da coluna A + B em uma matriz.
Digamos que temos uma matriz denominada C , então C (1) será A2 + B2="1x"; C (2) será A3 + B3="1x"; C (3): A4 + B4="2x"; etc
Você faz um loop for para ler em todos os valores que você tem para C (i).

Depois de ter isso, basta google excel vba how to find duplicate values in an array
Tenho certeza de que haverá muitas soluções para isso.

Depois de obter isso, você provavelmente obterá uma matriz que armazena valores em outra ou na mesma matriz, por exemplo, em Booleanos (verdadeiro / falso)

Então, você acabou de executar outro laço para ele, que será algo como: for i = 1 to NumberOfRows if C(i) = true then Cells(i, "C").Value = "true" next i

Claro que existem mais soluções possíveis, mas é assim que eu faria.
Se você tiver dúvidas, não hesite em perguntar!

    
por 14.05.2015 / 16:39