COMBOBOX

DHELP 13/04/2011 14:01:42
#371219
Olá pessoal,

Gostaria de uma ajuda.

Estou criando um cadastro de cliente que utilizo um combobox para seleciona o status.

A origem desta combo é uma tabela que possui 2 campos:

IDStatus
Status

Quando abro o formulário eu executo o seguinte comando para popular a combo:

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Function carregaStatus()

Set rsB = New ADODB.Recordset

strSQLBasico = [Ô]SELECT * FROM Tab_Status[Ô]

rsB.Open strSQLBasico, cnn.connOrcamento, adOpenDynamic, adLockOptimistic, adCmdText

Do Until rsB.EOF

IDStatus.ItemData(IDStatus.NewIndex) = (rsB!IDStatus)
IDStatus.AddItem IIf(IsNull(rsB!Status), [Ô][Ô], rsB!Status)

rsB.MoveNext
Loop

rsB.Close
Set rsB = Nothing

End Function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Pois bem......eu tenho a tabela de cliente que esta gravado o IDStatus. Agora quando eu abro a tabela de cliente para popular a tela d cadastro, eu não consigo atribuir o ItemData ao combobox para aparecer Ativo ou inativo.

Agradeço antecipadamente.

Abraços.

Dhelp

TMLNANET 13/04/2011 14:11:14
#371221
Se eu entendi bem a dúvida faça isso:


Me.SeuCombo.ListIndex = StatusDoCliente

Claro q vc deve carregar o combo e o cliente antes disso
MSMJUDAS 13/04/2011 14:18:05
#371222
Tente colocar ao contrário:

...AddItem...
...ItemData...
SAMUKA 13/04/2011 16:15:34
#371232
DHELP, primeiro vc tem q popular o ComboBox
Depois existe 2 formas:

cbo.Text = rs!Status


ou então:


for i = 0 to cbo.ListCount
if cbo.ItemDaata(i) = rs!IDStatus then
cbo.ListIndex = i
end if
next


Mas num esquece, antes vc tem q Popular o Combo com todos os estatus possíveis.


do until rs.eof
cbo.AddItem rs!Status
cbo.ItemData(cbo.NewIndex) = rs!IDStatus
rs.movenext
loop
MARCELO.TREZE 13/04/2011 19:32:35
#371255
preenchido o combo

basta vc associar na consulta assim

SQL = [Ô]Select * From tabelaCliente  Where id = [Ô] & Combo.ItemData(Combo.ListIndex) 


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