Notifications
Clear all

Macro para sair do Excel com o "X" bloqueado

7 Posts
2 Usuários
0 Reactions
1,139 Visualizações
(@marciobin)
Posts: 204
Estimable Member
Topic starter
 

Bom dia ,
por alguns motivos preciso que o usuario saia da planilha somente por um comando na guia MENU.

O X , ja esta bloqueado , porem de alguma forma eu preciso sair, porem não consegui esse codigo .
segue planilha .

Obs: Pesquisei no forum, porem tive algo parecido somente.Se caso tiver algo igual , não consegui ver...
Obrigado!

 
Postado : 10/03/2018 10:18 pm
(@klarc28)
Posts: 971
Prominent Member
 

Anexo

 
Postado : 11/03/2018 5:28 am
(@marciobin)
Posts: 204
Estimable Member
Topic starter
 

klarc28 , é desse jeito mesmo ,
Porem como não entendo quase nd de vba ainda , fiquei meio confuso .Tem como fazer esse codigo em um modulo so pra atribuir a macro para sair ^??
Não consegui adaptar na planilha ...
Mais ficou 100% .

Vlew .
Obrigado.

 
Postado : 11/03/2018 3:53 pm
(@klarc28)
Posts: 971
Prominent Member
 
Sub sairDoExcel()

Plan1.Range("aa1").Value = 1
ThisWorkbook.Save
Application.Quit

End Sub
 
Postado : 11/03/2018 5:23 pm
(@marciobin)
Posts: 204
Estimable Member
Topic starter
 

Boa noite !
Karl , continua a mesma coisa . Atribui a macro e nd.
mas de boa

 
Postado : 12/03/2018 3:01 pm
(@klarc28)
Posts: 971
Prominent Member
 

Além do código sairDoExcel, é necessário o código a seguir:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  If Plan1.Range("aa1").Value <> 1 Then
   MsgBox "NEGADO ! SAIA NO MENU INICIAR ."
    Cancel = True
   End If
   
    
End Sub

Private Sub Workbook_Open()
Plan1.Range("aa1").Value = 0
End Sub
 
Postado : 13/03/2018 3:51 am
(@marciobin)
Posts: 204
Estimable Member
Topic starter
 

klarc28
Muito obrigado por tentar ajudar mano , valew .

Mais não consegui fazer como vc descreveu.

Consegui fazer de outra forma :

Na pasta de trabalho coloquei :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cancel = Not bye
If Not bye Then MsgBox "NEGADO ! SAIA NO MENU INICIAR ."
End Sub

Depois Criei uma variável em um módulo :

Public bye As Boolean

e depois criei a macro para sair :

Option Explicit
 Sub sair()
Application.EnableEvents = False
   ActiveWorkbook.Save
   Application.EnableEvents = True
   bye = True
   ThisWorkbook.Close
 End Sub 

Mais muito obrigado .
vlew ...

 
Postado : 13/03/2018 4:01 pm