Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
[Resolvido] Access 2007 - Verificar caixa de texto
08-12-2011, 21:12 (Esta mensagem foi modificada pela última vez a: 04-01-2012 21:56 por nioxys.)
Mensagem: #1
[Resolvido] Access 2007 - Verificar caixa de texto
Olá Smile

Indo directo ao assunto, eu tenho um formulário em Access 2007 que contém 3 caixas de texto, um botão e uma caixa de listagem.

A caixa de listagem recebe dados de uma consulta, consulta essa que tem como critérios os dados inseridos nas caixas de texto. A consulta é executada ao clicar no botão.

Resumindo, o utilizador introduz dados nas caixas de texto (nas 3 ou apenas 1 ou 2) e ao clicar no botão a caixa de listagem é carregada com os dados que correspondem à pesquisa.

Até aqui tudo bem, no entanto se o utilizador não introduzir nada nas caixas de texto e clicar no botão a caixa de listagem é carregada com todos os dados. É isto que eu quero evitar e para isso pensei em colocar no evento click do botão o seguinte código,

Código:
Private Sub Comando16_Click()

If (cod.text = "" & nome.text = "" & idade.text = "") Then
    MsgBox "Preencha um dos Campos de Pesquisa"
Else
    Instrucções
End If
End Sub

Ao executar aparece a seguinte mensagem de erro,

Citar:Só é possível referenciar uma propriedade ou método para um controlo, se o foco estiver no controlo

Pelo que percebi a caixa de texto tinha de ter o foco em si mas eu não sei como isso se faz nem se é possível estarem as 3 com focos uma vez que eu estou a testar as 3.

Fiz umas pesquisas mas não encontrei nada em concreto, apenas que não é boa prática usar textbox.text = "" mas sim testbox.text = string.empty, isto das boas práticas eu vejo depois eu queria mesmo era conseguir testar o conteúdo das caixas de texto.

Nota: Os meus conhecimentos em VBA são limitados Tongue

Acabei de escrever isto e lembrei-me de uma possível solução, o botão pode estar desactivado enquanto o utilizador não introduzir nada nas caixas de texto e para o activar utilizo o eventoOnchange das caixas de texto, mas talvez dê o mesmo erro uma vez que o focos não estaria no botão, não faço ideia. Tongue

Acabei de testar isto que mencionei em cima e funciona, foi preciso ter este trabalho todo para ter esta brilhante ideia. Big Grin
Bastou colocar o botão no estado desactivado e no evento Change
de cada caixa de texto o seguinte código,

Código:
btnpesquisa.Enabled = True

Ou seja, o utilizador não pode clicar no botão se não preencher uma das caixas de texto.



A seguinte dúvida ainda persiste,

Tenho outra caixa de listagem que é carregada com uma tabela que contém campos do tipo anexo, ou seja, na caixa de listagem aparece uma lista de ficheiro, pdf, por exemplo.
A questão que coloco é se é possível abrir esses anexos utilizando o evento click da caixa de listagem e se sim, como? Smile

“A neutron walks into a bar and asks how much for a drink. The bartender replies, ‘For you, no charge.’” - Sheldon Cooper
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
02-01-2012, 16:07 (Esta mensagem foi modificada pela última vez a: 02-01-2012 16:08 por nioxys.)
Mensagem: #2
RE: [Dúvida] Access 2007 - Verificar caixa de texto
Já consegui resolver a minha última questão. Deixei de utilizar a funcionalidade "Anexo" do Access e criei uma pasta onde coloco todos os ficheiros. Na tabela basta ter um campo chamado Ficheiro, por exemplo, e nesse campo escrever o nome do respectivo ficheiro, Teste.pdf.

A caixa de listagem é preenchida com os valores da tabela ficando algo do género,

teste.pdf
teste_2.pdf

etc

No evento duplo clique da caixa de listagem coloco o seguinte código,

Citar:Private Sub Lfile_DblClick(Cancel As Integer)
Application.FollowHyperlink CurrentProject.Path & "\files\" & Me!Lfile.Column(1)
End Sub

Sempre que clicar numa linha da caixa de listagem é aberto o ficheiro correspondente.

Fica a dica para quem precisar. Wink

“A neutron walks into a bar and asks how much for a drink. The bartender replies, ‘For you, no charge.’” - Sheldon Cooper
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Saltar Fórum:


Utilizadores a ver este tópico: 1 Visitante(s)