Notifications
Clear all

Ocultar workbook deixando outros visíveis

9 Posts
5 Usuários
0 Reactions
1,408 Visualizações
(@jrodrig7)
Posts: 0
New Member
Topic starter
 

Pessoal, bom dia. Tudo bem?

Tenho uma planilha que ao ser aberta inicia um userform. Até aí tudo bem, eu usava o Application.Visible = False para que apenas a UF ficasse em evidência. O problema é que agora surgiu a necessidade de conseguir ver outras planilhas que servirão para consulta de dados enquanto preencho essa userform.

Resumindo, preciso que o meu workbook não fique visível, apenas a userform; Em contra-partida, os arquivos já abertos ou os que vierem a ser abertos precisam ficar visíveis na barra de tarefas.

Alguém pode me ajudar, por favor?

 
Postado : 12/11/2015 7:24 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Tente

Private Sub UserForm_Initialize()
    ActiveWindow.Visible = False
End Sub

Quando fechar o Userfo, mostrar o arquivo.

Private Sub UserForm_Terminate()
    ThisWorkbook.Windows(ThisWorkbook.Name).Visible = True
End Sub

Att

 
Postado : 12/11/2015 7:43 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

jrodrig7,

Bom dia!

Segue um exemplo de como fazer isso.

 
Postado : 12/11/2015 7:43 am
(@jrodrig7)
Posts: 0
New Member
Topic starter
 

Wagner, não consigo abrir arquivos zipados aqui no trabalho, mas verei assim que chegar em casa. Muito obrigado!

Alexandre, funcionou em partes.
Essa userform guia para outras userforms, então terei que colocar esse código em todas, provavelmente.
Há alguma maneira de a Userform não bloquear a navegação em outras planilhas? Porque o que acontece é que quando estou com ela aberta para alimentação, não consigo nem maximizar as planilhas abertas para poder consultar dados...

 
Postado : 12/11/2015 8:02 am
(@jrodrig7)
Posts: 0
New Member
Topic starter
 

Aliás, nem abrir outros arquivos do Excel eu consigo quando a Userform está aberta (o que pela intenção com a qual foi criada deve acontecer o tempo todo. A ideia é que toda a operação seja feita na userform, nada no arquivo).

 
Postado : 12/11/2015 8:05 am
(@jrodrig7)
Posts: 0
New Member
Topic starter
 

Wagner Morel, mais uma vez muito obrigado por ter me ajudado.

Abri o seu arquivo e é exatamente o que eu queria, mas tive um problema na transição de uma Userform para outra. A minha primeira userform é a Userform3, que pode ser direcionada para a 1 com um botão. Quando tento mudar para a 1, aparece "Run-time error 9 - Subscript out of range". O comando do botão é simples:

Private Sub CommandButton2_Click()
Me.Hide
UserForm1.Show
End Sub

O erro aparece no UserForm1.Show.

Como eu resolvo essa transição? Até porque eu tenho 07 userforms nesse arquivo, vou ter que arrumar todas elas.

 
Postado : 12/11/2015 11:19 am
(@mprudencio)
Posts: 0
New Member
 

Penso que é so alterar o nome userform1 para userform3

 
Postado : 12/11/2015 3:31 pm
(@jrodrig7)
Posts: 0
New Member
Topic starter
 

MPrudencio,

O código funcionou na 3, o problema é que há um botão da Userform3 que direciona para a Userform1, aí que o problema é apontado.

 
Postado : 13/11/2015 5:27 am
(@edivan)
Posts: 0
New Member
 

Olha não sei se vai resolver mas para fechar seu Userform tente trocar Me.Hide por Unload Me

Visite meu blog: programacaopassoapasso.com

 
Postado : 13/11/2015 4:50 pm