Como definir privilégios diferentes para usuários diferentes de um arquivo do Excel

Compartilhe agora:

A segurança do Excel é bastante importante para o seu trabalho. Neste artigo, apresentaremos o método para definir diferentes privilégios para diferentes usuários pelo Excel VBA.

Em nosso artigo anterior Como criar uma janela de login para proteger sua pasta de trabalho do Excel, apresentamos o método para criar uma janela de login para sua pasta de trabalho do Excel. Mas quando vários usuários precisam acessar o documento, você precisa fazer configurações adicionais. Além disso, você precisa garantir que esses usuários não farão alterações erradas no arquivo. Agora siga os passos abaixo e veja como finalizar esta tarefa.

Definir Privilégios Diferentes

Suponha que agora haja três representantes de vendas que precisam modificar esse arquivo. O nome e a senha são definidos conforme a imagem abaixo:Exemplo

E cada pessoa precisará modificar uma determinada planilha.

  1. Pressione as teclas de atalho “Alt + F11” no teclado para abrir o editor do Visual Basic.
  2. Em seguida, insira um novo formulário de usuário no editor.Inserir formulário de usuário
  3. Nesta etapa, insira dois rótulos, duas caixas de texto e dois botões no formulário do usuário.
  4. Em seguida, altere a legenda do formulário do usuário e os elementos inseridos na etapa 3. Você também pode consultar a imagem abaixo:Alterar legenda
  5. Depois disso, altere o “PasswordChar” para “*” para a segunda caixa de texto.SenhaChar
  6. Depois disso, clique duas vezes no formulário do usuário.
  7. Em seguida, insira os seguintes códigos no módulo:
Private Sub CommandButton1_Click()
  Dim objTargetWorksheet As Worksheet

  If (TextBox1.Value = "John" And TextBox2.Value = "234") _
    Or (TextBox1.Value = "Amy" And TextBox2.Value = "345") _
    Or (TextBox1.Value = "Paul" And TextBox2.Value = "456") Then
    Me.Hide: Application.Visible = True

    For Each objTargetWorksheet In ActiveWorkbook.Worksheets
      If objTargetWorksheet.Name = TextBox1.Value Then
        objTargetWorksheet.Unprotect Password:=12345
      Else
        objTargetWorksheet.Protect Password:=12345, DrawingObjects:=True, Contents:=True, Scenarios:=True
      End If
    Next
  Else
    MsgBox "Please input the right user name and the right password"
  End If
End Sub

Private Sub CommandButton2_Click()
  ThisWorkbook.Application.Quit
End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
  ThisWorkbook.Application.Quit
End Sub

Nos códigos, protegeremos outras planilhas. E os usuários só podem modificar as planilhas correspondentes. Você também pode alterar as senhas de acordo com sua necessidade.

  1. Depois disso, clique duas vezes em “ThisWorkbook” no projeto VBA.
  2. E, em seguida, insira os seguintes códigos nele:
Private Sub Workbook_Open()
  Application.Visible = False: UserForm1.Show
End Sub

Esta pasta de trabalho

  1. Para evitar que os usuários modifiquem os códigos VBA, você precisa definir uma senha para os projetos VBA. Em nosso artigo anterior Como proteger com senha códigos VBA em sua planilha do Excel, introduzimos métodos. Você também pode definir uma senha especial.
  2. No final, salve este arquivo do Excel.
  3. Na próxima vez que você abrir o arquivo, o formulário do usuário não aparecerá. Você precisa clicar no botão "Ativar conteúdo" no arquivo.
  4. E então você verá a janela “Log In”. Insira um nome e a senha nas duas caixas de texto.
  5. Depois disso, clique no botão “Log In” na janela.Log In

Neste momento, John só pode modificar sua planilha. Ele não consegue alterar outras planilhas ou os códigos VBA. Além disso, exceto os três representantes de vendas, ninguém mais pode abrir este arquivo sem a senha. Na próxima vez que você tiver esse requisito, também poderá definir essa janela de login para a pasta de trabalho.

Reconheça o problema na corrupção do Excel

Às vezes, o Excel pode corromper-se devido a diversos fatores. Antes de começar a reparar seus arquivos, você precisa identificar o problema e as causas da perda de dados. Além disso, se você não tiver conhecimento sobre recuperação de dados, pode reparar Excel corrompido xlsx Utilizando uma ferramenta de terceiros. Com um algoritmo de ponta, essa ferramenta consegue lidar com praticamente todos os erros do Excel.

Introdução do autor:

Anna Ma é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo reparar docx corrompido e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com

Compartilhe agora:

Comentários estão fechados.