Ir para conteúdo
Fórum Script Brasil
  • 0

Buscar valor na celula, pesquisar este valor na planilha.


mariojaa

Pergunta

Olá, sou novo em VBA, muito leigo em tudo, e estou precisando de ajuda no momento,  preciso de uma função no qual quando a pessoa digitar uma data no form, fará uma busca na planilha somente com o digito do dia, ex: 22-03-2021, irá pesquisar somente pelo dia 22 dentro da planilha.
E quando achar o dia 22 na planilha, irá selecionar a coluna correspondente ao dia  "22" (que foi pesquisado) e pesquisar por uma palavra especifica no meu caso "Plantão", quando achar essa palavra dentro da coluna do dia pesquisado "22", buscar na coluna "A" os nomes referente a linha da coluna pesquisada por "Plantão" (dia 22), ( e colocar esses nomes em TexTbox que irei especificar no form. ex: dia 22 pesquisado caiu na coluna "F" que possui 6 células, sendo 4 plantão e 2 folga, na mesma linha que esta escrito plantão, na coluna "A" tem os nomes das pessoas que no caso está de plantão.

 

Se ajudar a entender melhor, estou criando uma escala 12x36, com funcionários do turno da noite e do dia, 06:00 às 18:00 e 18:00 ás 06:00, essa pesquisa irá informar uma previsão de quem estará de plantão no dia e mês pesquisado.

plantao.jpg

4 minutos atrás, mariojaa disse:

lembrando pessoal, que a pesquisa da data é feita no userform clicando no botão de OK.

 

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Boa noite @mariojaa

Seria algo dessa maneira?

image.png.152636d262a88ddf947696eddfae319f.png

Public Sub cPesquisa(Data As String)
Const LDATAS As Long = 2
Const CNOMES As Long = 1
Const PTEXTO As String = "Y"
If Data = "" Then Exit Sub
Dim convData As Long
convData = Day(CDate(Data))

Dim uColDatas As Long
Dim c As Long

uColDatas = Cells(LDATAS, Columns.Count).End(xlToLeft).Column
uLinUsuar = Cells(Rows.Count, CNOMES).End(xlUp).Row

fUsuarios.ListBox1.Clear


For c = 2 To uColDatas
    If Cells(LDATAS, c).Value = convData Then
        For l = 3 To uLinUsuar
            If Cells(l, c).Value = PTEXTO Then
                fUsuarios.ListBox1.AddItem
                fUsuarios.ListBox1.List(fUsuarios.ListBox1.ListCount - 1, 0) = Cells(l, CNOMES).Value
                'Debug.Print Cells(l, CNOMES).Value
            End If
        Next l
    End If
Next c
End Sub

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...