Tópicos relacionados a códigos VBA, gravação de macros, etc.
Por fabril15 02 Dez 2019 às 11:54
Membro Novato
Mensagens: 26
Reputação: 0
#50789
Bom dia,
Espero que possam me ajudar!


Tenho uma planilha que quando ela é aberta, é executado uma instrução para que alguns itens sejam ocultados:
________________________________________________
Sub Tela_cheia()

'Quando abrir o arquivo
Sheets("Instruções").Visible = True
Sheets("BM").Visible = True
Sheets("RATEIO").Visible = True
'
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
Application.DisplayFormulaBar = False
Application.DisplayStatusBar = False
With ActiveWindow
.DisplayWorkbookTabs = False
.DisplayHeadings = False
End With

End Sub
________________________________________________

E quando o arquivo é fechado, é executado outras instruções para que exposto os itens que foram ecultos:
________________________________________________
Sub Fechar()

'Quando fechar o arquivo
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"
Application.DisplayFormulaBar = True
Application.DisplayStatusBar = True
With ActiveWindow
.DisplayWorkbookTabs = True
.DisplayHeadings = True
End With

End Sub
________________________________________________

O problema:
Quando este arquivo esta aberto, está afetando outros arquivos que estejam abertos, e quando o aquivo em questão é fechado, mesmo a instrução de fechamento sendo executada, a 'barra de formulas' e 'barra de status' permanecem ocultas.

Queria uma ajuda pra concertar essa instrução, ou modificar.

Fico no aguardo, e desde já, agradeço!!!
Avatar do usuário
Por Jimmy 02 Dez 2019 às 12:38
Excel Expert
Mensagens: 1259
Reputação: 868
#50791
Olá Fabril,

Comigo o problema não ocorreu, e tudo reapareceu para as demais planilhas abertas, após fechar a planilha em questão.

Tente fazer uma alteração. Se a macro do evento Open efetua A, B, C, D e E, tente fazer a macro do evento Close desfazer nessa ordem: E, D, C, B e A. Só um palpite porque não consegui reproduzir o erro.

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo" existente acima e a direita de cada mensagem.

Jimmy San Juan
Avatar do usuário
Por Jimmy 02 Dez 2019 às 16:13
Excel Expert
Mensagens: 1259
Reputação: 868
#50798
Outra tentativa:

Substitua:

Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
Application.DisplayFormulaBar = False
Application.DisplayStatusBar = False


Por:

Application.DisplayFullScreen = True

Pois faz o mesmo papel, sem ter que referenciar bibliotecas antigas do Excel.

Nas mensagens que colaboram para a solução do problema, peço que dê um Like, clicando no botão com o "positivo existente acima e a direita de cada mensagem.

Jimmy San Juan
Por fabril15 12 Jan 2020 às 00:33
Membro Novato
Mensagens: 26
Reputação: 0
#51615
Jimmy, obrigado pela ajuda, realmente deu certo.
Só preciso que você me ajude em uns detalhes

As instruções ficaram assim:
______________________________________________
Private Sub Workbook_Open()

Application.DisplayFullScreen = True

End Sub
-------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)

Application.DisplayFullScreen = False

End Sub
______________________________________________

Daí, percebi que:
- Quando o aquivo com essa instrução estiver aberta, e outro arquivo é aberto, a 'barra de fórmula' fica oculta;
- As guias ficam visíveis, poderia ocultar?;
- Se o usuário clicar em 'ESC', minimizar ou restaurar o tamanho, tirando de maximizar, ele volta para o modo normal do Excel. Na instrução que eu tinha feito não permitia isso. Como podemos ajustar isto?

Fico no aguardo do retorno.
E muito obrigado mais uma vez.