Notifications
Clear all

Voltar uma controle


HenriqueDB
(@henriquedb)
Active Member Registered
Entrou: 5 anos atrás
Posts: 9
Topic starter  

Boa tarde. Esta será minha primeira pergunta neste fórum. Criei uma UserForm onde se deve informar dois dados. Porém, para evitar que algum desavisado queira informar o segundo dado sem informar o primeiro criei uma macro que que avisa isto não ser possível e, ainda por cima, apaga o que foi informado no ComboBox errado. O problema é que eu gostaria que o indicador voltasse para a ComboBox1, mas não que linha de comando usar. Como faço? Tentei usar o SetFocus, mas acho que não é para isso que ele serve. Alguma dica? Grato desde já!


ResponderCitar (Quote)
topscore
(@topscore)
Eminent Member Registered
Entrou: 6 anos atrás
Posts: 31
 

@henriquedb

Sugestão:

1- Ao iniciar o formulário (Initialize), deixe a "combobox2" oculta ou desativada. (Combobox2.visible = false)

2- na Combobox 1, crie um evento "Afterupdate" para reexibir a Combobox2: Combobox2.visible = true ou Combobox2.enabled = true

3- Coloque um Label no formulário com um aviso: "Escolha um valor na combobox1 e PRESSIONE ENTER".

Assim o formulário abre só com a combobox1 aparecendo. O usuário é obrigado a escolher um valor e apertar enter. Depois do enter a combobox2 aparece.

*No "Afterupdate" da combobox1, sugiro colocar uma condição "if" para não exibir o combobox2 se a combobox1 estiver vazia.

 


ResponderCitar (Quote)
HenriqueDB
(@henriquedb)
Active Member Registered
Entrou: 5 anos atrás
Posts: 9
Topic starter  

@topscore Obrigado pela resposta. Sim, sua ideia é ótima, tanto que a uso em outras situações. É que nesta caso específico, a ComboBox2 JÁ EXISTE por um comando anterior, um comando como este que você citou. Então, caso a pessoa queira preencher a Box2 sem passar pela 1, eu sei como colocar o aviso de que não pode fazer isso e apagar o que ela preencheu, mas não sei como fazer o cursor voltar para a Box1. 


ResponderCitar (Quote)
topscore
(@topscore)
Eminent Member Registered
Entrou: 6 anos atrás
Posts: 31
 

@henriquedb

Tente "SetFocus"

Formulário1.Combobox1.SetFocus

Ele deve voltar à Combobox1.

 


ResponderCitar (Quote)
HenriqueDB
(@henriquedb)
Active Member Registered
Entrou: 5 anos atrás
Posts: 9
Topic starter  

@topscore Obrigado pela resposta. Infelizmente não deu certo. Após o aviso de erro (que eu programei), ao clicar em "Ok" (ou mesmo no "X" acima) ele apaga o conteúdo (também como eu programei), porém vai para o ComboBox2, em vez de se manter no ComboBox1, como deveria ser.


ResponderCitar (Quote)
teleguiado
(@teleguiado)
Estimable Member Registered
Entrou: 5 anos atrás
Posts: 114
 

@henriquedb

 

Veja se não funciona conforme orienta nesse link.

Obrigado.

Teleguiado.
E-mail: telegui4do@gmail.com


ResponderCitar (Quote)