A função substituta do Excel corresponde ao conteúdo inteiro da célula

0

Eu tenho uma função VLOOKUP que estava retornando um 0 em vez de espaços em branco quando não havia correspondência.

      A               B
1   Heading     Heading
2   Data A      The year is 2015
3   Data B            0

Para combater isso, usei a função substitute :

=IFERROR(SUBSTITUTE(VLOOKUP($A2, 'HC Total'!A:C, 3), "0", ""), "")

O que geralmente resolve o problema, no entanto, se o valor VLOOKUP contiver um 0 em qualquer lugar, ele será substituído. Por exemplo, The year is 2015 se torna The year is 215 .

Eu gostaria de evitar o uso de:

=IF(VLOOKUP($A2, 'HC Total'!A:C, 3)=0, "", VLOOKUP($A2, 'HC Total'!A:C, 3))

Como não quero chamar VLOOKUP duas vezes se puder ser ajudado.

É possível usar a função SUBSTITUTE para corresponder e substituir células inteiras contendo 0 , e não qualquer ocorrência de 0 ?

    
por Tim Wilkinson 03.03.2016 / 14:40

1 resposta

2

Sua chamada do Vlookup () VLOOKUP($A2, 'HC Total'!A:C, 3) está faltando o parâmetro Lookup do intervalo. Quando este parâmetro é omitido, o padrão será True. Isto irá dizer a função para encontrar a correspondência mais próxima, assumindo que os dados são classificados em ordem crescente.

Tente usar:

=IFERROR(VLOOKUP($A2, 'HC Total'!A:C, 3,False), "")

O Vlookup () retornará um # N / A se o valor não for encontrado e o IfError () irá substituí-lo por um espaço em branco.

EDIT: Em resposta ao seu comentário

Eu assumirei que os valores que você deseja retornar são inteiros que podem conter um zero, mas serão maiores que o único 0 retornado pelo Vlookup ().

Para resolver isso, use a combinação IFERROR (VLOOKUP ()) e use um formato personalizado para sua célula de destino 0;-0;;@
Se seus valores contiverem decimais, use 0.00;-0.00;;@

    
por 03.03.2016 / 15:06