Fórmula do Excel para pesquisar duas células por string e multiplicar números correspondentes se string for diferente

0

Eu gostaria de comparar duas células específicas que contêm uma única string. A string consiste em um valor numérico, de um ou dois dígitos, seguido pela letra H ou W . Ou a célula poderia conter apenas um zero (sem letra). por exemplo, as células podem conter 3H ou 2W ou 0 .

Eu quero produzir um valor em uma terceira célula com base nessas duas células. Se as células terminarem na mesma letra, quero que a fórmula produza o valor zero (0). Se eles terminarem com letras diferentes, quero que a fórmula multiplique os valores numéricos das duas células. Se uma das células contiver apenas um zero, o valor de saída deverá ser zero.

Exemplos:

  • 3H comparado com 2W se torna 3 x 2 , gerando 6 .
  • 3H comparado com 2H outputs 0 porque as letras correspondem.
  • 3H comparado com 0 outputs 0 porque um dos valores é 0 .

Na planilha, os valores numéricos são variáveis (até 99 ), mas as letras sempre serão H ou W e sempre serão imediatamente após o número (exceto no caso de 0 entry).

    
por zenmonki 06.08.2016 / 18:41

1 resposta

0

Digamos que seus dois valores estejam nas células A1 e B1 e seu resultado esteja em C1. Você poderia usar isso em C1:

=IF(RIGHT(A1,1)=RIGHT(B1,1),0,LEFT(A1,LEN(A1)-1)*LEFT(B1,LEN(B1)-1))

Isto assume que não há irregularidades, como um espaço errante em qualquer lugar. Ele compara o caractere mais à direita das duas células e retorna zero se elas corresponderem. Caso contrário, multiplica tudo, exceto o caractere mais à direita. Extrair tudo à esquerda do caractere mais à direita fornece uma string de texto, mas o Excel é inteligente o suficiente para tratá-lo como um número.

Você indica em um comentário que um dos valores poderia ser um único zero (sem nenhum caractere), nesse caso a saída deve ser zero. Para evitar uma condição de erro, você precisa lidar com essa célula, o que você poderia fazer incluindo um teste. Esse método também manipulará uma célula em branco:

=IF(OR(RIGHT(A1,1)=RIGHT(B1,1),A1=0,B1=0),0,LEFT(A1,LEN(A1)-1)*LEFT(B1,LEN(B1)-1))
    
por 06.08.2016 / 19:00