MS Access:从子窗体中删除记录时捕获值

DeB*_*fen 6 events ms-access vba recordset

当我删除Form或SubForm中的数据时,我想在BeforeDelConfirm事件中捕获已删除的记录.我知道可以从"删除缓冲区"中获取数据以将其用于其他内容.

我不想使用这个Delete活动.我知道在Recordset中实际删除数据之前可以从中获取数据,但是我想在BeforeDelConfirm事件中删除"删除"缓冲区.

我知道这是可能的,因为我几年前创建了它,但我找不到合适的代码,并且没有在几个Google会话中找到它.

Sma*_*oli 5

艾伦·布朗(Allen Browne)指出,该Delete事件会为每条记录BeforeDelConfirm触发,但会触发一次-即使选择了多个记录进行删除。因此,没有机会抓住这些价值。

被删除的记录的值在BeforeDelConfirm中不可用。使用Delete事件获取值。

可以一次删除多个记录,例如,如果您选择连续形式或数据表中的多个记录。Delete事件为每个记录触发一次,并且该值每次都可用。然后,BeforeDelConfirm和AfterDelConfirm事件对所有删除均触发一次,但当时该值不可用。因此,如果要在BeforeDelConfirm事件中读取它们,则需要在Delete事件中将已删除记录的值写入数组或临时表中。

他提供了一个示例:http : //members.iinet.net.au/~allenbrowne/AppAudit.html