|
Postada em 23/04/2005 00:22 hs
Estou tentando prencher um ComboBox, mas estou tendo dificuldade, alguem pode me ajudar
'Carrega Logradouro Me.cboLogradouro.BoundColumn = 1 Me.cboLogradouro.ColumnCount = 3 'Número de Colunas Me.cboLogradouro.ColumnWidths = "0cm;4,614cm;4,501cm" 'Lagura das Colunas
strCB = "SELECT T_Logradouros.Num_ID_Logradouro, (T_Logradouros.Nom_Logradouro) AS Logradouro, (T_Logradouros.Nom_Bairro) AS Bairro FROM T_Logradouros WHERE T_Logradouros.Cod_ID_Cidade=84101 ORDER BY T_Logradouros.Nom_Logradouro; " Set rsCB = cnn.Execute(strCB)
rsCB.MoveMin Do While Not rsCB.EOF Me.cboLogradouro.AddItem rsCB("Num_ID_Logradouro", "Logradouro", "Bairro") Me.cboLogradouro.AddItem rsCB("Logradouro"), Me.cboLogradouro.Column(1) Me.cboLogradouro.AddItem rsCB("Bairro"), Me.cboLogradouro.Column(2) rsCB.MoveNext Loop
Ivanenko
|
|
|
|
Ivanenko
|
BELO HORIZONTE MG - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 23/04/2005 02:05 hs
Resolvi conforme abaixo, porém o título das colunas não está aparecendo, aparece em branco. Como resolver isto e como gravar um novo registro? 'Carrega Logradouro Me.cboLogradouro.BoundColumn = 1 Me.cboLogradouro.ColumnCount = 3 'Número de Colunas Me.cboLogradouro.ColumnWidths = "0cm;4,614cm;4,501cm" 'Largura das colunas Me.cboLogradouro.ListWidth = "9,115cm" 'Largura da Lista Me.cboLogradouro.ColumnHeads = True 'Título das Colunas strCB = "SELECT T_Logradouros.Num_ID_Logradouro, (T_Logradouros.Nom_Logradouro) AS Logradouro, (T_Logradouros.Nom_Bairro) AS Bairro FROM T_Logradouros WHERE T_Logradouros.Cod_ID_Cidade = " & rs("Num_ID_Cidade") strCB = strCB & " ORDER BY T_Logradouros.Nom_Logradouro" Set rsCB = cnn.Execute(strCB) rsCB.MoveMin x = 0 Do Until rsCB.EOF Me.cboLogradouro.AddItem Me.cboLogradouro.List(x, 0) = rsCB("Num_ID_Logradouro") Me.cboLogradouro.List(x, 1) = rsCB("Logradouro") Me.cboLogradouro.List(x, 2) = rsCB("Bairro") x = x + 1 rsCB.MoveNext Loop rsCB.Close Set rsCB = Nothing
'Rotina de Leitura do Logradouro Me.cboLogradouro = "" For Cont = 0 To Me.cboLogradouro.ListCount - 1 If CLng(Me.cboLogradouro.List(Cont, 0)) = rs("Num_ID_Logradouro") Then Me.cboLogradouro.ListIndex = Cont Exit For End If Next
Ivanenko
|
TÓPICO EDITADO
|
|
|
|
screech
|
PORTO ALEGRE RS - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 25/04/2005 00:03 hs
ESCREVA EM UM MÓDULO (Exemplo usando ADO)
Public Sub LoadCombo(Combo As Object, Tabela, CampoID, Campo As String) Dim rsCombo As ADODB.Recordset Set rsCombo = New ADODB.Recordset Dim sSQL As String sSQL = "SELECT " & CampoID & ", " & Campo & " FROM " & Tabela rsCombo.Open sSQL, Conexao, adOpenKeyset, adLockOptimistic With rsCombo Do Until .EOF Combo.AddItem rsCombo(Campo) Combo.ItemData(Combo.NewIndex) = rsCombo(CampoID) .MoveNext Loop .Close End With Set rsCombo = Nothing End Sub
Depois basta usar no Load do form, por exemplo: LoadCombo ComboBox1,"SuaTabela","SeuCódigo(PK)","SeuCampo"
-------------------------------------- Screech "Programar é arte..."
|
|
|
|