Criar código para o evento Workbook.SheetDeactivate, que verifica se% ActiveWorkbook.Sheets.Count =
(1 or 0, you'll have to play with this to see which works)
Depois disso, feche a pasta de trabalho, se for verdade.
Estou usando o Microsoft Excel 2007 e tenho várias macros na minha pasta de trabalho pessoal.xlsb, que eu uso com frequência, por isso é muito conveniente que o Excel as abra automaticamente quando for iniciado. O que eu não gosto é quando eu clico no "X" no canto superior direito da janela O Excel não sai quando eu fecho a última pasta de trabalho visível. Eu acho que isso é porque personal.xlsb ainda está aberto (embora oculto). Existem várias outras questões aqui no Superusuário que tem pessoas remove o personal.xlsb ou move-o para que ele não abra na inicialização (pergunta 65297) ou altere as configurações para ter apenas uma janela na barra de tarefas (pergunta 86989). (Desculpe, não há hiperlinks - aparentemente eu preciso de mais reputação para adicionar hyperlinks adicionais.)
Eu gostaria de ter o personal.xlsb aberto quando eu abrir o Excel, exibir cada janela do Excel na barra de tarefas, mas ter o Excel sair quando clicar no "X" na última pasta de trabalho que não é personal.xlsb. Alguma idéia de como conseguir isso?
Você precisa ir para as opções do Excel / advanced / display e desmarcar Mostrar todas as janelas na barra de tarefas
Outras "soluções alternativas" sugeridas (e explicadas mais detalhadamente) aqui incluem:
Você pode corrigir esse problema sem nenhum código ou pressionamentos de teclas especiais apenas abrindo qualquer documento do Excel ou criando um novo documento e, em seguida, fechando-o. Em seguida, na pasta de trabalho do Excel em branco restante, no menu Exibir, reexiba o arquivo Personal.xlsb
. Volte a ocultá-lo e feche o livro em branco. Ele solicitará que você salve o Personal.xlsb
, para o qual diz Sim, e o problema desaparece.