微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ms-access – MS Access:只需单击一下按钮,即可将表单数据保存到2个表中

我正在创建一个资产管理数据库,其中包含2个表(Assets和AssetMovements)和一个表单(Assets).
我需要保留每个资产移动的记录,因此每次将新资产添加到资产表或修改现有资产记录的“位置”值时,都应将记录保存到AssetMovements表中. AssetMovements表就是用来记录事务的.

我怎样才能做到这一点?我会很感激我能得到的任何指示,或者是否有人可以提出更好的方法来保持运动记录.
谢谢.

解决方法

该按钮具有单击时触发的单击事件.使用VBA编写单击按钮时执行的一些代码.
单击该按钮时,您将记录保存到资产.然后使用查询将该记录复制到AssetMovements表.所以,代码看起来像这样:
Dim OldLocation As String    

Private Sub Cmdsave_Click()
   DoCmd.runcommand acCmdsaveRecord
End Sub

Private Sub Form_AfterUpdate()
   Dim strsql
   If OldLocation <> Location.Value Then
      strsql = "INSERT INTO AssetMovements SELECT T1.* FROM Assets WHERE Assets.ID = "
      strsql = strsql & Me.ID
      CurrentDb.Execute strsql
   End If
End Sub

Private Sub Form_BeforeUpdate(Cancel As Integer)
   OldLocation = Me.Location.OldValue
End Sub

Private Sub Form_Current()
   OldLocation = Me.Location.Value
End Sub

然后,这将使用唯一ID(我在AssetID中猜到)将表单的当前记录复制到AssetMovement表.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐