Notifications
Clear all

Salvar com senha.

5 Posts
2 Usuários
0 Reactions
858 Visualizações
(@vpeglow)
Posts: 88
Estimable Member
Topic starter
 

Alguém sabe algum código VBA, para que quando alguém salvar ou salvar como, peça uma senha?

 
Postado : 09/04/2014 1:50 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Eu não sei ao certo, mas pense em algo assim...

Option Explicit
Sub AleVBA_11256()
    Dim Open_Password As String
    Dim New_File_Name As String
    New_File_Name = Range("G2").Value & "" & Range("G1").Value & ".xlsm"
    Open_Password = InputBox("Por favor, digite uma senha para impedir os outros de editar o seu arquivo. Você deve lembrar da SENHA")
    ActiveWorkbook.SaveAs New_File_Name, _
    WriteResPassword:=Open_Password, _
    Password:="heather"
     
     
End Sub
 
Postado : 09/04/2014 2:26 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Tente esse também.
Cole o código dentro do Editor VB, no módulo da pasta de trabalho, em Esta_Pasta_de_Trabalho

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

    Const PW As String = "AleVBA"
    Dim EnterPW As String

    EnterPW = InputBox("Digite a senha para salvar")

    If PW = Empty Then Exit Sub
    If EnterPW = PW Then
        ThisWorkbook.Save
    Else: Cancel = True
    End If

End Sub

Att

 
Postado : 09/04/2014 2:34 pm
(@vpeglow)
Posts: 88
Estimable Member
Topic starter
 

oi . funcionou. fiz apenas algumas modificações.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Senha As String
Senha = "34435vrb"

If InputBox("Digite a senha para Salvar", "Proteção - Contabilidade") = Senha Then
Exit Sub
Else
If SaveAsUI = True Then
MsgBox "Não é permitido Salvar Como"
Cancel = True
Exit Sub
End If
If SaveAsUI = False Then
MsgBox "Não é permitido ‘Salvar"
Cancel = True
Exit Sub
End If
End If
End Sub

entretanto quando coloco a senha, ela aprece exatamente como se escreve, não tem como deixar o asterisco (*)?

 
Postado : 10/04/2014 8:58 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

A duas formas, uma é usar um Userfom com uma caixa de texto a outra configurar via VBA a InputBox, possível mas na minha opinião, não é tão necessário.

As duas formas podem ser encontradas usando a pesquisa do fórum!

Att

 
Postado : 10/04/2014 9:10 am