Solucionado (ver solução)
Solucionado
(ver solução)
20
respostas

Busca por dados em colunas

Minha dúvida é qual a formula necessária para buscar necessária para puxar uma série de linhas referentes a uma determinada célula que se repete, exemplo:

  • Quero buscar todas as datas referentes a qual aquele determinado usuário foi detectado, assim inserir tudo em uma coluna, com o nome do usuário no título da coluna e todas as datas em que ele foi detectado separadas por linha. Abaixo esta planilha que vai ser feita a busca como exemplo, segunda planilha esta inserido o modelo de busca que eu quero, porem no momento faço essa busca manualmente pelo Ctrl F, quero saber qual a formula necessária, sendo que essa segunda planilha vai ficar em outro página do arquivo. 1° PLANILHA (1° Página) 2° PLANILHA (2° Página)DATA USUÁRIO 35698 | joselitto - 01/02/2018 35698 (datas separadas por linhas) (datas separadas por linhas)02/02/2018 35698 03/02/2018 35698 04/02/2018 35698 05/02/2018 35698 06/02/2018 35698 07/02/2018 35698 08/02/2018 35698 09/02/2018 35698 10/02/2018 35698 11/02/2018 35698 12/02/2018 35698 13/02/2018 35698 14/02/2018 joselitto 15/02/2018 joselitto 16/02/2018 joselitto 17/02/2018 joselitto 18/02/2018 joselitto 19/02/2018 joselitto
20 respostas

Olá João tudo bem??

Confesso que tive dificuldade de entender o que precisa. Vou descrever o que entendi e você me diz se interpretei corretamente, beleza?

Você precisa de uma macro que abra o arquivo 1 e então nesse arquivo ele busque uma coluna específica e traga a linha referente aquela busca, no exemplo o usuário, então essa informação que pelo visto, pode existir em outras linhas deste mesmo usuário, seja retirada e colocada em um novo arquivo e neste arquivo 2 seja gerada uma nova tabela com as informações do arquivo 1 que você desejar?

Além disso, gostaria de solicitar o arquivo excel e a macro que está utilizando, assim eu poderei analisar e efetuar os ajustes necessários. Para isso, peço que coloque o arquivo no Google Drive e então compartilhe aqui o link comigo.

Fico no aguardo para resolvermos essa questão!

Perfeito Vitor!

Pelo que eu entendi aqui você já entendeu certinho a minha dúvida, vou compartilhar no drive com você o arquivo, fico no aguardo do seu e-mail. Se estiver disponível para uma call também ajudaria bastante, todo esse suporte ta incluso no pacote certo?

Agradeço desde já sua atenção, fico no aguardo do seu e-mail para compartilhar o arquivo.

Olá João,

Só upar o arquivo no drive e compartilhar o link aqui por favor. O nosso contato é sempre feito pela plataforma, aqui mesmo no fórum.

No aguardo.

Obrigado!

Victor, conseguiu acessar o arquivo?

Consegui sim João, estamos trabalhando para gerar a melhor solução!

Muito obrigado Victor! Tmj!

Bom dia Victor!

Como estão as coisas? Esta precisando de mais informações?

Bom dia Victor!

Estou no aguardo do retorno sobre a minha dúvida em relação as formulas solicitadas no documento compartilhado há 2 semanas atrás. Agradeço desde já sua atenção.

Obrigado.

Fala Victor e João, tudo bem?

João, sou professor na Alura e conduzi os novos cursos de Excel. Temos alguns exemplos novos e uma nova abordagem.

A pedido da Alura, estou ajudando você com esse tópico do curso anterior, mas confesso que seu pedido é muito complexo para fazermos com fórmulas.

É o típico caso, onde usar VBA é melhor e "mais fácil". Digo mais fácil entre aspas, porque o VBA tem sua complexidade natural...

Fiz aqui uma solução para o seu problema atual, mas a ideia é "ensinar a pescar" e não "dar o peixe", concorda? rrsrsrsrsrs

Para esse problema usei duas abordagens diferentes, uma função para buscar os dispositivos (problema 1) e uma rotina para buscar as datas e horas (problema 2).

Aviso: mudar o formato ou nome das planilhas pode comprometer o funcionamento das macros.

####################################

CÓDIGO DA FUNÇÃO:

####################################

Function fnProcuraDispositivos(pUsuario As String) As String

Dim lContaLinhas As Long
Dim auxRetorno As String

auxRetorno = vbNullString
lContaLinhas = 2

Do While Sheets("P1").Range("B" & lContaLinhas) <> vbNullString

    If Trim$(UCase(pUsuario)) = Trim$(UCase(Sheets("P1").Range("B" & lContaLinhas))) Then
        If Trim$(auxRetorno) <> vbNullString Then
            If InStr(1, auxRetorno, Trim$(Sheets("P1").Range("D" & lContaLinhas))) < 1 Then
                auxRetorno = auxRetorno & "; " & Trim$(Sheets("P1").Range("D" & lContaLinhas))
            End If
        Else
            auxRetorno = Trim$(Sheets("P1").Range("D" & lContaLinhas))
        End If
    End If

    lContaLinhas = lContaLinhas + 1
Loop

fnProcuraDispositivos = auxRetorno

End Function

####################################

CÓDIGO DA ROTINA:

####################################

Sub sbPreencheDataHora()

Dim lContaColunas As Integer
Dim lContaLinhasOrigem As Long
Dim lContaLinhasDestino As Long

lContaColunas = 1

Worksheets("DISPOSITIVOS").EnableCalculation = False

Do While Cells(2, lContaColunas) <> vbNullString

    lContaLinhasOrigem = 2
    lContaLinhasDestino = 3

    Do While Sheets("P1").Range("B" & lContaLinhasOrigem) <> vbNullString

        If Trim$(UCase(Cells(2, lContaColunas))) = Trim$(UCase(Sheets("P1").Range("B" & lContaLinhasOrigem))) Then
            Cells(lContaLinhasDestino, lContaColunas) = Trim$(Sheets("P1").Range("A" & lContaLinhasOrigem))
            lContaLinhasDestino = lContaLinhasDestino + 1
        End If

        lContaLinhasOrigem = lContaLinhasOrigem + 1
    Loop


    lContaColunas = lContaColunas + 1
Loop

Worksheets("DISPOSITIVOS").EnableCalculation = True

End Sub

Se sua versão do Excel for anterior à 2016. pode ser que tenha que fazer alguma adaptação...

Para facilitar sua vida, vou compartilhar no drive para você a versão da minha planilha....

https://drive.google.com/file/d/1O58Labvzw4q2uM4qdQPB7zidHiwSNDGg/view?usp=sharing

Depois que acessar e fizer uma cópia me avise para liberar a pasta ;)

Abraços!!!!

Bom dia Roberto

Td belezinha?!

Estou muito disposto a aprender a pescar essa peixe rs, quero aprender com você e com a Alura.

Estou meio perdido nessas fórmulas que você me encaminhou de primeira mão kkkk, mas vamos aprender juntos da melhor maneira, eu uso apenas o Google Planilhas, não possuo a licença do excell pela empresa, então durante todo o aprendizado vou usar o Google Planilhas. Então é isso, fico no aguardo, se quiser podemos marcar uma call e fazer simultaneamente as fórmulas.

Vou formular outro dúvida também, referente a quantidade de vezes que o usuário foi detectado, ou seja, quantas células de data e hora referem-se aquele determinado usuário.

Obrigado pela atenção e vamos em frente!

João, tudo bem?

Cara, eu imaginei que esse pudesse ser o cenário. VBA só funciona no Excel da Microsoft, então não é possível usar a solução que eu fiz pra você no google planilhas :( :( :(

(Mesmo assim, liberei acesso para você na planilha que eu fiz lá no drive)

Como disse, a solução por fórmula (que funcionaria no google planilhas) é ainda mais complicada.

No meu caso específico, apenas para esclarecer, sou instrutor externo na Alura, então não consigo fazer esse acompanhamento (Mentoria) que fuja tanto assim do curso que tenho aqui.

Acho que esse acompanhamento que você procura é um serviço à parte que não conheço se a estrutura da Alura provê. Talvez o @Victor saiba isso melhor que eu.

No mais, espero ter pelo menos esclarecido os pontos iniciais de dúvida ;)

Abraços e boa sorte neste desafio.

Bom dia Roberto.

Encaminhei a licença no excell já, assim podemos trabalhar da melhor maneira, consegues me mostrar esse modelo de solução VBA que você mencionou recentemente.

Aguardo o retorno,

Oi João, só para esclarecer alguns pontos que você comentou:

  • Se quiser podemos marcar uma call e fazer simultaneamente as fórmulas.
  • Se estiver disponível para uma call também ajudaria bastante, todo esse suporte ta incluso no pacote certo?

Não está incluso em nenhum pacote um suporte exclusivo via call para resolver questões que estão muito além do escopo dos cursos. Temos o fórum onde podemos discutir e direcionar a solução esperando que com alguns exemplos de como fazer, você consiga adaptar a solução para o problema que está tentando resolver.

solução!

João, quanto ao que já está feito na pasta do Google, liberei o acesso mais uma vez (acho que você acessou com outro e-mail).

Está com acesso liberado para: joao.hafner@connvert.com.br

Veja se consegue acessar ;)

Abraços!!!

Bom dia Roberto!

Consegui acessar sim consegui executar a fórmula dos dispositivos, ficou muito bacana!

Não estou identificando apenas a fórmula para identificar a Data e Hora das Ocorrências.

Aguardo retorno,

Gostaria de saber como você realizou a fórmula para buscas de dispositivos, ficou muito legal, quero aprender a fazer.

Acabei de visualizar os códigos que você inseriu no "Alt f11", antes não tava conseguindo visualizar kkkk

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software