LIGACAO COMBOBOX A UMA TABELA DO ACCESS

GEOVANILDO 09/11/2010 14:20:58
#356987
eu sei q este topico acaba ficando repetitivo, mas eu ja li td sobre isso, como conectar dados de uma tabela do access a um combobox e até agora não consegui colocar no meu sistema

acontece o seguinte:

estou montando um sistema de compras de exemplo, e tenho a tabela requisitantes, onde ja fiz o formulario de cadastro dos requisitantes com o nome, o setor e o supervisor, tambem tenho a tabela requisicao, q é onde eu coloco as requisiçoes de compras dos funcionários da empresa, nesta tabela tenho o código, a data do pedido, o nome do requisitante, o setor e o supervisor,
pra não precisar digitar de novo o requisitante, o setor e o supervisor, queria fazer a ligação da tabela de requisitantes aos combobox desses tres itens,

até agora não consegui fazer isso de jeito nenhum com os códigos q encontrei por aki, se alguem puder me ajudar seria muito grato

qdo terminar o sistema vou postar aki o código fonte inteiro para estudos
EVSAR3 09/11/2010 15:10:05
#356999
Deixa eu ver se entendi:
Você quer selecionar o [ô]requisitante[ô] e automaticamente preencher os campos [ô]setor[ô] e [ô]supervisor[ô] referentes ao requisitante selecionado na combobox né isso?
Não é muito difícil, mas antes me diga, você quer fazer isso no Access ou no VB6?
ACG1574 09/11/2010 15:12:20
#357000
Resposta escolhida
bem, estou supondo que vc saiba executar um select no banco ok..

[ô]no load do form depois de criado o recordset , faça isso

while not rs.eof
combo1.additem rs!requisitante
rs.movenext
wend
GEOVANILDO 09/11/2010 15:20:43
#357001
sim, to querendo fazer isso no vb6

por exemplo, tenho a tabela de requisitantes ja com alguns dados cadastrados como nome dos requisitantes, setor e supervisor, ai quero passar esses dados em tres comboboxs (cborequisiante, cbosetor e cbosupervisor) que estão em outro formulário e q vão ser usados na tabela requisicao
vou tirar um print hj a noite em casa e posto aki como está o formulário


ACG1574
já tentei isso, mas ainda não consegui conectar e olha q ja vi varios projetos aki do site q davam certo
talves eu não esteja sabendo abrir o recordset
ou talves pq eu queira pegar os dados de outra tabela e deve ter outra forma para isso
EVSAR3 09/11/2010 15:22:03
#357002
ACG1574,

Creio que o que GEOVANILDO esteja buscando seja diferente, ele deseja preencher os campos do formulário de acordo com o que foi selecionado no combobox.
Presumindo que você já saiba fazer a ligação com a tabela e que o lista do combobox já esteja preenchida, vamos fazer o seguinte:
1 - Vamos abrir um recordset. Na cláusula WHERE da instrução SQL que dará origem ao recordset, use: [Ô]requisitante = [ô][Ô] & Me.cboRequisitante.Text & [Ô][ô][Ô]
2 - Preencha os campos do formulário com os dados do seu recordset.
Me.txtSetor.Text = rsRequisitantes([Ô]setor[Ô]).Value
Me.txtSupervisor.Text = rsReqeuisitantes([Ô]supervisor[Ô]).Value

Talvez seja inclusive a união das soluções propostas por mim e pelo AGC1574 a resolução do seu problema.

Tente isto e volte para dizer se ajudou.

Abraço e sorte.
EVSAR3 09/11/2010 15:24:27
#357003
Nós postamos juntos e eu ainda não tinha visto a resposta do GEOVANILDO.
Mas tá valendo ainda...
ACG1574 09/11/2010 15:46:14
#357008
bem, a questao de selecionar no combo um e buscar os relacionados é tranquilo, mas creio eu que o que ele nao ta conseguindo é preencher um combo com o recordset
vou postar o codigo com o recordset completo aqui pra ele.

private sub preencheCombo()
dim rs as adodb.recordset
sSql = [Ô]select nome_requisitante from requisitante[Ô]

Set rs = New ADODB.Recordset
rs.Open sSql, sCnx, adOpenStatic, adLockBatchOptimistic

while not rs.eof
combo1.additem rs!nome_requisitante
rs.movenext
wend
[ô]observacao, sCnx é a sua conexão ja aberta com o banco de dados ok.
End sub
GEOVANILDO 09/11/2010 19:10:48
#357034
blza, agora q to em casa talves de pra explicar melhor, vamos ao trabalho

o código da conexão é este aki

Option Explicit
Private daoDB36 As Database
Private TBrequisicao As DAO.Recordset
Dim sPath As String

Private Sub Form_Load()
sPath = _
[Ô]C:\Documents and Settings\Geva\Desktop\Apostilas Visual Basic 6\Sistema Compras\ICICI.MDB[Ô]
Set daoDB36 = DBEngine(0).OpenDatabase(sPath)
Set TBrequisicao = daoDB36.OpenRecordset([Ô]requisicao[Ô])
Set Data1.Recordset = TBrequisicao

vou mostrar as imagens agora do q eu tenho pra tentar explicar




então, é o seguinte
eu quero pegar os requisitantes q cadastrei na tabela só de requisitantes e colocar nos combobox da requisicao, com uma tabela só de requisicao,
GEOVANILDO 09/11/2010 19:12:09
#357035
puts, imagem fail
Tópico encerrado , respostas não são mais permitidas