Inquiridor
Consulta em formulário

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:59Moderador -
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