Como usar combinação se com condição?
No Excel, existem dois métodos para usar a fórmula de concatenação.
- Por coluna
- Por linhas
E temos duas funções diferentes para escrever estas fórmulas. Portanto, neste tutorial, aprenderemos todos os quatro métodos.
Concatene com IF usando a função CONCAT
1. Por coluna
Esta fórmula é bastante simples. Aqui estamos testando se o valor “A” está na coluna A. E se estiver lá, combine os valores das colunas A e B.
Usamos as funções CONCAT e IF. Na função IF, especificamos uma condição para testar se o valor da célula A1 é “A”.
E se o valor for A, retorne o intervalo A1:B1; caso contrário, um valor vazio. Por fim, CONCAT usa o intervalo retornado por IF e combina os valores.
=CONCAT(IF(A1="A",A1:B1,""))
2. Por linhas (+ colunas)
Agora digamos que você queira concatenar os valores de todas as linhas usando uma condição. Neste caso você pode usar a mesma fórmula, mas deve se referir a todo o intervalo.
=CONCAT(IF(A1:A4="A",A1:B4,""))
Nesta fórmula, IF verifica o valor A’ em todo o intervalo A1:A4. TRUE para a célula com o valor e FALSE para o restante.
E então retorna linhas do intervalo A1:B4 onde o valor é “A” na coluna A.
Concatene com IF usando a função TEXTJOIN
1. Por colunas
Depois de inserir a função TEXTJOIN, você precisa especificar o delimitador. E também se você deseja ignorar células vazias ou não. Depois disso, você precisa usar a função SE como usou no método anterior.
=TEXTJOIN(",",TRUE,IF(A1="A",A1:B1,""))
IF só retorna valores de intervalo se uma célula na coluna A tiver o valor “A”.
2. Por linhas
E da mesma forma, você pode concatenar valores de várias linhas usando uma condição.
Por exemplo, na fórmula abaixo, você referenciou todo o intervalo A1:A4 para a condição a ser testada. E para o intervalo A1:B4 para o valor combinar.
=TEXTJOIN(",",TRUE,IF(A1:A4="A",A1:B4,""))
No resultado temos os valores A,1,A,3, das células A1, B1, A3 e B3.
Com a função SE, testamos uma condição na coluna A. Ela retorna os valores das linhas onde o valor da célula na coluna A é “A”.
TEXTJOIN ignora valores vazios e, usando o delimitador, combina todos os valores em um.