Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda Com Comboboxes


v_tummler

Pergunta

Olá!

Procurei em diversos sites, tutoriais e apostilas, mas nenhuma opção me ajudou realmente, então peço aqui pra quem entende do negócio.

É o seguinte:

Eu tenho um arquivo notas_fiscais.mdb, e nele várias tabelas. Entre estas tabelas coloquei uma listagem de estados (realmente necessário nesta categoria). A tabela tem dois campos: uf (pk) e estados.

Já tentei de todo o jeito mas não consegui, o que eu preciso é que o conteúdo do campo uf (ou do campo estados, indiferente) apareça listado em uma ComboBox.

Pra quem entende do negócio é algo simples, porém para mim que estou começando agora, é muuito difícil.

É isso!

Vlw, Abç!

Ps.:desculpem pelo mesmo tópico no sub-fórum do Crystal Reports, sabe como é né, novatos... ;)

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Voce esta usando ADO ou Data?

Vou te dar um exemplo usando ADO

Adodc1.Recordset.MoveFirst
While Adodc1.Recordset.EOF = False
  Combo1.AddItem (Adodc1.Recordset.Fields(0).Value)
  Adodc1.Recordset.MoveNext
Wend

Onde Fields(0).Value indica o conteudo do primeiro campo da tabela, no caso, uf

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Criei um módulo chamado modCnn e dentro dele:

Option Explicit

Global cn As ADODB.Connection
Global rs As ADODB.Recordset


Private Sub Main()
Dim strArquivo As String
Dim strLocal As String
Dim Banco As String

DoEvents
Set cn = New ADODB.Connection
strArquivo = "notas_fiscais.mdb"
strLocal = App.Path
Set Banco = "Driver={Microsoft Access Driver(*.mdb)};"_
"Dbq="&strArquivo&";"&_
"DefaultDir="&strLocal&";"&_
"Uid=Admin;Pwd=;"

cn.open ConectaSQL

Load frmcadastro
frmcadastro.Show
End Sub
Sendo frmcadastro o form onde o Combo está. E, no evento load do formCadastro:
Set rs = CreateObject("ADODB.recordset")

With rs
.open "select * from estado order by uf", cn, adOpenKeyset, adLockOptimistic
If .RecordCount = 0 Then
MsgBox "Não existem estados cadastrados no sistema.", vbExclamation, "Erro"
Else
cbouf.Clear
Do Until rs.EOF
cbouf.AddItem rs("UF")
rs.MoveNext
Loop
End If
.Close
End With
End Sub

caminho certo?

Link para o comentário
Compartilhar em outros sites

  • 0

Já consegui aqui, é bem simples, não criei módulo nem nada, apenas no Load do form em que está o combo:

Private Sub Form_Load()

Dim dbuf As String
Dim db As Database
Dim rs As Recordset

    ' Open the database.
    dbuf = App.Path
    If Right$(dbname, 1) <> "\" Then dbuf = dbuf & "\"
    dbuf = dbuf & "notas_fiscais.mdb"
    
    Set db = OpenDatabase(dbuf)
    Set rs = db.OpenRecordset( _
        "SELECT Siglas FROM Estados ORDER BY Siglas", _
        dbOpenSnapshot)

    ' Load the ComboBox.
    rs.MoveFirst
    Do While Not rs.EOF
        cbouf.AddItem rs!Siglas
        rs.MoveNext
    Loop
    
    rs.Close
    db.Close
    
   
    ' Select the first choice.
    cbouf.ListIndex = 0

End Sub

Onde "Estados" é a tabela, e "Siglas" é o campo desta tabela

Obrigado pela ajuda!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...