Office中国论坛/Access中国论坛

标题: 请问如何让窗体在修改记录或者增加记录的时候写入字段 [打印本页]

作者: smilingkiss    时间: 2013-1-5 15:38
标题: 请问如何让窗体在修改记录或者增加记录的时候写入字段
表中有[更改或新增时间]字段
想在通过窗体录入新纪录或修改已有记录的情况下,把当时的时间记录到[更改或新增时间]字段里面,请问如何可以做到?
谢谢!

之前版主提及到在每个控件的"更新前"事件写入代码,还望请教版主,可否写入窗体的"更新前"事件中?毕竟控件多的话可能会影响运行效率,还请版主指教一二


(好像论坛恢复后没有了之前的数据,所以重发一次)
作者: todaynew    时间: 2013-1-5 17:02
在窗体更新后事件中写:
me.text1.value=now()
其中text1绑定 更改或新增时间 字段。
作者: smilingkiss    时间: 2013-1-5 17:19
todaynew 发表于 2013-1-5 17:02
在窗体更新后事件中写:
me.text1.value=now()
其中text1绑定 更改或新增时间 字段。

这样的话,在导航里面点击下一记录,好像就不行了
作者: sxgaobo    时间: 2013-1-5 18:21
在表里做,将 更改或新增时间 字段的 默认值 设为 =now()
作者: smilingkiss    时间: 2013-1-5 19:14
sxgaobo 发表于 2013-1-5 18:21
在表里做,将 更改或新增时间 字段的 默认值 设为 =now()

那修改的呢?不会默认出来呀
作者: 你是坏蛋    时间: 2013-1-5 23:03
smilingkiss 发表于 2013-1-5 17:19
这样的话,在导航里面点击下一记录,好像就不行了

要看具体的例子,具体控件的更新后事件也是可以的。
作者: smilingkiss    时间: 2013-1-6 10:10
你是坏蛋 发表于 2013-1-5 23:03
要看具体的例子,具体控件的更新后事件也是可以的。

文本框是不行喔,更新前吧,更新前可以^_^
作者: Henry D. Sy    时间: 2013-1-6 10:20
smilingkiss 发表于 2013-1-6 10:10
文本框是不行喔,更新前吧,更新前可以^_^

昨天的帖子呢?
不是帮你解决了吗
作者: smilingkiss    时间: 2013-1-6 15:23
Henry D. Sy 发表于 2013-1-6 10:20
昨天的帖子呢?
不是帮你解决了吗

谢谢版主的回复和帮助
昨天的帖子好像是网站恢复后就找不到了
昨天看了你的回复,你的意思是每一个控件都做一个"更新前"的事件,这样会不会比较慢?我的窗体里面很多控件啊
作者: Henry D. Sy    时间: 2013-1-7 09:38
smilingkiss 发表于 2013-1-6 15:23
谢谢版主的回复和帮助
昨天的帖子好像是网站恢复后就找不到了
昨天看了你的回复,你的意思是每一个控件都 ...

做个函数就可以了,不用每个控件去写更新前事件!
作者: smilingkiss    时间: 2013-1-7 11:52
Henry D. Sy 发表于 2013-1-7 09:38
做个函数就可以了,不用每个控件去写更新前事件!

版主,愿闻其详啊?函数怎么写?
(我现在直接在窗体的更新前事件中写入语句,这样就不用每个控件都写一次,不过版主有更好的其它方法,能否赐教一下,谢谢)
作者: Henry D. Sy    时间: 2013-1-7 12:20
smilingkiss 发表于 2013-1-7 11:52
版主,愿闻其详啊?函数怎么写?
(我现在直接在窗体的更新前事件中写入语句,这样就不用每个控件都写一 ...

窗体更新前也可以!
因为你没有例子,前天我只是给你个建议!
作者: smilingkiss    时间: 2013-1-7 12:59
Henry D. Sy 发表于 2013-1-7 12:20
窗体更新前也可以!
因为你没有例子,前天我只是给你个建议!

附件上传了,字段是updatedtime,在窗体页脚,请版主指教如何写函数实现

作者: Henry D. Sy    时间: 2013-1-7 15:02
要修改的是哪个窗体,主窗体或子窗体?
作者: smilingkiss    时间: 2013-1-7 15:40
Henry D. Sy 发表于 2013-1-7 15:02
要修改的是哪个窗体,主窗体或子窗体?

主窗体,aaa里面的页脚里面
作者: Henry D. Sy    时间: 2013-1-7 15:41
For Each ctl In Me.Controls
        If TypeOf ctl Is TextBox Then
            If ctl <> ctl.OldValue Then
                Me.Uptime = Now
            End If
        End If
    Next
作者: smilingkiss    时间: 2013-1-7 16:14
Henry D. Sy 发表于 2013-1-7 15:41
For Each ctl In Me.Controls
        If TypeOf ctl Is TextBox Then
            If ctl  ctl.OldValue ...

谢谢版主
放到哪里去呢?窗体的更新前?
作者: Henry D. Sy    时间: 2013-1-7 16:15
对呀,你测试看看,我没有测试!
作者: smilingkiss    时间: 2013-1-7 17:27
Henry D. Sy 发表于 2013-1-7 16:15
对呀,你测试看看,我没有测试!

OK,谢谢^_^




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3