Notifications
Clear all

Aparecer MsgBox na planiha ativa

6 Posts
1 Usuários
0 Reactions
1,044 Visualizações
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde a todos!

Como faço para a inserir uma msgbox de aviso e ela aparecer apenas quando houver a troca da planilha EXIBIR par a planiha FORMULARIO_2 com um botão na planilha EXIBIR.
Nas minhas tentativas a msgbox sempre aparece antes de passar para a planilha FORMULARIO_2.

Sub SelecionaFormulario2()

Application.ScreenUpdating = False
Sheets("FORMULARIO_2").Visible = True
Sheets("FORMULARIO_2").Select
Sheets("FORMULARIO_2").Activate
Sheets("EXIBIR").Visible = False
Application.ScreenUpdating = True
End Sub

De antemão, muito obrigado.

Silvo Felinto

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

 
Postado : 16/10/2013 12:24 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Desculpem,

Na macro original não tem Sheets("FORMULARIO_2").Activate. Tinha colocado em uma das tentativas.

A macro é:

Sub SelecionaFormulario2()

Application.ScreenUpdating = False
Sheets("FORMULARIO_2").Visible = True
Sheets("FORMULARIO_2").Select
Sheets("EXIBIR").Visible = False
Application.ScreenUpdating = True
End Sub

Obrigado!

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

 
Postado : 16/10/2013 12:32 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Silvio, se entendi corretamente você tem duas Opções :

1º ) Com a instrução diretamente na Rotina, para isto troque a sua rotina pela a abaixo:

Sub SelecionaFormulario2()

    Application.ScreenUpdating = False
        Sheets("FORMULARIO_2").Visible = True
        Sheets("FORMULARIO_2").Activate
        
        'Aqui a mensagem antes de ocultar a Sheet EXIBIOR
        MsgBox "Voce Selecionou a Aba : " & ActiveSheet.Name
        
        Sheets("EXIBIR").Visible = False
    Application.ScreenUpdating = True
End Sub

2º ) Utilizando o Evento Activate da aba Fomulario_2 :

Private Sub Worksheet_Activate()

    MsgBox "Voce Selecionou a Aba : " & ActiveSheet.Name
    
End Sub

[]s

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

 
Postado : 16/10/2013 1:19 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde Mauro!

Usei os dois códigos que você postou e nos dois a msgbox continua aparecendo antes de mudar de planilha.
O que preciso é que só quando a planilha FORMULARIO_2 se tornar visível é que deva aparecer a msgbox.

Grato.

Silvo Felinto

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

 
Postado : 16/10/2013 1:40 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Silvio, cometi um equivoco, devia ter trocado a instrução que congela a tela, por isto este efeito, use a abaixo:

Sub SelecionaFormulario2()
    
        Sheets("FORMULARIO_2").Visible = True
        Sheets("FORMULARIO_2").Activate
        
       'Congela a tela
       Application.ScreenUpdating = False
       
        'Aqui a mensagem antes de ocultar a Sheet EXIBIOR
        MsgBox "Voce Selecionou a Aba : " & ActiveSheet.Name
       
        Sheets("EXIBIR").Visible = False
        
    Application.ScreenUpdating = True
    
End Sub

Quanto a do Evento, a mensagem só aparecerá se selecionar a aba Formulario, não tem como a mensagem ocorrer antes

[]s

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

 
Postado : 16/10/2013 2:04 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde Mauro!

Deu tudo certo.

Valeu e obrigado.

Silvio Felinto

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

 
Postado : 17/10/2013 9:00 am