Atribuir Macro - Ca...
 
Notifications
Clear all

Atribuir Macro - Caixa de Combinação  

  RSS

Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
08/07/2009 9:10 pm  

Galera...Boa Noite!

Sou iniciante em VBA, e infelizmente não consegui tirar a minha dúvida em nenhum site.
Como eu faço para atribuir uma macro diferente para cada item que eu selecionar em uma caixa de combinação?

Eu tentei gravar uma Macro, porém ela não reconheceu que um item tinha sido selecionado.

Obrigado!

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


ResponderCitar (Quote)
Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
08/07/2009 9:48 pm  

Júnior,

estou supondo que a Caixa de Combinação esteja num UserForm ou, caso esteja na planilha, tenha sido criada a partir de Ferramentas de Controle(ActiveX) e não Formulários.

No código do referido controle, por exemplo:

Private Sub ComboBox1_Change()

If ComboBox1.Value = "Macro1" Then
Call Macro1
ElseIf ComboBox1.Value = "Macro2" Then
Call Macro2
Else
Call Macro3
End If

End Sub

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


ResponderCitar (Quote)
Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
08/07/2009 10:48 pm  

Eu até ia falar alguma coisinha, mas o Edson matou a pau!

eu fico é quieto, já to antevendo o nível do forum, em menos de uma semana ja tem bastante craque por perto!

abraço!

:geek:

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


ResponderCitar (Quote)
Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
09/07/2009 4:15 pm  

Owww...até que enfim alguém me explicou o que eu estava fazendo de errado. Eu estava justamente criando uma caixa de combinação através de formulários...hehehe...Nossa nunca tinha reparado nesta ferramenta. Eu a assemelhava com formulários.
Agora as coisas estão ficando mais claras.

Porém, como eu não sabia deste Ferramenta não sei manuseá-la muito bem:
1- Como eu faço para que os itens não se repitam? Eu consegui add alguns itens, mas todos eles se repetem, e mais de uma vez.
2- O código que você exemplificou deve ser incluído no ComboBox ou em Módulos?

E desculpa a ignorância, mas quando eu criei a caixa de combinação através de Ferramentas de Controle apareceu a fórmula "=INCORPORAR("Forms.ComboBox.1";"")". Há necessidade de preencher esta fórmula, ou só preciso executar pelo VBA?

Edson, Muito Obrigado! :D

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


ResponderCitar (Quote)
Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
10/07/2009 8:01 am  

1- Como eu faço para que os itens não se repitam? Eu consegui add alguns itens, mas todos eles se repetem, e mais de uma vez.
2- O código que você exemplificou deve ser incluído no ComboBox ou em Módulos?

1 - Para adicionar itens, eu entendo que a melhor maneira é criando uma lista na própria planilha, nomeando tal intervalo e na propriedade ListFillRange você digita o nome escolhido. (Se a Caixa de Combinação estivesse num UserForm, a Propriedade seria RowSource)

2 - O código pertence à ComboBox. Estando em Modo Deseign, basta 'duploclique' sobre o controle ou clicar com o botão direito/Exibir código.
Já as Macros que serão chamadas (Macro1, Macro2 e Macro3, no exemplo) de preferência que estejam num Módulo.

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


ResponderCitar (Quote)
Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
12/07/2009 11:10 am  

Edson...Valeu mesmo kara, me ajudou muito!

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


ResponderCitar (Quote)
Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
29/07/2009 10:29 am  

Só complementando...

A formula INCORPORAR("classe.objeto") é usada pelo Excel para colocar esses objetos na planilha.
Voce nao precisac colocar essa formula,ate pq nao vai consegui mesmo.
O Excel não entende como função

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


ResponderCitar (Quote)
Fernando Fernandes
(@fernandofernandes)
Illustrious Member
Entrou: 12 anos atrás
Posts: 44273
25/02/2012 12:27 am  

Vlw galera estou no forum a alguns dias e já tem me ajudado bastante
Esse tópico resolveu meu problema

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


ResponderCitar (Quote)
Honda Jr
(@honda-jr)
Active Member
Entrou: 8 anos atrás
Posts: 5
15/10/2012 9:00 am  

Opa, muito simples seu post Edson.
Sou iniciante em VBA, apesar de já ter trabalhado com VB.
Seu exemplo matou a charada... Muito obrigado!
Excelente Site


ResponderCitar (Quote)
Compartilhar: