Pesquisei bastante, mas utilizar a função Application.OnKey "%{F4}", "" no UserForm_Initialize não resolve o caso!
Esse comando, inutiliza o ALT+F4 somente direto no Excel. Nos forms não está rolando...
Preciso impedir que o usuário feche o form através da tecla de atalho ALT + F4
Alguém tem alguma sugestão?
"O impossível, é só uma questão de tempo"
Boa noite
Em outro fórum, o mestre Osvaldomp sugeriu o seguinte:
1.para testar substitua o seu código atual do UserForm pelo código abaixo;
2.depois, caso haja linhas de instrução no seu código atual, adicione-as neste código
Private Sub UserForm_QueryClose _ (Cancel As Integer, CloseMode As Integer) If CloseMode = 0 Then Cancel = True MsgBox "operação desativada" End If End Sub
Se a dica foi útil, clique na mãozinha.
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Fala Patropi!
Já tentei esse também, mas ele tem o seguinte problema: Se eu estou com o form1 aberto (por exemplo) e quero fechar ele pra abrir o form2, e esse código que você passou está no form1, ele não deixa fechar o form1! Ele impede!
Não sei se meu pensamento está certo, mas acredito que teria que bloquear o atalho de teclado mesmo...
Mais alguma sugestão? E obrigado pela força Patropi!
"O impossível, é só uma questão de tempo"
Eu achei esse na internet a algum tempo.
Eu usava somente para impedir de fechar ao clicar no "X", mas testei agora e também funciona com Alt+F4!
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) ' Evita que o usuário feche a tela no 'x' na tela If CloseMode = vbFormControlMenu Then MsgBox "Use o Botão Fechar!!!” Cancel = True End If End Sub
_______________________________________________________________________________________________
Carlos Santos
* Marque o tópico como Resolvido se foi solucionado seu problema.
Carlos, PERFEITO!
Simples e eficiente!
Obrigado pela solução engenhosa mestre
"O impossível, é só uma questão de tempo"