CARREGAR COMBOBOXES

DJHASSELMANN 27/03/2013 14:28:55
#421122
Boa tarde a todos!

Como posso fazer para que: Tenho 5 combos e todas preenchidas com dados de uma unica tabela exemplo a de Clientes, o que estou querendo é que se o usuário selecionar um cliente qualquer na combo 1 a dois não tenha o cliente da 1 na lista e assim por diante até a 5ª combo sendo que uma deve não conter os dados das demais!

A quem ajudar agradeço muito!

Obrigado!
MARCELO.TREZE 27/03/2013 15:08:16
#421126
Resposta escolhida
posta como vc está preenchendo a combo para poder te mostrar o caminho
DJHASSELMANN 27/03/2013 15:21:05
#421127
Citação:

PreencherLista cboCliente, [Ô]tbCliente[Ô], [Ô]IdCliente[Ô], [Ô]RazaoSocial[Ô]
PreencherLista cboCliente1, [Ô]tbCliente[Ô], [Ô]IdCliente[Ô], [Ô]RazaoSocial[Ô]
PreencherLista cboCliente2, [Ô]tbCliente[Ô], [Ô]IdCliente[Ô], [Ô]RazaoSocial[Ô]
PreencherLista cboCliente3, [Ô]tbCliente[Ô], [Ô]IdCliente[Ô], [Ô]RazaoSocial[Ô]
PreencherLista cboCliente4, [Ô]tbCliente[Ô], [Ô]IdCliente[Ô], [Ô]RazaoSocial[Ô]

[txt-color=#e80000]Public Sub PreencherLista(pLista As Control, pTabela As String, pCampoChave As String, pCampoTexto As String)[/txt-color]
On Error GoTo errLista
MDIPrincipal.sbrPrincipal.Panels(1) = [Ô]Montando lista...[Ô]
Screen.MousePointer = vbHourglass
gSQL = [Ô]Select [Ô] & pCampoChave & [Ô],[Ô] & pCampoTexto & [Ô] from [Ô] & pTabela
Set gRSTemp = gDB.OpenRecordset(gSQL)

With pLista
.Clear
Do While Not gRSTemp.EOF
.AddItem gRSTemp(pCampoTexto)
.ItemData(.NewIndex) = gRSTemp(pCampoChave)
gRSTemp.MoveNext
Loop
End With
Screen.MousePointer = vbDefault
gRSTemp.Close
MDIPrincipal.sbrPrincipal.Panels(1) = [Ô][Ô]
Exit Sub

errLista:
Erro [Ô]preenchimento da lista[Ô]
Exit Sub
End Sub


MARCELO.TREZE 27/03/2013 16:27:23
#421129
o segredo está na query

bom no caso acredito que sua função não seria a ideal para fazer o que vc deseja, vc teria que ter quatro querys diferentes, preenchendo os combos da seguinte maneira

veja vc preenche o primeiro combo normalmente

sSQL = [Ô]select campoid,compotexto from tabela[Ô]


porém quando vc selecionar um item neste combo, vc captura o click do mesmo e preenche o segundo combo sem o registro selelcionado no primeiro assim

sSQL = [Ô]select campoid, campotexto from tabela where campotexto <> [ô][Ô] & combo1.text & [Ô][Ô]


e assim serve pra os demais veja como ficaria o terceiro

sSQL = [Ô]select campoid, campotexto from tabela where campotexto <> [ô][Ô] & combo1.text & [Ô] and campotexto <> [ô][Ô] & combo2.text & [Ô][ô][Ô]


talvez vc até consiga adaptar na sua funcão


Tópico encerrado , respostas não são mais permitidas