Notifications
Clear all

forçar habilitar macros ou detectar exclusão de linhas

5 Posts
2 Usuários
0 Reactions
1,139 Visualizações
(@gtsalikis)
Posts: 2373
Noble Member
Topic starter
 

Pessoal, estou com um problema aqui (proveniente do mau uso das pessoas).

Tenho uma pasta de trabalho compartilhada que é utilizada por cerca de 50 pessoas.

Já tive vários problemas com ela, e estou na quarta versão (a cada versão, foi colocando refazendo para tentar resolver problemas de mau uso).

O que tenho agora: Não posso bloquear a planilha (usando a opção bloquear), então, resolvi bloquear algumas funções via código: reconfigurei o Ctrl + v e estou tentando bloquear a exclusão de linhas.

É nessa parte de impedir a exclusão de linhas que estou com o maior problema. Eu defini uma linha (1000) como trava, e a cada alteração eu tenho um evento que verifica se esta linha "trava" continua sendo a linha 1000.

O problema é que tem gente que não habilita as macros, e dai exclui a linha e com isso a planilha fica bloqueada.

Eu tentei usar uma planilha de alerta pedindo para habilitar as macros (ocultando as demais com xlsheetveryhidden), mas, como se trata de uma planilha compartilhada, só funciona para o primeiro que abre a planilha, pois o segundo usuário já pega a pasta de trabalho com todas as planilhas visiveis.

Editar o ribbon não é uma opção, porque tem o botão direito do mouse.

Enfim, todas as estratégias que eu conheço para forçar o usuário a habilitar macros servem para pastas de trabalho não compartilhadas.

Então, a dúvida é: existe uma forma de forçar o usuário a habilitar as macros sendo que a pasta de trabalho é compartilhada?

 
Postado : 20/03/2014 6:23 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Eu não conheço uma forma 100% eficiente de fazer isso!

Mas imagine que o arquivo está totalmente desprovido das guias (oculta em modo xlVerySheetHidden, quando fechado ), com uma ribbon totalmente personalizada, onde na ribbon vai ter a mensagem para todos leia e habilitem as macros? :roll:

Porque não combinar com esses usuários e nessas máquinas mudar a segurança de macros, desabilitar qualquer macro, exceto as assinadas digitalmente, para através de um sertificado, a segurar que as mesmas estão em uso?

Att

 
Postado : 20/03/2014 10:27 am
(@gtsalikis)
Posts: 2373
Noble Member
Topic starter
 

Obrigado, Alexandre,

Acho que me expressei mal.

Eu não editei a ribbon. Apenas já descartei essa possibilidade porque, mesmo que eu a edite, o usuário ainda pode usar o botão direito do mouse e escluir as linhas.

E sobre as planilhas estarem ocultas. Lembre uma delas sempre precisa estar visível. (Eu pelo menos, nunca consegui excluir todas).

Sobre a configuração e das máquinas, eu não posso fazer. Existe um política aqui onde o TI cuida de toda a configuração das máquinas, e eu não posso sair configurando, nem pedir para que eles façam. (Malditas políticas)

Sobre o certificado. Eu nunca tentei criar um certificado. Eu sei que existem os que são pagos e permitem que o arquivo seja aberto normalmente, e existe o certificado que eu crio gratuitamente, mas eu acho que este não será suficiente para habilitar as macros. Estou errado?

Aliás, neste caso, eu precisaria instalar o certificado em todas as máquinas. Eu ainda teria problemas, porque só seria funcional daria certo se eu conseguir incluir um código VBA que force a instalação. Porém, como eles não estão habilitando as macros, também não daria resultado.

 
Postado : 20/03/2014 10:59 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Minha ideia é atrair a atenção de quem vai usar o arquivo de modo que o mesmo para trabalhar com a aplicação deverá habilitar as macros.

Eu não editei a ribbon. Apenas já descartei essa possibilidade porque, mesmo que eu a edite, o usuário ainda pode usar o botão direito do mouse e escluir as linhas.

Se você estiver em poder do arquivo, pode via macro desabilitar essas opções.

E sobre as planilhas estarem ocultas. Lembre uma delas sempre precisa estar visível. (Eu pelo menos, nunca consegui excluir todas).

Uma guia em branco e que não tem relação com a tarefa do usuário, pode ficar exposta, pois para esse usuário essa guia não serve.

Caso tenha uma noções da edição de Ribbons, você pode fazer o seu excel!!!

Leia:
http://www.rondebruin.nl/win/s2/win001.htm

Att

 
Postado : 20/03/2014 11:18 am
(@gtsalikis)
Posts: 2373
Noble Member
Topic starter
 

Boa tarde!!

Minha ideia é atrair a atenção de quem vai usar o arquivo de modo que o mesmo para trabalhar com a aplicação deverá habilitar as macros.

Eu não editei a ribbon. Apenas já descartei essa possibilidade porque, mesmo que eu a edite, o usuário ainda pode usar o botão direito do mouse e escluir as linhas.

Se você estiver em poder do arquivo, pode via macro desabilitar essas opções.

E sobre as planilhas estarem ocultas. Lembre uma delas sempre precisa estar visível. (Eu pelo menos, nunca consegui excluir todas).

Uma guia em branco e que não tem relação com a tarefa do usuário, pode ficar exposta, pois para esse usuário essa guia não serve.

Caso tenha uma noções da edição de Ribbons, você pode fazer o seu excel!!!

Leia:
http://www.rondebruin.nl/win/s2/win001.htm

Att

Eu já utilizo o customUI para criar ribbons personalizadas (só não utilizei neste caso). E o arquivo é de criação minha, posso alterar como quiser.

Eu já tentei criar uma planilha apenas chamando a atenção para habilitar as macros, como neste exemplo:

http://anmars.com/Work/?P=234545611

O problema é com a pasta de trabalho compartilhada ela não resolve, porque o primeiro usuário habilita as macros, torna todas as guias visíveis, faz alguma alteração e salva. O resultado é que o segundo usuário a acessar a pasta de trabalho já terá todas as planilhas visíveis, e nem vai prestar atenção no alerta sobre as macros.

 
Postado : 20/03/2014 11:28 am