locked
Consulta em formulário RRS feed

  • Pergunta

  • olá!

    é o seguinte, preciso fazer uma consulta dentro de um formulário, mas tem que ser da seguinte maneira:

    no form tem que ter duas caixas de texto onde eu lançarei por exemplo, a data início e a data témino, um botão para que a consulta seja executada, e uma terceira caixa de texto, que será o local onde o resultado da consulta será lançado, isso tudo dentro de um form só.

    Será que alguém pode me explicar como faço isso?

    abraços

    Leandrum

    terça-feira, 5 de junho de 2007 15:59

Todas as Respostas

  • Não entendi bem o ponto da dúvida. Você mesmo já descreveu o passo a passo da solução que procura.

     

    Em que ponto emperrou?

    terça-feira, 5 de junho de 2007 17:59
    Moderador
  • Boa tarde Leandrum,

     

    Segue um simples exemplo de como fazê-lo:

     

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    'txtData1 - Caixa de Texto 1.

    'txtData2 - Caixa de Texto 2.

    'txtResultado - Botão que armazenará o resultado da consulta.

    'btnConsultar - Botão que realizará a consulta.

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

     

    'No evento click do botão criado xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Private Sub btnConsultar_Click()

     

    Dim tempData1           As Date
      Dim tempData2           As Date
      Dim SQL                 As String
      Dim Rs                  As DAO.Recordset

     

    'É aconselhável, aqui, você validar o que foi digitado nas cxs de texto antes de atribuir às variáveis xxx

    tempData1 = CDate(Format(txtData1.Value, "mm/dd/yyyy"))
      tempData2 = CDate(Format(txtData2.Value, "mm/dd/yyyy"))

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

     

    'Instrução simples, para a consulta em questão xxxxxxxxxxxxxxxxxxx

    SQL = ""
      SQL = "Select ProductName As NomeProduto From TB_Products"
      SQL = SQL + " Where Data_Ini = #" & tempData1 & "# and Data_Fim = #" & tempData2 & "#"
      'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

     

    'Recordset do tipo DAO, só para facilitar o exemplo xxxxxxxxx

    Set Rs = CurrentDb.OpenRecordset(SQL)
      'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

     

    'Testa o retorno da consulta a atribui à cx de texto de resultado

    If Rs.EOF = False Then
         txtResultado.Value = Rs("NomeProduto")
      End If

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

     

    'Fecha o recordset e libera memória xxxxxxxxxxxxxxxxxxxxxxxxx
      Rs.Close
      Set Rs = Nothing

    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

     

    'Fim do procedimento xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    End Sub

     

    Espero ter ajudado.

     

    Um abraço.


     

    terça-feira, 5 de junho de 2007 18:31
  • Pessoal, bom dia, é o seguinte, depois que o Pietro me mandou essa ajuda, eu tentei fazer mas não consegui, aí o jeito foi voltar a perguntar novamente, mas vou refazer a pergunta.

    O que preciso é que de dentro de um formulário, em caixas de texto, eu possa digitar os critérios de consulta como por exemplo data início e data fim, e em outra caixa de texto, dentro desse mesmo form, seja lançado o resultado da consulta. Caso ainda não tenha sido claro, por favor entrem em contato comigo, pelo LBARBOSA@SANEPAR.COM.BR

     

    ABRAÇOS

    LEANDRO BARBOSA

     

    quinta-feira, 30 de agosto de 2007 10:36
  • LEANDRO...acho bem complexo vc tornar o resultado dessa consulta em uma textbox...
    geralmente se vc tah passando algum critério não tão exato, o resultado pode ser vários...Nesse caso, aconselharia vc utilizar de uma LISTBOX, que mostra várias linhas ou até mesmo um subformulário...

    bom, de qualquer maneira, vc pude executar o que deseja com uma função DLOOKUP, informando dois critérios de filtragem:

     

    Me.Texto4 = DLookup("[Nome]", "Cliente", "[Codigo] > " & Me.Texto1 & " AND [Codigo] < " & Me.Texto3)

     

    deu pra entender?

    caso a função encontre mais de uma opção para o critério que vc determinou, o primeiro resultado é o que será retornado...

     

    Faça os testes e retorne os resultados...

    Abraços fera...

     

     

    sábado, 1 de setembro de 2007 05:28
  • Oi Skyzn,

    obrigado pela resposta mas eu não sei usar essa função, você teria um exemplo pronto para me passar uma cópia?

     

    Abraços

    terça-feira, 4 de setembro de 2007 10:56
  • Leandro....

    Recebi seu e-mail, e estarei te enviando um exemplo com a utilização desta função...

    Gostaria de pedir que, se a resposta é a correta para o tópico, por favor, que a marque...ok?

    Forte abraço fera...

    Aguarde meu retorno no e-mail!

    quarta-feira, 5 de setembro de 2007 23:01