1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.
  2. A secção Microsoft/Windows encontra-se actualmente em processo de reestruturação.
    Remover anúncio

Problema ao salvar registos em Access

Discussão em 'Microsoft: Discussão Geral' iniciada por Lina1802, 18 de Junho de 2017. (Respostas: 0; Visualizações: 59)

  1. Boa noite,

    Agradeço a vossa ajuda para a seguinte questão:

    Estou a criar uma base de dados em Access versão 2016. Estou a criar uma base de dados que registe as entradas e saídas, ao inserir o utilizador e a senha automaticamente aparece o registo de entrada, o nome e o processo da pessoa. Quando tento salvar as alterações do registo, fica gravado sobre outro registo, eliminando o registo anterior. O que pretendo saber é como devo fazer para que actualize os registos e não os apague?

    Os códigos que coloquei são os seguintes:
    Private Sub Comando12_Click()
    Dim nprocesso As Integer
    Dim Nome_do_aluno As String
    Dim n_processo As Integer
    Dim Nome_do_aluno1 As String
    Dim Data1 As Currency
    Dim HoraEntrada As Currency
    Dim Responsávelentrada As String
    Dim HoraSaída As Currency
    Dim Responsávelsaída As String
    If Nz(DLookup("Senha", "Utilizadores", "Utilizador = '" & Me.Texto8.Value & "'")) = Me.Texto10 = False Then
    MsgBox ("Utilizador ou senha incorretos, tente novamente."), vbCritical, "Erro"
    Else
    If IsNull(check1 And check2) Or check1 = False And check2 = False Then
    MsgBox ("Selecione uma das opções abaixo."), vbCritical, "Aviso"
    If IsNull(Me.Texto8 And Me.Texto10) Then
    MsgBox ("Insira o utilizador/senha!"), vbCritical, "Aviso"
    End If
    End If
    End If
    If check1 = True And Nz(DLookup("Senha", "Utilizadores", "Utilizador = '" & Me.Texto8.Value & "'")) = Me.Texto10 Then
    DoCmd.OpenForm ("Entrada")
    Forms![Entrada]![nprocesso] = DLookup("[NºProcesso]", "Utilizadores", "[Utilizador] = '" & Me.Texto8.Value & "'")
    Forms![Entrada]![Nome_do_aluno] = DLookup("[Nome_do_aluno]", "Utilizadores", "[Utilizador]='" & Me.Texto8.Value & "'")
    DoCmd.Close acForm, "FPrincipal"
    Else
    If check2 = True And Nz(DLookup("Senha", "Utilizadores", "Utilizador = '" & Me.Texto8.Value & "'")) = Me.Texto10 Then
    DoCmd.OpenForm ("Saída")
    Forms![Saída]![n_processo] = DLookup("[NºProcesso]", "Utilizadores", "[Utilizador] = '" & Me.Texto8.Value & "'")
    Forms![Saída]![Nome_do_aluno1] = DLookup("[Nome_do_aluno]", "Utilizadores", "[Utilizador]='" & Me.Texto8.Value & "'")
    Forms![Saída]![Data1] = DLast("Data", "TBL_Entradas/Saídas dos alunos", "[NºProcesso]= Forms![Saída]![n_processo]")
    Forms![Saída]![HoraEntrada] = DLast("Hora_entrada", "TBL_Entradas/Saídas dos alunos", "[NºProcesso]=Forms![Saída]![n_processo]")
    Forms![Saída]![Responsávelentrada] = DLast("Responsável_entrada", "TBL_Entradas/Saídas dos alunos", "[NºProcesso]=Forms![Saída]![n_processo]")
    Forms![Saída]![HoraSaída] = DLast("HoraSaída1", "TBL_Entradas/Saídas dos alunos", "[NºProcesso]=Forms![Saída]![n_processo]")
    Forms![Saída]![Responsávelsaída] = DLast("Responsável_saída", "TBL_Entradas/Saídas dos alunos", "[NºProcesso]=Forms![Saída]![n_processo]")
    DoCmd.Close acForm, "FPrincipal"
    If IsNull(Forms![Saída]![HoraSaída]) Then
    Forms![Saída]![HoraSaída] = Now()
    End If
    End If
    End If
    End Sub

    Obrigado desde já pela vossa ajuda
     

Partilhar esta Página