Notifications
Clear all

Atualizar combo sem executar rotina change()

5 Posts
2 Usuários
0 Reactions
802 Visualizações
(@edufari)
Posts: 7
Active Member
Topic starter
 

Amigos, boa tarde.

Estou fazendo uma rotina de consulta aos registros de uma planilha em um formulário. Faz parte deste formulário um campo que é um combo. Na codificação da consulta que deve colocar as informações no formulário, quando atualizo o combo com o valor da planilha, ocorre o evento cmb change() e aí dispara toda a rotina que tem neste procedimento.
O que eu quero ver se é possível, é apenas atualizar o combo na tela, inibindo de alguma forma a ocorrência do evento change() porque no decorrer destes comandos, há mudança de planilhas, endereços, e quando a sub volta, a célula ativa está não só mais no mesmo endereço, mas em outra planilha.
É possível?
Caso não, ou até mesmo se sim, além disso, eu salvo o endereço em que o foco estava em uma variável range. Depois quando vou utilizá-la para posicionar meu cursor ali, como seria a sintaxe?

Grato

Eduardo

 
Postado : 20/02/2017 10:53 am
(@edcronos2)
Posts: 346
Reputable Member
 

creio que mesmo com o change é só não usar o select
mas tem que ter toda uma alteração da rotina

vc tbm pode voltar para o local anterior ao da rotina

no inicio da sua rotina coloque

     ab = ActiveSheet.Name' pega nome da aba
     sb = ActiveCell.Address'  pega endereço da celula

e no final da rotina

     Sheets(ab).Select 'volta para a aba marcada
     Range(sb).Select 'seleciona a celula marcada
 
Postado : 20/02/2017 12:39 pm
(@edufari)
Posts: 7
Active Member
Topic starter
 

Edcronos, agradeço a sua atenção e aproveito para perguntar: essa variável sb que tipo que deve ser declarada? Range?

Grato

Eduardo

 
Postado : 20/02/2017 12:55 pm
(@edcronos2)
Posts: 346
Reputable Member
 

bem, em vba eu só me dou ao trabalho de declarar variaveis que vão dentro de loops , claro que depende da aplicação
mas as duas são string pq só pegam o nome da aba e o endereço da celula
poderia até ser tipo range e worksheet e nesse caso teria que usar set mas para oq vai ser usado acho desnecessário

 
Postado : 20/02/2017 1:08 pm
(@edufari)
Posts: 7
Active Member
Topic starter
 

Funcionou bem seguindo suas instruções.
Valeu!!!

Edu

 
Postado : 21/02/2017 9:50 am