Ir ao conteúdo

Posts recomendados

Postado

Eu tenho uma planilha, porém tem diversas macros que executa quando incia a planilha, mas o problema é que quando eu abro "outro planilha" as macros inciam. por exemplo: 

 

Private Sub Workbook_Open()
    Application.DisplayAlerts = False
    Application.AskToUpdateLinks = False
    Application.Visible = False
    lsDesabilitar
    lsLigarTelaCheia
    Mouse_Off
    frmLogin.Show
    'Atualização
    Application.CalculateFull
End Sub

 

 

Veja o  "lsLigarTelaCheia" faz com que ligue a tela cheia. porém ele executa nas outras planilha que abro.

Veja também o  "Mouse_Off" ele desabilita o mouse direito porém quando eu abro outra planilha a macro está executada.

 

Alguém, poderia ajudar?

Postado

Não entendi, qual seria o código ?

36 minutos atrás, CasaDoHardware disse:

Coloque dentro do evento desative desta planilha um codigo para retirar a tela cheia e retornar o funcionamento do botao direito do mouse.

 

 

 

Postado

Estou partindo do principio que você tem um codigo (ja postado) para fazer todas as configurações que você postou 

que sao esses:

 

 lsDesabilitar
    lsLigarTelaCheia
    Mouse_Off

 

 

Acredito que você tenha os codigos (vou supor os nomes) abaixo

 

lshabitar

lsdesligartelacheia

Mouse_on

 

Onde lshabilitar é o oposto do lsdesabilitar, lsdesligartelacheia é o oposto do lsligartelacheia, e mouse_on é o oposto do mouse_off.

 

Esses codigos devem ser colocados ou chamados no evento desative da planilha em esta pasta de trabalho.

  • Curtir 1
Postado
13 horas atrás, CasaDoHardware disse:

Estou partindo do principio que você tem um codigo (ja postado) para fazer todas as configurações que você postou 

que sao esses:

 

 lsDesabilitar
    lsLigarTelaCheia
    Mouse_Off

 

 

Acredito que você tenha os codigos (vou supor os nomes) abaixo

 

lshabitar

lsdesligartelacheia

Mouse_on

 

Onde lshabilitar é o oposto do lsdesabilitar, lsdesligartelacheia é o oposto do lsligartelacheia, e mouse_on é o oposto do mouse_off.

 

Esses codigos devem ser colocados ou chamados no evento desative da planilha em esta pasta de trabalho.

Então eles já estão na pasta de trabalho.

Postado
2 horas atrás, CasaDoHardware disse:

Mas nao no evento desactive, provavelmente no auto open e no before close

 

O evento desactive vai rodar quando você desativar (trocar) a planilha. 

Já tentei ainda ele continua executando o lsLigarTelaCheia nas outras planilhas, 

 

eu testei algo parecido assim: 

 

If Workbooks.Count = 1 Then
    lsLigarTelaCheia
     Else
     lsDesligarTelaCheia
     End If

 

Funcionou quando eu abro uma nova planilha agora, se eu estiver com alguma planilha aberta e não abre a planilha e da o

 

Erro em tempo de execução '9':

Subscrito fora do intervalo 

Postado

Segue planilha no zip, te peço uma ajudar se é possível criar uma macro ativar o mouse of e on de acordo com usuário também, exemplo se for admin ele ativar o mouse direito se não for ele desativa , e também esse problema se eu estiver com alguma planilha da rede aberta e iniciar o data station ele não entra e da o erro 9,  e também se eu abrir uma planilha nova ele incia  a tela cheia para todos os trabalhos é porque essa planilha está no servidor não sei se interfere em algo, consegue colocar um tempo de conectado a planilha, exemplo se usuário estiver inativo por 8 min a planilha fecha automaticamente, mas não se aplicara a o usuário admin, acho se puder melhor o máximo essa planilha agradeço, eu deixo ela no servidor onde vários usuários entre somente na sua planilha podendo visualizar dados de vendas etc..

 

Todas as senha: 123

 

Login:  admin

Senha:  admin

DATA-STATIONN.zip

adicionado 0 minutos depois
agora, Gabriel.Rizzatto disse:

Segue planilha no zip, te peço uma ajudar se é possível criar uma macro ativar o mouse of e on de acordo com usuário também, exemplo se for admin ele ativar o mouse direito se não for ele desativa , e também esse problema se eu estiver com alguma planilha da rede aberta e iniciar o data station ele não entra e da o erro 9,  e também se eu abrir uma planilha nova ele incia  a tela cheia para todos os trabalhos é porque essa planilha está no servidor não sei se interfere em algo, consegue colocar um tempo de conectado a planilha, exemplo se usuário estiver inativo por 8 min a planilha fecha automaticamente, mas não se aplicara a o usuário admin, acho se puder melhor o máximo essa planilha agradeço, eu deixo ela no servidor onde vários usuários entre somente na sua planilha podendo visualizar dados de vendas etc..

 

Todas as senha: 123

 

Login:  admin

Senha:  admin

DATA-STATIONN.zip

Acho que ira solucionar todos os meus problemas.

adicionado 4 minutos depois

Tenho mas um mas acho que é impossível eu queria deixar esse trabalho compartilhado, só que as macros não funcionam então o usuario admin no caso Eu deixo a planilha sempre aberta, assim quando outro usuario logar ele entra no login mas como leitura. é possível deixar compartilhado ou exemplo quando inciar a planilha não aparecer a mensagem se quer somente leitura, ou uma macro que iniciar sempre modo leitura sem aparecer a mensagem e tal 

Postado

Uma coisa que nao entendi se todos os usuarios são admin qual o objetivo?

 

De qualquer maneira tente essa alteração

 

Em esta pasta de trabalho cole estes codigos

 

 

Private Sub Workbook_Deactivate()
Application.Visible = True
lsDesligarTelaCheia
End Sub

 

 

Private Sub Workbook_Open()
    Application.DisplayAlerts = False
    Application.AskToUpdateLinks = False
    ThisWorkbook.Application.Visible = False
    lsDesabilitar
    frmLogin.Show
    'Atualização
    Application.CalculateFull
End Sub

 

 

 

  • Curtir 1
Postado
16 horas atrás, CasaDoHardware disse:

Uma coisa que nao entendi se todos os usuarios são admin qual o objetivo?

 

De qualquer maneira tente essa alteração

 

Em esta pasta de trabalho cole estes codigos

 

 

Private Sub Workbook_Deactivate()
Application.Visible = True
lsDesligarTelaCheia
End Sub

 

 

Private Sub Workbook_Open()
    Application.DisplayAlerts = False
    Application.AskToUpdateLinks = False
    ThisWorkbook.Application.Visible = False
    lsDesabilitar
    frmLogin.Show
    'Atualização
    Application.CalculateFull
End Sub

 

 

 

Não, a diversos usuários na planilha senha, só que as linhas estão ocultadas, so desocultar todas, ou criar um novo usuário 

 

Testei ainda continua dando aquele erro 9

 

Teste o usuário seguinte:

 

Lgoin> F4403134

Senha> M18831

adicionado 11 minutos depois
11 minutos atrás, Gabriel.Rizzatto disse:

Não, a diversos usuários na planilha senha, só que as linhas estão ocultadas, so desocultar todas, ou criar um novo usuário 

 

Testei ainda continua dando aquele erro 9

 

Teste o usuário seguinte:

 

Lgoin> F4403134

Senha> M18831

Não sei porque mas esse erro só dar se eu estiver com alguma outra planilha da rede aberta

Postado
6 minutos atrás, CasaDoHardware disse:

Tente assim no evento auto open

 

 

Dim W as workbook

 

Set W = Workbooks("NOME DO SEU ARQUIVO")

 

W.Application.Visible = False

 

 

 

 

 

Eu mantenho o Deactivate?

Postado

Sim so alterar o que sugeri.

 

Qto ao erro 9 deve ter alguma mensagem que identifica o erro.

 

Teria que ver acontecer.

 

Uma OBS Excel em rede, como diz um amigo, é igual promessa de politico durante a eleição.

 

Promete que vai fazer mas quando eleito some.

 

Em resumo nao funciona.

Postado

Eu coloquei 

 

Dim W as workbook

 

Set W = Workbooks("NOME DO SEU ARQUIVO")

 

W.Application.Visible = False

 

Certo eu coloquei!

 

Mas mesmo no meu computar ele da o erro de subescrito! 

 

Se colocar sem for na rede ele dá o erro !

 

 

Parece que não é porque está na rede, é algum código que está errado !

Postado
7 minutos atrás, CasaDoHardware disse:

Nao era pra subistituir todo o codigo era apenas para alterar o que indiquei.

 

 

Não tirei todo o código,

adicionado 0 minutos depois
Private Sub Workbook_Deactivate()
Application.Visible = True
lsDesligarTelaCheia
End Sub
Private Sub Workbook_Open()
    Dim W As Workbook
    Set W = Workbooks("DATA-STATION.xlsm")
    W.Application.Visible = False
    MayCauseAnError
    Application.DisplayAlerts = False
    Application.AskToUpdateLinks = False
    Application.Visible = False
    lsDesabilitar
    frmLogin.Show
    'Atualização
    Application.CalculateFull
    GravarUsuario
End Sub
Private Sub Workbook_Activate()
Application.CalculateFull
Limroll_on
GravarUsuario
End Sub
Public Sub Workbook_BeforeClose(Cancel As Boolean)
If Workbooks.Count = 1 Then
    Application.Quit
        Else
        ThisWorkbook.Close savechanges:=False
       End If
       Application.DisplayAlerts = False
       Application.Save
End Sub


 

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...