Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Ocorre quando o utilizador executa alguma ação, como premir a tecla Delete, para eliminar um registo, mas antes de o registo ser realmente eliminado.
Sintaxe
expressão. Eliminar (Cancelar)
expressão Uma variável que representa um objeto Form.
Parâmetros
| Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
|---|---|---|---|
| Cancel | Obrigatório | Integer | A configuração determina se o evento Delete ocorrerá. Definir o argumento Cancelar como Verdadeiro (1) cancela o evento Eliminar . |
Comentários
Para executar um procedimento de macro ou evento quando estes eventos ocorrem, defina a propriedade OnDelete, BeforeDelConfirm ou AfterDelConfirm para o nome da macro ou para [Procedimento de Evento].
Depois de ser excluído, um registro é armazenado em um buffer temporário. O evento BeforeDelConfirm ocorre após o evento Delete (ou, se você excluiu mais de um registro, depois de todos os registros serem excluídos, com um evento Delete ocorrendo para cada registro), mas antes de a caixa de diálogo Confirmar Exclusão ser exibida. Cancelar o evento BeforeDelConfirm restaura o registro ou os registros do buffer e impede que a caixa de diálogo Confirmar Exclusão seja exibida.
O evento AfterDelConfirm ocorre após um ou mais registros serem realmente excluídos ou após uma ou mais exclusões serem canceladas. Quando o evento BeforeDelConfirm não é cancelado, o evento AfterDelConfirm ocorre após a caixa de diálogo Confirmar Exclusão ser exibida. O evento AfterDelConfirm ocorrerá, mesmo se o evento BeforeDelConfirm será cancelado. O evento AfterDelConfirm retorna informações de status sobre a exclusão. É possível, por exemplo, usar uma macro ou um procedimento de evento associado ao evento AfterDelConfirm para recalcular totais afetados pela exclusão dos registros.
Quando você cancela o evento Delete, os eventos BeforeDelConfirm e AfterDelConfirm não ocorrem, e a caixa de diálogo Confirmar Exclusão não é exibida.
Observação
Os eventos BeforeDelConfirm e AfterDelConfirm não ocorrem e a caixa de diálogo Eliminar Confirmar não é apresentada se desmarcar a caixa de marcar Registar Alterações em Confirmar no separador Avançadas da caixa de diálogo Opções do Access, disponível ao selecionar o botão do Microsoft Office e, em seguida, selecionar Opções do Access.
Executando uma macro ou um procedimento de evento quando ocorre o evento Delete, você pode impedir que um registro seja excluído ou permitir que um registro a ser excluído somente sob certas condições. Você também pode usar um evento de exclusão para exibir uma caixa de diálogo perguntando se o usuário deseja excluir um registro antes de serem excluído.
Para eliminar um registo, pode selecionar Eliminar Registo no menu Editar . Isso exclui o registro atual (o registro indicado pelo seletor de registro). Também pode escolher o seletor de registos ou selecionar Selecionar Registo no menu Editar para selecionar o registo e, em seguida, premir a tecla Delete para o eliminar. Se escolher Eliminar Registo, o seletor de registos do registo atual ou Selecionar Registo, os eventos Exit e LostFocus do controlo que tem o foco ocorrem. Quando você altera os dados no registro, os eventos BeforeUpdate e AfterUpdate ocorrem para o registro antes dos eventos Exit e LostFocus. Se escolher o seletor de registos de um registo diferente, também ocorrerá o evento Atual desse registo.
Depois de eliminar o registo, o foco muda para o registo seguinte após o registo eliminado e ocorre o evento Atual desse registo, seguido dos eventos Enter e GotFocus para o primeiro controlo nesse registo.
O evento BeforeDelConfirm então ocorre, antes do Microsoft Access exibe a caixa de diálogo Confirmar exclusão que solicita a confirmação da exclusão. Após você responder à caixa de diálogo Confirmar ou cancelar a exclusão, o evento AfterDelConfirm ocorrerá.
Você pode excluir um ou mais registros por vez. O evento Delete ocorre após cada registro é excluído. Isso permite que você acesse os dados em cada registro antes de ele é realmente excluído e confirmar ou cancelar seletivamente cada exclusão no Excluir macro ou procedimento de evento. Quando elimina mais do que um registo, o evento Atual do registo que se segue ao último registo eliminado e os eventos Enter e GotFocus para o primeiro controlo neste registo não ocorrem até que todos os registos sejam eliminados. Em outras palavras, um evento Delete ocorre para cada registro selecionado, mas nenhum outro evento ocorrerá até que todos os registros selecionados sejam excluídos. Os eventos BeforeDelConfirm e AfterDelConfirm também não ocorrerão até que todos os registros selecionados sejam excluídos.
Exemplo
O exemplo a seguir mostra como você pode impedir que um usuário exclua registros de uma tabela. Para testar este exemplo, adicione o procedimento de evento a seguir a um formulário que seja baseado em uma tabela. Alterne para o modo de folha de dados do formulário e tente excluir um registro.
Private Sub Form_Delete(Cancel As Integer)
Cancel = True
MsgBox "This record can't be deleted."
End Sub
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.