Post apagado!
Página 1 de 1
Como preencher automaticamente um formulario. ??? Preenchimento automatico ???
#4
Postou 01 junho 2009 - 13:08
Oi Thiago,
Desculpa a demora em responder.
Você pode fazer de duas formas: A mais simples e a mais complexa.
A mais simples
1-Na Propriedade RowSource (OrigemDaLinha) do combobox, insira a tabela que você quer puxar os dados
2-Insira no evento AfterUpdate do combobox o seguinte código(adapte ao seu caso):
Private Sub CmbPreenche_AfterUpdate()
'Aqui eu especifico que as caixas de texto terão seus valores definidos pelos dados do combobox.
Me.TxtCep = CmbPreenche.Column(0)
Me.TxtEndereço = CmbPreenche.Column(1)
Me.TxtBairro = CmbPreenche.Column(2)
Me.TxtEstado = CmbPreenche.Column(3)
End Sub
A mais complexa
1-Adicione a referência "Microsoft ActiveX Data Objects 2.1 Library" no menu Ferramentas do Editor VBA.
2-Insira no evento AfterUpdate do combobox o seguinte código(adapte ao seu caso):
Private Sub CmbPreenche_AfterUpdate()
Dim cnn As New ADODB.Connection
Dim rs As ADODB.Recordset
Set cnn = CurrentProject.Connection
Set rs = New ADODB.Recordset
rs.CursorType = adOpenDynamic
rs.LockType = adLockOptimistic
rs.Open "Tbl_CEP", cnn, , , adCmdTable 'Aqui é só definir a tabela que você quer buscar os dados.
If rs.Supports(adIndex) Then
rs.Index = "PrimaryKey"
rs.Seek Me.CmbPreenche, adSeekFirstEQ
If Not rs.EOF Then
Me.TxtCep = rs("cep")
Me.TxtEndereço = rs("logradouro")
Me.TxtBairro = rs("bairro")
Me.TxtEstado = rs("municipio")
End If
Else
rs.Find "Cep=" & Me.CmbPreenche, 0, adSearchForward, 1
Me.TxtCep = rs("cep")
Me.TxtEndereço = rs("logradouro")
Me.TxtBairro = rs("bairro")
Me.TxtEstado = rs("municipio")
End If
rs.Close
cnn.Close
Set cnn = Nothing
Set rs = Nothing
End Sub
Bom, é isso aí.
Qualquer coisa é só falar.
Abraço.
Deus te abençoe.
Desculpa a demora em responder.
Você pode fazer de duas formas: A mais simples e a mais complexa.
A mais simples
1-Na Propriedade RowSource (OrigemDaLinha) do combobox, insira a tabela que você quer puxar os dados
2-Insira no evento AfterUpdate do combobox o seguinte código(adapte ao seu caso):
Private Sub CmbPreenche_AfterUpdate()
'Aqui eu especifico que as caixas de texto terão seus valores definidos pelos dados do combobox.
Me.TxtCep = CmbPreenche.Column(0)
Me.TxtEndereço = CmbPreenche.Column(1)
Me.TxtBairro = CmbPreenche.Column(2)
Me.TxtEstado = CmbPreenche.Column(3)
End Sub
A mais complexa
1-Adicione a referência "Microsoft ActiveX Data Objects 2.1 Library" no menu Ferramentas do Editor VBA.
2-Insira no evento AfterUpdate do combobox o seguinte código(adapte ao seu caso):
Private Sub CmbPreenche_AfterUpdate()
Dim cnn As New ADODB.Connection
Dim rs As ADODB.Recordset
Set cnn = CurrentProject.Connection
Set rs = New ADODB.Recordset
rs.CursorType = adOpenDynamic
rs.LockType = adLockOptimistic
rs.Open "Tbl_CEP", cnn, , , adCmdTable 'Aqui é só definir a tabela que você quer buscar os dados.
If rs.Supports(adIndex) Then
rs.Index = "PrimaryKey"
rs.Seek Me.CmbPreenche, adSeekFirstEQ
If Not rs.EOF Then
Me.TxtCep = rs("cep")
Me.TxtEndereço = rs("logradouro")
Me.TxtBairro = rs("bairro")
Me.TxtEstado = rs("municipio")
End If
Else
rs.Find "Cep=" & Me.CmbPreenche, 0, adSearchForward, 1
Me.TxtCep = rs("cep")
Me.TxtEndereço = rs("logradouro")
Me.TxtBairro = rs("bairro")
Me.TxtEstado = rs("municipio")
End If
rs.Close
cnn.Close
Set cnn = Nothing
Set rs = Nothing
End Sub
Bom, é isso aí.
Qualquer coisa é só falar.
Abraço.
Deus te abençoe.
#6
Postou 02 junho 2009 - 17:50
Olá thiago,
Clique no combobox e depois em Propriedades; e na aba Dados, vá em Origem da Linha e verifique em qual posição está o campo que você quer visualizar no combobox.
Ex:
Se está nessa posição:
Número Endereço Instalação Endereço Cobrança
O campo está na posição 0
ou
Endereço Instalação Número Endereço Cobrança
O campo está na posição 2
Obs:Existem 5 campos, mas o indice começa a partir do zero (que é o primeiro campo)
Você deve contar:0,1,2,3,4
Bom, se você já descobriu a posição, vá na aba Dados, e no Número de Colunas, defina a quantidade de campos da sua consulta feita no combobox(seguinte os exemplos acima, a quantidade é 5).
Agora é só ir Largura das Colunas na mesma aba e definir todas como zero, exceto a que você quer que aparece no seu combobox.
Ex:
Número Endereço Instalação Endereço Cobrança
1;0;0;0;0
ou
Endereço Instalação Número Endereço Cobrança
0;0;1;0;0
E isso aí, qualquer dúvida, é só teclar.
Abraço.
Clique no combobox e depois em Propriedades; e na aba Dados, vá em Origem da Linha e verifique em qual posição está o campo que você quer visualizar no combobox.
Ex:
Se está nessa posição:
Número Endereço Instalação Endereço Cobrança
O campo está na posição 0
ou
Endereço Instalação Número Endereço Cobrança
O campo está na posição 2
Obs:Existem 5 campos, mas o indice começa a partir do zero (que é o primeiro campo)
Você deve contar:0,1,2,3,4
Bom, se você já descobriu a posição, vá na aba Dados, e no Número de Colunas, defina a quantidade de campos da sua consulta feita no combobox(seguinte os exemplos acima, a quantidade é 5).
Agora é só ir Largura das Colunas na mesma aba e definir todas como zero, exceto a que você quer que aparece no seu combobox.
Ex:
Número Endereço Instalação Endereço Cobrança
1;0;0;0;0
ou
Endereço Instalação Número Endereço Cobrança
0;0;1;0;0
E isso aí, qualquer dúvida, é só teclar.
Abraço.
Página 1 de 1


Entrar
Cadastre-se
Ajuda

Quote