Página 1 de 1
Função Application.Quit não fecha Excel
Enviado: 06 Jan 2016 às 20:06
por abalopg
Sou novo no uso de Vba no excel, por isso me desculpe se cometi algum erro de principiante, tenho uma planilha usando o Application.Quit , onde quando uma célula aparece FIM DE JOGO deveria fechar o excel, mas só pisca e não fecha, já quando testo no modulo funciona, segue o código:
Sub Teste()
resultado = MsgBox("FIM DE JOGO")
Application.Quit
End Sub
Function MyFunc(mensagem As String) As String
If mensagem = "FIM DE JOGO" Then
Call Teste
End If
End Function
_______________
já em uma célula coloquei a formula:
=SE( T1="FIM DE JOGO"; Myfunc("FIM DE JOGO" );"" )
Função Application.Quit não fecha Excel
Enviado: 07 Jan 2016 às 10:24
por Reinaldo
Como é passado o valor para T1, diretamente ou por formula também?
Função Application.Quit não fecha Excel
Enviado: 07 Jan 2016 às 19:57
por abalopg
Em T1 esta a formula =SE(P28=0;"FIM DE JOGO";Q28), o projeto é um jogo de perguntas e respostas onde conforme o usuário vai errando, vai terminando sua vida, até chegar em 0- fim de jogo- onde aparece a mensagem, clica em ok e fecha a planilha sem salvar.
Re: Função Application.Quit não fecha Excel
Enviado: 08 Jan 2016 às 15:17
por Reinaldo
Sua função está em um modulo ou modulo deplanilha
No exemplo anexo aqui funciona
Função Application.Quit não fecha Excel
Enviado: 08 Jan 2016 às 17:38
por FelipeGualberto
abalopg escreveu:já em uma célula coloquei a formula:
=SE( T1="FIM DE JOGO"; Myfunc("FIM DE JOGO" );"" )
@abalopg,
Você não pode usar uma UDF (função personalizada em VBA) numa fórmula que mude algo diferente do valor de retorno da célula.
Com UDF, você não pode sair do Excel ou formatar células ou alterar valor de outras células, por exemplo.
Além disso, não é recomendável usar o Application.Quit, mas sim o ThisWorkbook.Close SaveChanges:=False pois desta forma, se tiver mais pastas de trabalho abertas, elas continuarão abertas no Excel.
Função Application.Quit não fecha Excel
Enviado: 08 Jan 2016 às 22:06
por abalopg
Obrigado pela ajuda, mas Reinaldo não funcionou, continua não fechando.
Felipe, teria alguma solução?
Sei que ainda estou engatinhando, nesse tipo de programação, mas no ambiente de rede da empresa, o Excel é o mais amigável.
Função Application.Quit não fecha Excel
Enviado: 11 Jan 2016 às 09:10
por FelipeGualberto
Crie uma macro associada a um botão de comando ao invés de uma UDF.
Desta forma, você poderá usar o ThisWorkbook.Close, se quiser.