Notifications
Clear all

Executar Formulário sem aparecer a planilha

4 Posts
3 Usuários
0 Reactions
1,253 Visualizações
(@jpirriga)
Posts: 3
New Member
Topic starter
 

Bom dia a todos vcs.

Sou novo no fórum, e tentando aprender Excel Vba (mais tá dificil).

Crie um formulário que faz cálculos e manda os resultados para células da planilha e depois exportar os resultados com imagem ou como arquivo de texto, o formulário tem botões para minimizar e maximizar, etc.
O que falta para finalizar o projeto é abrir o formulário direto quando clico no ícone do arquivo (abrir formulário sem a planilha/pasta aparecer).
Já testei varias soluções que encontrei na net, e todas resolvem apenas parte do problema, em teste que fiz, na maioria das vezes ao abrir a planilha/pasta que tem o formulário as demais pastas de trabalho do Excel e que já estavam em execução também são ocultas ou fechadas e também não consigo abrir mais nenhum arquivo do Excel enquanto estou usando o formulário.
Seria ótimo uma opção que não tem influencia nas demais planilhas/pasta do excel

Espero que alguém possa me ajudar, já são quase 1000 linhas de programação, planilha em anexo

:(
Isto é o tipo de coisa que te deixa muito chateado porque quando você começa a aprender Excel VBA tem muita coisa maravilhosa que você vê, que todos dizem que tem como fazer no Excel, mais quando se tenta fazer não se acha a forma correta ou acaba não tendo como fazer mesmo.

 
Postado : 23/09/2016 7:21 am
fcarlosc
(@fcarlosc)
Posts: 453
Honorable Member
 

Bom-dia

1º. No seu formulário crie um botão para acessar a planilha:
Obs: crie um botão pequeno, não precisa por nome e você pode por nele uma imagem do Excel. Procure nas Propriedades do botão por "Picture"

Private Sub btn_acessar_Click()

Application.Visible = True
Unload Nome_do_formulario

End If

Nome_da_Planilha.Select

End Sub

2º Vá em "EstaPasta_de_Trabalho" e cole o seguinte código:

Private Sub Workbook_Open()

Application.Visible = False

Nome_do_Formulario.Show

End Sub

3º Insira um módulo e cole o seguinte código:

Sub Sistema()

Application.Visible = False
Nome_do_Formulario.Show

End Sub

4º Na Planilha crie um botão e atribua essa Macro "Sistema"

 
Postado : 23/09/2016 7:55 am
gfranco
(@wzxnet7)
Posts: 653
Honorable Member
 

Bom dia.
A propriedade application.visible realmente atua em todas as instâncias atuais ( em execução) do excel.
Mas vc pode contornar esse incoveniente assim:
estando com seu formulário aberto e, obviamente, com a planilha oculta pelo método anterior citado, voce pode abrir uma outra instância do excel e visualizar/trabalhar com qualquer outra planilha que não seja da instância em que seu formulário encontra-se.
resumindo faça assim:
Insira em seu userform na propriedade activate o seguinte:
"application.visible=false"
para fins de teste, acrescente na propriedade deactivate desse form : "application.visible = true
Em "esta pasta de trabalho", selecione workbook e na propriedade open escreva
cultura.show
legal... até ai vc já deve ter chegado...
com seu form em execução e consequentemente sua planilha invisivel
chame a caixa de comando apertando simultaneamente o botão do windows ( a famosa "bandeirinha") mais a tecla "R"
abrirá a caixa de comando
lá digite:
excel /x
observe que tem um espaço depois do excel... é EXCEL espaço /x e dê enter
uma nova instancia do excel se abrirá e nela vc poderá abrir qualquer pasta de trabalho que precise e sua planilha vinculada ao form continuará invisivel

Resposta útil? Clique na mãozinha ao lado do botão Citar.

 
Postado : 23/09/2016 8:08 am
fcarlosc
(@fcarlosc)
Posts: 453
Honorable Member
 

Dá uma olhada e vê se é dessa forma...!?

 
Postado : 23/09/2016 8:48 am