Impedir copia de arquivo excel

Fórmulas básicas e avançadas do Microsoft Excel, Fórmulas Matriciais, Fórmulas combinadas, Funções como PROCV, PROCH, SOMASE, SOMA, SE, etc.
Regras do fórum
Sua dúvida foi respondida? Marque como RESOLVIDO em seus tópicos, usando o botão com marca verde. Imagem

Impedir copia de arquivo excel

Mensagempor JPerez » Sex Fev 11, 2011 10:33 am

Amigos
Bom dia

Existe alguma possibilidade de impedir a copia de uma planilha?

Coloquei minha planilha no servidor da empresa.
Todos poderão ter acesso a visualização, ja esta configurado o servidor da empresa para isso.
A planilha possui algumas macros para abrir no formato de exibição tela inteira, protegida, etc....

Porem

Se alguem aperta o botão "ESC" aparece a barra de ferramentas e a opção de salvar como ou salvar.

Teria alguma possibilidade de bloquear essa função de salvar e salvar como (o disquete do excel)????

Abraços
JPerez
 

{ SO_SELECT }

Re: Impedir copia de arquivo excel

Mensagempor leonardojones » Sex Fev 11, 2011 4:07 pm

nao eh muita segurança mas....

Vc pode colocar um arquivo qualquer em algum lugar na rede e uma linha de comando q ao abrir essa plan e nao localizar tiver esse arquivo feche a plan ou faça qquer outra coisa!!!

ou tbem....
pelo serial do HD, mas vc teria q cadastrar todos os seriais de todas os PCs q usarem essa plan!!!
leonardojones
 

Re: Impedir copia de arquivo excel

Mensagempor Mauro Coutinho » Dom Fev 13, 2011 12:38 am

É como o Leonardo disse, 100% não é garantido, existem varias formas de se fazer isso mesmo que a mesma estteja protegida por VBA, é só abrir no OpenOffice e copiar a mesma.

Mas vai uma rotina para Desabilitar e Habilitar os Botões SALVAR e SALVAR COMO :

Código: Selecionar todos
Option Explicit

Sub Desabilitar_Salvar_Como()
Dim cbControles As CommandBarControl
With CommandBars("File")
     Set cbControles = .FindControl(ID:=3)
     cbControles.Enabled = False
     Set cbControles = .FindControl(ID:=748)
     cbControles.Enabled = False
End With
End Sub


Código: Selecionar todos
Sub Habilitar_Salvar_Como()
Dim cbControles As CommandBarControl
With CommandBars("File")
     Set cbControles = .FindControl(ID:=3)
     cbControles.Enabled = True
   
     Set cbControles = .FindControl(ID:=748)
     cbControles.Enabled = True
End With
End Sub


Fonte : http://exceletudo.webnode.com.br/excel-macros-vba/

[]s
Mauro Coutinho
 

Re: Impedir copia de arquivo excel

Mensagempor leonardojones » Dom Fev 13, 2011 9:23 am

Segue o codigo do que falei acima...
axei esse no google com algumas alterações

Private Sub Auto_Open()
On Error GoTo RotinaErro ' Ative a rotina de tratamento de erro.
Open "C:\teste.txt" For Input As #1
Close #1
RotinaErro: ' Rotina de tratamento de erro.
Select Case Err.Number ' Avalie o número do erro.
Case 53
Application.Quit 'Se o arquivo não existe fechar a plan
Close #1
Case 55
Application.Quit 'Se o a rquivo esta aberto fechar a plan
Close #1
Case 76
Application.Quit 'Se o caminho não localizado fechar a plan
Close #1
Case Else
'Coloque aqui sua macro de Abertura, caso vc tenha
Close #1
End Select
End Sub

Nesse exemplo, se houver um arquivo teste.txt no C: a plan abre normalmente, vc tbem pode colocar esse arquivo na rede ex: \\sua_rede\excel\teste.txt
leonardojones
 

Re: Impedir copia de arquivo excel

Mensagempor Adriano Prachthäuser » Dom Fev 13, 2011 2:47 pm

Mauro,

No Excel 2010 não funcionou sua rotina...

Eu uso:
Código: Selecionar todos
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)


If Senha <> 123 Then
Cancel = True
MsgBox "Você não pode salvar este arquivo"
Else
Cancel = False
End If

End Sub

E um botão para Salvar:
Código: Selecionar todos
Public Senha As Integer

Sub Salvar()
'Solicitar senha
'Salvar = InputBox("Digite a senha para Salvar", "Senha")

'Ou atribui em um botão
Senha = 123
ActiveWorkbook.Save

'Para que depois de salvar ele permitir apenas usar o botão
Senha = 0

End Sub


Abraços
Adriano Prachthäuser
 

Re: Impedir copia de arquivo excel

Mensagempor JPerez » Seg Fev 14, 2011 9:47 am

Adriano
Bom dia

Muito obrigado pelo codigo, porem no 2010 que tbm uso naum consigo usar o codigo para salvar.

Poderia me dar uma ajuda?

Abraços
JPerez
 

Re: Impedir copia de arquivo excel

Mensagempor JPerez » Seg Fev 14, 2011 9:56 am

So a titulo de esclarecimento e duvidas....

Eu ja possuia na planilha (aba) denominada MENU um botão para salvar e fechar o arquivo.
o código abaixo:

Sub Salvar_Fechar()
If MsgBox("Seus dados serão salvos e arquivo será fechado") = 1 Then
ThisWorkbook.Close SaveChanges:=True
Application.Quit
End If
End Sub


Aonde eu colocaria o código poder salvar ??? (coloquei o código para bloquear as opções de salvar e esta perfeito, so não consigo liberar para salvar)....

abraços e obrigado
JPerez
 

Re: Impedir copia de arquivo excel

Mensagempor Adriano Prachthäuser » Seg Fev 14, 2011 11:04 am

JPerez,

Tente:
Código: Selecionar todos
Public Senha As Integer

Sub Salvar_Fechar()

MsgBox("Seus dados serão salvos e arquivo será fechado")
Senha = 123
ActiveWorkbook.Save
Application.Quit

End Sub


Atenciosamente,
Adriano Prachthäuser
Adriano Prachthäuser
 


Voltar para Fórmulas & Funções Microsoft Excel

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 5 visitantes