Applies ToAccess para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Pode controlar quando os registos numa tabela do Access são modificados pela última vez através de um formulário com uma macro. Quando o formulário é utilizado para modificar um registo, a macro armazena a data e hora na tabela. Apenas a data e hora de modificação mais recentes são armazenadas.

Nota: Os procedimentos neste artigo destinam-se a ser utilizados em bases de dados do Access de ambiente de trabalho.

Neste artigo

Descrição geral

Para registar a data e hora em que os registos numa tabela são modificados, tem de concluir os seguintes passos:

Passo 1: adicionar campos a uma tabela    Precisa de um local para armazenar a data e hora antes de poder gravá-la. O primeiro passo é criar campos na tabela que têm os registos que pretende controlar. Para capturar a data e a hora, crie um campo para a data e um campo para a hora. Se apenas quiser capturar um ou outro, pode criar apenas o campo necessário.

Passo 2: Create uma macro que regista a data e hora    Consoante pretenda gravar a data, a hora ou ambas, a macro terá uma ou duas ações. Quando escrever a macro, especifique apenas os campos que irão armazenar a data e hora e não a tabela que contém esses campos. Desta forma, pode reutilizar facilmente a macro com outras tabelas e formulários.

Passo 3: adicionar a macro a um formulário de introdução de dados    Adicione a macro à propriedade do formulário Antes de Atualizar do formulário que utiliza para editar registos na tabela. Se utilizar outros formulários para editar registos na tabela, também pode adicionar a macro a cada um deles. Dessa forma, pode capturar a data e hora, independentemente do formulário que utilizar para editar o registo.

Sugestão: Se quiser controlar quando os registos são criados, mas não se importa quando são modificados, basta criar um campo na tabela para controlar e utilizar a propriedade Valor Predefinido do campo para carimbo de data/hora de cada registo quando é criado.

Início da Página

Antes de começar

Antes de começar, considere o seguinte:

  • Os utilizadores têm de ativar macros na base de dados. Se um utilizador abrir a base de dados e não ativar macros, a macro não marcará o carimbo de data/hora dos registos. Se armazenar a base de dados num localização de confiança, as macros são ativadas automaticamente.

  • Se um utilizador editar registos, mas não utilizar um formulário de introdução de dados que contenha a macro que marca o carimbo de data/hora, os registos que o utilizador editar não terão um carimbo de data/hora.

  • Uma vez que a data e hora são armazenadas em campos de tabela, os valores nesses campos são substituídos sempre que um registo é modificado. Por outras palavras, só pode armazenar a data e hora da modificação mais recente.

  • Se apenas quiser capturar a data e hora em que um registo é criado, basta adicionar um campo à tabela e definir a propriedade Valor Predefinido desse campo como Agora() ou Data().

  • Se o ficheiro de base de dados tiver um formato de ficheiro mais antigo e utilizar segurança ao nível do utilizador, tem de ter permissões para alterar a estrutura da tabela e os formulários que são utilizados para editar os respetivos registos.

Início da Página

Passo 1: adicionar campos de carimbo de data/hora a uma tabela

Create campos para armazenar as informações.

  1. Abra a tabela na vista Estrutura.

  2. Siga um ou ambos os procedimentos que se seguem:

    • Create um campo para armazenar a data.    Na coluna Nome do Campo da janela de estrutura, escreva Data de Modificação numa nova linha e, em seguida, selecione Data/Hora na coluna Tipo de Dados .

    • Create um campo para armazenar a hora.    Na coluna Nome do Campo da janela de estrutura, escreva Hora de Modificação numa nova linha e, em seguida, selecione Data/Hora na coluna Tipo de Dados .

  3. Prima CTRL+G para guardar as alterações.

Início da Página

Passo 2: Create uma macro que regista a data e hora

Depois de criar os campos, crie uma macro para carimbar esses campos. Para tornar a macro reutilizável com outras tabelas, consulte apenas os nomes dos campos e não os nomes das tabelas.

Nota: Se apenas quiser gravar a data ou a hora, omita a ação de macro de que não precisa.

  1. No separador Criar, no grupo Outro, clique em Macro. Se este comando não estiver disponível, clique na seta abaixo do botão Módulo ou Módulo de Classe e, em seguida, clique em Macro.

  2. No separador Estrutura, no grupo Mostrar/Ocultar, clique em Mostrar Todas as Ações.

  3. Na janela de macro, abra a lista de ações de macro e selecione DefinirValor.

    Separador de estrutura de macros do Access 2010.

    1. Primeiro, mostre todas as ações de macro disponíveis. A ação SetValue é considerada potencialmente insegura e está oculta por predefinição, uma vez que pode alterar os dados.

    2. Em seguida, selecione a ação DefinirValor nesta lista.

  4. Na caixa de ação DefinirValor , na caixa Item , escreva ou cole [Data de Modificação].

  5. Na caixa Expressão , escreva Data().

  6. Abra a lista de ações de macro seguinte e selecione DefinirValor.

  7. Na caixa de ação DefinirValor , na caixa Item , escreva ou cole [Hora de Modificação].

  8. Na caixa Expressão , escreva Tempo().

  9. Prima CTRL+S e, em seguida, na caixa de diálogo Guardar Como , escreva Última Modificação.

Início da Página

Passo 3: adicionar os campos e a macro a um formulário de introdução de dados

Depois de criar a macro, adicione-a a cada formulário de introdução de dados que os utilizadores utilizarão para introduzir dados na tabela relevante.

  1. Abra o formulário de introdução de dados na vista Estrutura.

  2. No separador Estrutura, no grupo Ferramentas, clique em Adicionar Campos Existentes.

  3. Na Lista de Campos, em Campos disponíveis para esta vista, arraste os campos Data de Modificação e Hora de Modificação para o formulário. Ajuste o tamanho e o posicionamento dos campos no formulário conforme necessário.

  4. Se a folha de propriedades ainda não tiver sido apresentada, prima F4 para a apresentar.

  5. Na folha de propriedades, certifique-se de que o Tipo de Seleção está definido como Formulário.

    Sugestão: Para alterar o Tipo de Seleção, clique no tipo de seleção que pretende na lista pendente.

  6. Na folha de propriedades, clique no separador Evento .

  7. No separador Evento , clique na seta na caixa Antes da Atualização e, em seguida, clique em Última Modificação.

  8. Se utilizar vários formulários para editar registos, repita este procedimento para cada formulário.

  9. Para verificar se a macro está a funcionar corretamente, abra o formulário na vista Formulário, edite um registo e, em seguida, prima SHIFT+F9. A data e hora em que editou o registo devem ser apresentadas.

Início da Página

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.