COMO PREENCHER?
                    deixa eu falar: os sistemas aki do trampo usa um monte de função própria e de tanto acaba acostumando e tal. acabei esquecendo como preencher uma combo com o registro de uma tabela concatenando com o id da tabela.
ficaria assim na combo 1- rafael
como seria?
                
            ficaria assim na combo 1- rafael
como seria?
                    ve se isso te ajuda
                
            
msql = "select id, registro from syatabela"
rs.open msql, cnn
do while not rs.eof
   list1.additem rs!id & " - " & codigo
   rs.movenext
loop
                    fiz isso e naum funcionou.
cmbCHEQ_NOMEEMIT.AddItem SQLPegaColLng(Rs(1)) & "- " & SQLPegaColStr(Rs(3))
                
            cmbCHEQ_NOMEEMIT.AddItem SQLPegaColLng(Rs(1)) & "- " & SQLPegaColStr(Rs(3))
                    da alguma mensagem de erro?
o que acontece?
                
            o que acontece?
                    não simplesmente não apareceu na combo
                
            
                    pior q coloquei o resultado numa msgbox e apareceu o registro certo, porém naum na combo. esse mesmo campo SQLPegaColStr(Rs(3)) vai num outro txt e esse txt é desabilitado. será q é por isso?
 
                
            
                    Faz isso daqui:
Aqui foi...
flw
                
                  
Dim msql As String
    
    Set rx = New ADODB.Recordset
    
    msql = "select codigo, nome from cad_cliente"
    rx.open msql, cn
    Do While Not rx.EOF
      Me.Combo1.AddItem rx!codigo & " - " & rx!nome
      rx.MoveNext
    Loop
End Sub
 Aqui foi...
flw
                    pra data combo
preenchendo com ado
set RecordSet = SuaConexao.execute("Select * From SuaTabela")
set SeuCombo.RowSource = RsComboHistorico
                
            preenchendo com ado
set RecordSet = SuaConexao.execute("Select * From SuaTabela")
set SeuCombo.RowSource = RsComboHistorico
                    não vai.
                
            
                    Vamu la entaum...
Dim msql As String
'rx é o meu recordset
Set rx = New ADODB.Recordset
'Aqui você vai mudar o meu campo codigo pelo seu id e o nome pelo registro
msql = "select codigo, nome from cad_cliente"
'rx(recordset) abre a conexão e a string sql
rx.open msql, cn
'Aqui vai preencher enquanto tiver registro na tabela
Do While Not rx.EOF
Me.Combo1.AddItem rx!codigo & " - " & rx!nome 'mudar campo codigo pelo seu campo id e campo nome pelo seu campo registro
rx.MoveNext
Loop
End Sub
Verificar:
1ºOlhe o nome do seu recordset
2ºDeclare em um modulo seu recordset e connection
3ºVerifique o caminho do seu DataBase.
caso d algum problema me envia o programa com a tabela...
flw
                
            Dim msql As String
'rx é o meu recordset
Set rx = New ADODB.Recordset
'Aqui você vai mudar o meu campo codigo pelo seu id e o nome pelo registro
msql = "select codigo, nome from cad_cliente"
'rx(recordset) abre a conexão e a string sql
rx.open msql, cn
'Aqui vai preencher enquanto tiver registro na tabela
Do While Not rx.EOF
Me.Combo1.AddItem rx!codigo & " - " & rx!nome 'mudar campo codigo pelo seu campo id e campo nome pelo seu campo registro
rx.MoveNext
Loop
End Sub
Verificar:
1ºOlhe o nome do seu recordset
2ºDeclare em um modulo seu recordset e connection
3ºVerifique o caminho do seu DataBase.
caso d algum problema me envia o programa com a tabela...
flw
                    Public Sub PreencheCombo()
Dim rs As Recordset
Dim sql as String
    
On Error GoTo TrataErro
sql = "SELECT ID, NOME FROM MINHATABELA"
    
Set rs = conexao.execute(sql)
    
cboAux.Clear
    
With rs
Do Until .EOF
With cboAux
.AddItem rs("ID") & " - " & rs("NOME")
.ItemData(.NewIndex) = rs("ID")
End With
.MoveNext
Loop
.Close
End With
Set rs = Nothing
    
Exit Sub
    
TrataErro:
MsgBox("Erro ao tentar preencher combo)
End Sub
Para acessar o combo, pegando o ID, utilize assim:
id = Combo.ItemData(Combo.ListIndex)
Assim, aparecerá 1 - Rafael, e quando selecionar a combo, vai ser o ID que será retornado.
                
            Dim rs As Recordset
Dim sql as String
On Error GoTo TrataErro
sql = "SELECT ID, NOME FROM MINHATABELA"
Set rs = conexao.execute(sql)
cboAux.Clear
With rs
Do Until .EOF
With cboAux
.AddItem rs("ID") & " - " & rs("NOME")
.ItemData(.NewIndex) = rs("ID")
End With
.MoveNext
Loop
.Close
End With
Set rs = Nothing
Exit Sub
TrataErro:
MsgBox("Erro ao tentar preencher combo)
End Sub
Para acessar o combo, pegando o ID, utilize assim:
id = Combo.ItemData(Combo.ListIndex)
Assim, aparecerá 1 - Rafael, e quando selecionar a combo, vai ser o ID que será retornado.
                        Tópico encerrado , respostas não são mais permitidas