Ir ao conteúdo

Excel ProcV com vários resultados, mostrando na mesma célula


Ir à solução Resolvido por Patropi,

Posts recomendados

Postado

Boa Tarde,

 

Estou com dificuldade em criar um procv que encontre vários resultados repetidos e me mostre em uma única célula, é possível??

 

Ex. Eu digitar a Marca, e o resultado mostrar todos os modelos em um única célula

 

tabela.JPG

Postado
37 minutos atrás, CasaDoHardware disse:

Com formulas nao creio ser muito eficiente.
 

Com VBA talvez!

 

Eu sugiro usar uma tabela dinamica.

Como seria em VBA? não entendo muito

  • Membro VIP
  • Solução
Postado

Boa tarde @samuk2008

 

Confira na planilha e não se esqueça de habilitar as macros quando acessar a planilha.

Utilizei uma UDF, ou seja, é uma função definida pelo usuário, com VBA, pois o Excel não possui ferramenta nativa que faça isso.

 

Se foi útil, clique em Curtir.

Se a resposta solucionou a dúvida, marque o tópico como Resolvido.(Na minha assinatura tem um link para uma instrução de como proceder).

 

[]s

18_08_19_Concatenar conforme a marca_Patropi.zip

  • Curtir 1
  • Obrigado 2
  • 2 semanas depois...
  • 6 meses depois...
  • Membro VIP
Postado

@Matheusr1

 

Seja bem-vindo ao fórum!

 

Foi feito com programação VBA.

 

Pra facilitar anexe um arquivo Excel, demonstrando o resultado esperado, pois cada caso é um caso e você não conseguirá adaptar numa planilha com estrutura diferente.

 

[]s

  • Amei 1
Postado
13 horas atrás, Patropi disse:

@Matheusr1

 

Seja bem-vindo ao fórum!

 

Foi feito com programação VBA.

 

Pra facilitar anexe um arquivo Excel, demonstrando o resultado esperado, pois cada caso é um caso e você não conseguirá adaptar numa planilha com estrutura diferente.

 

[]s

 

Segue arquivo.

 

Boa noite,

 

 

A base é a aba GERAL.

image.thumb.png.3ab4f8c7e96194f3646dedfb4ecc54de.png 

Na aba DADOS eu preciso que na coluna K me retorne as cores que estão faltando no estoque atual com base no modelo e tamanho.

EX. MODELO 55 TAMANHO PREMATURO

image.png.683b21cf86d92983eaf220154343a52a.png

 

Mas se faltasse mais cores em estoque ficaria assim

EX MODELO 55 TAMANHO PREMATURO

image.png.b4f08645a3418a03a5ce3d1eccb6499c.png

 

Na coluna P ele retornasse as cores que vão estar zeradas com base na projeção estoque 

EX MODELO 55 TAMANHO PREMATURO

image.png.698a16df0a2e834a124c68f471927a21.png

 

Na coluna Q ele retornasse as corres que não vão estar zeradas com base na projeção estoque - 90dias

EX MODELO 55 TAMANHO PREMATURO

image.png.e88930d485faac9126cae13f864fd0b6.png

 

 

adicionado 0 minutos depois

Muito obrigado desde já!Pasta1.rar

 

image.png

image.png

image.png

image.png

Postado

Sugestão: nas colunas K, P e Q coloque os resultados esperados e explique como obteve cada um deles. Indique com exatidão os endereços das células de origem dos dados lançados nos resultados, não basta escrever "Mas se faltasse mais cores em estoque ficaria assim". Por exemplo nesse caso, é preciso indicar como e onde vamos consultar para avaliar se faltam mais cores: planilha, coluna, linha, célula, ...

Postado

@osvaldomp Eu consegui usando o código que você escreveu, mas mudei algumas coisas

 

Function ConcatenateIf(CriteriaRange As Range, Condition As Variant, CriteriaTRange As Range, ConditionT As Variant, CriteriaQRange As Range, ConditionQ As Variant, ConcatenateRange As Range, Optional Separator As String = "/") As Variant

'ESSA FORMULA É PARA ENCONTRAR A REFERENCIA EXATA DO QUE ESTAMOS PROCURANDO
'EXEMPLO DE FORMULA
'=@ConcatenateIf(A1:A7;F2;C1:C7;G2;D1:D7;0;C1:C7;" / ")
'EX. 'A1:A7 = ONDE A REFERENCIA DE BUSCA ESTA
'EX. F2 = O QUE DEVE PROCURAR
'EX. B1:B7 = CRITÉRIO 1 DE PROCURA, ONDE DEVE PROCURAR
'EX. G2 = CRITÉRIO 1 DE BUSCA, NESSE EXEMPLO É O QUE TAMBÉM DEVE SER BUSCADO
'EX. D1:D7 = CRITÉRIO 2 DE PROCURA, ONDE DEVE PROCURAR
'EX. 0 = CRITÉRIO 2 DE BUSCA, NESSE EXEMPLO 0 É O QUE DEVE SER BUSCADO
'EX. C1:C7 = É ONDE ESTÃO OS RESULTADOS QUE PODEM SER RETORNADOS
'EX. OPCIONAL = COMO ELE IRA SEPARAR OS RESULTADOS ENCONTRADOS (NESSE EXEMPLO ELE IRA SEPARAR COM /

Dim xResult As String

On Error Resume Next

If CriteriaRange.Count <> ConcatenateRange.Count Then
    ConcatenateIf = CVErr(xlErrRef)
    Exit Function
End If

If CriteriaQRange.Count <> ConcatenateRange.Count Then
    ConcatenateIf = CVErr(xlErrRef)
    Exit Function
End If


For i = 1 To CriteriaRange.Count
    If CriteriaRange.Cells(i).Value = Condition And CriteriaTRange.Cells(i).Value = ConditionT And CriteriaQRange.Cells(i).Value = ConditionQ Then
        xResult = xResult & Separator & ConcatenateRange.Cells(i).Value
    End If
Next i


If xResult <> "" Then
    xResult = VBA.Mid(xResult, VBA.Len(Separator) + 1)
End If
ConcatenateIf = xResult
Exit Function
End Function

 

EX 1.

image.png.5104df2f1d66c0b6e37156f830cc70c6.png

EX. 2

image.png.6fc8c93c8de50c7a45c266b0c60d84c9.png

 

18_08_19_Concatenar conforme a marca_Patropi.rar

  • mês depois...
Postado
Em 18/08/2019 às 16:45, Patropi disse:

Boa tarde @samuk2008

 

Confira na planilha e não se esqueça de habilitar as macros quando acessar a planilha.

Utilizei uma UDF, ou seja, é uma função definida pelo usuário, com VBA, pois o Excel não possui ferramenta nativa que faça isso.

 

Se foi útil, clique em Curtir.

Se a resposta solucionou a dúvida, marque o tópico como Resolvido.(Na minha assinatura tem um link para uma instrução de como proceder).

 

[]s

18_08_19_Concatenar conforme a marca_Patropi.zip 12 kB · 17 downloads

Amigo,

 

Consigo fazer isto utilizando também Procv?

 

Essa é a fórmula: PROCV(A2;Dados!A:N;10;0)

 

Tenho uma lista com várias colunas e várias linhas, e algumas linhas repetem o número do pedido, mas tem o nome do produto diferente.

 

Tabela de resultados (Negócios)

image.thumb.png.e24ab69a0edeef48b9fffc7f2f5070db.png

 

 

Tabela de dados (Dados)

image.thumb.png.638d999984c19e73ea5932bccb361a4d.png

 

Note que eu tenho um número de pedido com 4 descrições diferentes na planilha de dados. Preciso que ao preencher a célula A2 na planilha negócios, retorne o valor de todas as descrições na O2. 

  • 1 ano depois...
Postado
Em 18/08/2019 às 16:45, Patropi disse:

Boa tarde @samuk2008

 

Confira na planilha e não se esqueça de habilitar as macros quando acessar a planilha.

Utilizei uma UDF, ou seja, é uma função definida pelo usuário, com VBA, pois o Excel não possui ferramenta nativa que faça isso.

 

Se foi útil, clique em Curtir.

Se a resposta solucionou a dúvida, marque o tópico como Resolvido.(Na minha assinatura tem um link para uma instrução de como proceder).

 

[]s

18_08_19_Concatenar conforme a marca_Patropi.zip 12 kB · 36 downloads

caraca meu, ajudou muito, estava quebrando a cabeça pra faze uma planilha, muitíssimo obrigado, isso foi uma luz no fim do tunel pra mim

  • Curtir 1
  • 2 anos depois...

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...