Um formulário de login é obrigatório para bancos de dados que contêm informações confidenciais. Siga as etapas abaixo para criar seu próprio formulário de login para proteger seu banco de dados de acesso inválido.
Faça o download
Se você deseja começar a usar o recurso o mais rápido possível, você pode:
Baixe o banco de dados de amostra com códigos VBA agora
Caso contrário, se você quiser DIY, pode ler o conteúdo abaixo.
Etapas para criar um formulário de login no Access
1. Crie uma tabela de login
A primeira coisa que precisamos fazer é criar uma tabela que armazenará todas as informações de login.
- Crie uma nova tabela e nomeie-a como tbl_login.
- Abra a tabela na visualização de design.
- Adicione os seguintes campos com seus tipos de dados correspondentes:
| Nome do campo | Tipo de dados |
| ID do usuário | AutoNumeração |
| Primeiro nome | Pequeno texto |
| Sobrenome | Pequeno texto |
| UserName | Pequeno texto |
| Senha | Pequeno texto |
- Edite a máscara de entrada da senha para que seja exibida como uma série de asteriscos (*).
- Selecione o campo Senha.
- Vá para a guia Geral > Máscara de entrada > …
- Quando o Assistente de máscara de entrada aparecer, selecione Senha.
- Clique em Concluir.
- Abra a tabela na exibição Folha de dados e insira o primeiro registro (seus detalhes de login).
- Feche a tabela e salve as alterações feitas.
2. Crie o formulário de login
Crie um formulário em branco com 2 caixas de texto e 2 botões de comando (conforme mostrado abaixo). Ignore o assistente do botão de comando.
Vamos nos referir a esses controles de formulário em nosso código posteriormente, então seria melhor renomeá-los para que possam ser facilmente identificados:
- txt_nomedeusuário
- txt_senha
- cmd_login
- cmd_cancel
Em seguida, altere a máscara de entrada da caixa de texto da senha para que também seja exibida como uma série de asteriscos (*).
- Na visualização de design, selecione a caixa de texto de senha.
- Abra a Folha de Propriedades (ALT + Enter).
- Vá para a guia Dados > Máscara de entrada.
- Selecione Senha e clique em Concluir.
Agora, vamos alterar algumas propriedades do formulário por motivos estéticos e, principalmente, para garantir que os usuários não possam ignorá-lo sem inserir os dados de login corretos.
- Na visualização de design, selecione o formulário (conforme mostrado abaixo).
- Abra a Folha de Propriedades (ALT + Enter) e atualize as seguintes propriedades:
- Sob o Formato aba
- Legenda: Entrar
- Seletores de registro: Não
- Botões de navegação: Não
- Barras de rolagem: nenhuma
- Estilo de Borda: Diálogo
- Botão Fechar: Não
- Sob o Outros aba
- Pop Up: Sim
- Modalidade: Sim
- Menu de Atalho: Não
- Salve o formulário como frm_login.
3. Adicione o código
Adicione um evento On Click ao botão Login.
- Na visualização de design, selecione o botão Login.
- Vá para a Folha de propriedades > Guia Evento > Ao clicar > …
- Selecionar Construtor de Código no menu Escolher Construtor e clique em OK.
- Isso abrirá o Editor VBA.
- Copie o código abaixo.
Private Sub cmd_login_Click()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim strSQL As String
If Trim(Me.txt_username.Value & vbNullString) = vbNullString Then
MsgBox prompt:="Username should not be left blank.", buttons:=vbInformation, title:="Username Required"
Me.txt_username.SetFocus
Exit Sub
End If
If Trim(Me.txt_password.Value & vbNullString) = vbNullString Then
MsgBox prompt:="Password should not be left blank.", buttons:=vbInformation, title:="Password Required"
Me.txt_password.SetFocus
Exit Sub
End If
'query to check if login details are correct
strSQL = "SELECT FirstName FROM tbl_login WHERE Username = """ & Me.txt_username.Value & """ AND Password = """ & Me.txt_password.Value & """"
Set db = CurrentDb
Set rst = db.OpenRecordset(strSQL)
If rst.EOF Then
MsgBox prompt:="Incorrect username/password. Try again.", buttons:=vbCritical, title:="Login Error"
Me.txt_username.SetFocus
Else
MsgBox prompt:="Hello, " & rst.Fields(0).Value & ".", buttons:=vbOKOnly, title:="Login Successful"
DoCmd.Close acForm, "frm_login", acSaveYes
End If
Set db = Nothing
Set rst = Nothing
End Sub
Este código irá:
- Verifique se os campos de nome de usuário e senha não foram deixados em branco. Se estiverem, um prompt será exibido.
- Verifique se os detalhes de login estão corretos comparando-os com os valores na tabela de login (tbl_login).
- Depois que os detalhes de login forem verificados, um prompt aparecerá dando as boas-vindas ao usuário.
O próximo passo é adicionar o código do botão Cancelar para que, ao ser clicado, o banco de dados seja fechado.
- Adicione um evento On Click ao botão Cancelar (mesmo procedimento do botão Login).
- Copie o código abaixo.
Private Sub cmd_cancel_Click() DoCmd.Quit acQuitSaveAll End Sub
4. Defina o formulário de login como o formulário de exibição
Por fim, defina o Formulário de Login como o formulário padrão que os usuários verão ao abrir o banco de dados.
- Vá para Arquivo > Opções > Banco de dados atual.
- Defina Exibir formulário como frm_login.
- Clique em OK.
Você terá que fechar o banco de dados e reabri-lo para ver como funciona.
Recupere seu banco de dados do Access
Parabéns! Agora você sabe como proteger seu precioso banco de dados contra acesso inválido. Agora, vou te dar uma dica extra. Se, por um motivo infeliz, seu banco de dados foi corrompido, NÃO entre em pânico. DataNumen Inc., especialista em tecnologias de recuperação de dados, fornece um software que repara acesso corrompido base de dados. Seu banco de dados ainda pode ser recuperado.
Introdução do autor:
Jayme Stack é um especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo recuperação sql e produtos de software de recuperação do Excel. Para mais informações visite www.datanumen.com



