Concatenar diversos valores dinâmicos usando a fórmula 'INDIRETO'

Anônima
2023-04-09T21:01:26+00:00

Olá a todos! 

Procurei a resposta e não encontrei, se puderem me ajudar agradeço muito 😁😁.  Tenho um script que atualiza o valor das células da coluna 'A' com a referência de outras células que devem ser concatenadas na coluna 'H'. Porém a fórmula 'INDIRETO' só funciona com uma referência, quando tento usar ela com o valor 'A2&B2&C2' ela não funciona.O que preciso é: somente concatenar diversos valores (dinâmicos) na coluna 'H'. Deixei uma planilha de exemplo compartilhada no OneDrive explicando o que preciso fazer, agradeço novamente muito obrigado!

https://1drv.ms/x/s!ArsrKSB6a_HjgYFyaXeNkBcN9N-MgQ?e=TAaHtO

Microsoft 365 e Office | Excel | Para uso doméstico | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários
Resposta aceita pelo autor da pergunta
Anônima
2023-04-10T10:29:36+00:00

Olá, tudo bem?

Se você usa o Microsoft 365 e no seu Excel você instalou as funções: LET, MAP, LAMBDA, UNIRTEXTO, então você pode usar a seguinte fórmula.

=LET(

ref; FILTROXML("<x><y>"&SUBSTITUIR(UNIRTEXTO("&";;A2);"&";"</y><y>")&"</y></x>";"//y");

SEERRO(UNIRTEXTO(" "; ; MAP(ref; LAMBDA(ref; INDIRETO(ref)))); "")

)

Se a resposta te auxiliou, não deixe por favor de "Marcar Como Resposta", por que a mesma poderá ajudar outros amigos com a mesma dúvida ou dúvidas semelhantes, obrigado!

At.te

Esta resposta foi útil?

2 pessoas acharam esta resposta útil.
0 comentários Sem comentários
Resposta aceita pelo autor da pergunta
Anônima
2023-04-12T14:21:57+00:00

Bom dia Orlando,

Em primeiro lugar, obrigado por marcar minha resposta. Abaixo está uma fórmula mais simples e mais curta do que a fórmula anterior. Espero que você veja este novo post.

=UNIRTEXTO(" "; ; MAP(TEXTSPLIT(A2; "&"); LAMBDA(a; TEXTSPLIT(INDIRETO(a); "&"))))

Atenciosamente.

Esta resposta foi útil?

1 pessoa achou esta resposta útil.
0 comentários Sem comentários

5 respostas adicionais

Classificar por: Mais útil
  1. Anônima
    2023-04-10T13:24:45+00:00

    IlirU sua resposta também deu certo, agradeço. As duas alternativas funcionam perfeitamente

    Esta resposta foi útil?

    1 pessoa achou esta resposta útil.
    0 comentários Sem comentários
  2. Anônima
    2023-04-10T13:21:43+00:00

    Muito obrigado Dio! Deu certo, agradeço novamente

    Esta resposta foi útil?

    0 comentários Sem comentários
  3. Dio Xavier 294.5K Pontos de reputação Moderador Voluntário
    2023-04-09T22:09:16+00:00

    Olá

    Bem vindo à Comunidade Microsoft 365 e Office

    Tudo bem, Orlando? Você mencionou que está tentando usar a função INDIRETO, mas ela não está funcionando para a concatenação de múltiplas células. Uma alternativa é usar a função CONCATENAR em VBA (Visual Basic for Applications) para alcançar o resultado desejado.

    Aqui está um exemplo de como você pode criar uma macro para concatenar os valores das células A2, B2 e C2 na coluna H2:

    Sub ConcatenarValores() Dim ws As Worksheet Dim valorA As String Dim valorB As String Dim valorC As String Dim valorConcatenado As String ' Defina a planilha de trabalho onde os valores serão concatenados Set ws = ThisWorkbook.Sheets("Nome_da_Sua_Planilha") ' Obtenha os valores das células A2, B2 e C2 valorA = ws.Range("A2").Value valorB = ws.Range("B2").Value valorC = ws.Range("C2").Value ' Concatene os valores valorConcatenado = valorA & valorB & valorC ' Atualize o valor da célula H2 com o valor concatenado ws.Range("H2").Value = valorConcatenadoEnd Sub <br> ---

    Você pode ajustar esse código para se adequar às suas necessidades. Por exemplo, se você deseja concatenar os valores em outras células ou em várias linhas, pode alterar as referências de células e loops de acordo. Certifique-se de substituir "Nome_da_Sua_Planilha" pelo nome real da planilha em que você deseja realizar a concatenação. Além disso, lembre-se de habilitar as macros no seu arquivo do Excel antes de executar a macro.

    Esta resposta foi útil?

    0 comentários Sem comentários