vlookup para valor de célula separado por vírgula com referência de outra planilha

vlookup para valor de célula separado por vírgula com referência de outra planilha

Eu tenho a planilha1

**group**                 **Name**
red,white,blue
white, blue,red
blue,red
red,white,blue,pink

folha

sheet2 
Color              Name
red               joe
white             jim
blue              bill

folha

com vários registros, deseja pesquisar vários nomes para o nome do grupo na planilha1 b1, não é possível usar o Office 365 para junção de texto. Qualquer outra maneira?

Responder1

Eu faria isso usando VBA.

  1. Abra o editor VBA usando Alt+F11

  2. Inserir > Módulo

  3. Cole este código:

Subprocura_VBA()

  Dim c como intervalo
  Dim arr() como string
  Dim i enquanto
  Dim match enquanto
  Dim resultado como string

  Em caso de erro, vá para errH
  Para cada c em planilhas("Folha1").Range("A2:A10")
    arr = Dividir(c, ",")
    Para i = 0 para UBound (arr)
      match = WorksheetFunction.match(Trim(arr(i)), Sheets("Sheet2").Cells(1).EntireColumn, 0)
      Se correspondência = 0 Então
        sResult = sResult & "N/A, "
      Outro
        sResult = sResult & Planilhas("Planilha2").Células(correspondência, 2).Valor & ", "
      Fim se
      correspondência = 0
    Próximo
    sResult = Esquerda(sResult, Len(sResult) - 2)
    c.Offset(, 1).Valor = sResultado
    sResult = vbNullString
  Próximo
errH:
  Se Err.Number = 1004 Então
    Retomar próximo
  ElseIf Err.Number > 0 Então
    MsgBox Err.Number & " " & Err.Description, , "Erro"
  Fim se

Finalizar sub
  1. No código, altere .Range("A2:A10")com o endereço real dos dados na sua coluna “grupo”.
  2. Se necessário, altere Sheet1e Sheet2com os nomes reais das planilhas.
  3. BaterF5

Resultados:
resultados de vírgula delimitador de pesquisa vba

informação relacionada