Notifications
Clear all

Preencher Text Box automaticamente com info da Combo box

19 Posts
5 Usuários
0 Reactions
4,039 Visualizações
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

Pessoal, boa tarde

Estou criando uma aplicação no excel em VBA e como não utilizo a linguagem faz um tempo estou com dificuldade para realizar o procedimento.
Observei em alguns outros tópicos mais antigos e semelhantes mas não consegui aplicar no meu projeto.

O que quero fazer é o seguinte:

Escolher Opção "A" no ComboBox e aparecer o resultado "A" no TextBox
Se escolher opção "B" no ComboBox, aparecer o resultado "B" no TextBox

Segui as orientações para o preenchimento automático de um ComboBox para o outro e deu certo. No entanto, a aplicação fica melhor com o uso do TextBox.

Agradeço desde já!

 
Postado : 03/06/2016 12:29 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Disponibilize um modelo

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 03/06/2016 1:08 pm
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

Marcelo, você deseja um modelo em um arquivo pronto ou as linhas de comando? Se forem as linhas que fiz de ComboBox para preenchimento de outra ComboBox aí vão:

Private Sub CboResponsavel_Change()
If cboUnidade.Value = "A" Then
cboResponsavel.RowSource = "Responsavel!A3"
ElseIf cboUnidade.Value = "1º" Then
cboResponsavel.RowSource = "Responsavel!B3"
ElseIf cboUnidade.Value = "2º" Then
cboResponsavel.RowSource = "Responsavel!C3"
ElseIf cboUnidade.Value = "3º" Then
cboResponsavel.RowSource = "Responsavel!D3"
ElseIf cboUnidade.Value = "4º" Then
cboResponsavel.RowSource = "Responsavel!E3"
ElseIf cboUnidade.Value = "5º" Then
cboResponsavel.RowSource = "Responsavel!F3"
ElseIf cboUnidade.Value = "6º" Then
cboResponsavel.RowSource = "Responsavel!G3"
ElseIf cboUnidade.Value = "7º" Then
cboResponsavel.RowSource = "Responsavel!H3"
ElseIf cboUnidade.Value = "8º" Then
cboResponsavel.RowSource = "Responsavel!I3"
ElseIf cboUnidade.Value = "9º" Then
cboResponsavel.RowSource = "Responsavel!J3"
ElseIf cboUnidade.Value = "10º" Then
cboResponsavel.RowSource = "Responsavel!K3"
ElseIf cboUnidade.Value = "11º" Then
cboResponsavel.RowSource = "Responsavel!L3"
ElseIf cboUnidade.Value = "12º" Then
cboResponsavel.RowSource = "Responsavel!M3"
ElseIf cboUnidade.Value = "13º" Then
cboResponsavel.RowSource = "Responsavel!N3"
ElseIf cboUnidade.Value = "14º" Then
cboResponsavel.RowSource = "Responsavel!O3"
ElseIf cboUnidade.Value = "15º" Then
cboResponsavel.RowSource = "Responsavel!P3"
ElseIf cboUnidade.Value = "16º" Then
cboResponsavel.RowSource = "Responsavel!Q3"
ElseIf cboUnidade.Value = "17º" Then
cboResponsavel.RowSource = "Responsavel!R3"
ElseIf cboUnidade.Value = "18º" Then
cboResponsavel.RowSource = "Responsavel!S3"
End If
End Sub

A partir de tabelas diferentes criei um formulário que concentra algumas informações. Dentre essas informações, constam os campos Unidade e Responsável. O campo unidade está em uma ComboBox e campo Responsável, também. Quando seleciono uma Unidade específica, o nome do Responsável fica disponível automaticamente em outra ComboBox mesmo sem preenche-la. Quero que o Responsável apareça em uma TextBox automaticamente quando selecionar uma Unidade. Não sei se fui claro rs

 
Postado : 03/06/2016 1:55 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Guto, Modelo é o arquivo que utiliza, só pela rotina que postou não dá para saber exatamente o que fazer, precisa-se ter conhecimento do layout e como estão dispostos os dados.
Se o arquivo tiver informação confidencial, troque por fictícias e anexe aqui seguindo as REGRAS do Forum.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 06/06/2016 9:31 am
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

Estou montando o modelo e envio aqui assim que possível. Antemão, obrigado pela ajuda!

 
Postado : 08/06/2016 1:36 pm
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

Aqui está o modelo. Entretanto, não consegui fazer com que o o preenchimento do textbox referente ao nome do funcionário fosse capaz de preencher todos os outros campos automaticamente. Também não consegui colocar o ID automático.

Obrigado!

 
Postado : 14/06/2016 7:37 am
(@mprudencio)
Posts: 2749
Famed Member
 

Nao entendi vc quer cadastrar ou pesquisar???

Combobox vc usa para pesquisa pois ela precisa ter dados para ser alimentada.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 14/06/2016 10:51 am
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

Lancei as informações na tabela.
A partir das informações nessa tabela, ao inserir no textbox o nome de um funcionário, os outros campos deverão ser preenchidos automaticamente, entendeu?
Consegui fazer aqui mas foi manual, com informações lançadas diretamente em cada campo.

 
Postado : 15/06/2016 8:26 am
(@mprudencio)
Posts: 2749
Famed Member
 

Ve se isso ajuda

Selecione o nome na combobox e clique em pesquisar

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 15/06/2016 2:41 pm
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

Prudêncio, ajuda bastante! Muito obrigado!!!

Mas assim, ao invés de clicar no botão pesquisar, ao selecionar um nome no combobox as caixas do textbox não podem ser preenchidas automaticamente?

 
Postado : 15/06/2016 6:57 pm
(@spanta)
Posts: 38
Eminent Member
 

Sim, é só colocar para chamar a rotina do botão de pesquisa dentro do evento change da combobox

Anexei o modelo com o código acertado

Private Sub ComboBox1_Change()

If ComboBox1.Text <> "" Then

    CommandButton3_Click
    
  Else
  
    'Limpa a tela
    TextBox1.Value = ""
    TextBox2.Value = ""
    TextBox3.Value = ""
    TextBox4.Value = ""
    TextBox5.Value = ""
    TextBox7.Value = ""
    TextBox8.Value = ""
    
End If

End Sub
 
Postado : 15/06/2016 7:36 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Alterado

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 16/06/2016 9:00 am
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

Ainda, existe a possibilidade de além de pesquisar cadastrar funcionários nesse mesmo formulário de modo que possa ser inserido na tabela?

 
Postado : 21/06/2016 8:55 am
(@mprudencio)
Posts: 2749
Famed Member
 

Da forma que ele esta nao

E o ideal e fazer separadamente......

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 21/06/2016 11:26 am
(@gutobsouza)
Posts: 9
Active Member
Topic starter
 

MPrudencio, muito obrigado pela paciência e me perdoe pela ausência. Ao fim de junho ingressei em um curso e depois, férias. Você disse que o ideal é fazer separadamente... Pode me exemplificar como? Não entendi muito bem.

No fim das contas, estou tentando elaborar uma aplicação em vba na qual eu possa inserir dados em uma tabela, consultar esses dados e editar a partir da própria aplicação. Há como fazer isso?

 
Postado : 04/08/2016 4:27 pm
Página 1 / 2