设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1061|回复: 3
打印 上一主题 下一主题

[其它] [求助]是代码错了吗?

[复制链接]
跳转到指定楼层
1#
发表于 2005-5-10 03:14:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
意图:打开本窗体时首先判断数据表”日期“时间与系统时间作对比,如果日期字段值小于系统日期,则关闭窗体同时弹出一个消息框“试用期已到,如果大于系统时间则正常打开本窗体。
代码过程:在本窗体的加载事件中作出判断
   判断1、首先判断数据库中是否有”日期“这个数据表
如果有这个表,再判断这个表中的日期是否小于系统日期
如果小于系统日期,那么弹出消息”试用期已到“并删除这个表,同时关闭这个窗体。否则正常打开窗体。
   判断2、如果没有“日期”这个数据表,就弹出消息:试用期已到,同时关闭这个窗体。

这个问题真让我头疼:我将系统日期改为大于日期表中的日期,而系统却没有反映。问题出在哪啦?


[此贴子已经被作者于2005-5-9 19:20:44编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-5-10 03:58:00 | 只看该作者
dim dateA as date

dateA =DLookup("日期", "日期")

if dateA <date then
3#
发表于 2005-5-11 07:30:00 | 只看该作者
这是因为您将“日期”表里的“日期”字段设置为“文本”的类型了。

这样,DLookup("日期", "日期")获得的字串值永远大于日期值的。

使得 DLookup("日期", "日期") < Date   永远为  False

将日期字段改为“日期/时间”的数据类型就可以了。
4#
发表于 2005-5-11 07:42:00 | 只看该作者
代码可简化为:

Private Sub Form_Load()
On Error Resume Next
If Nz(DLookup("日期", "日期")) < Date Then 'Exit Sub '如果日期字段的日期值小于系统日期
   MsgBox "测试期已到" '弹出消息:测试期已到
   DoCmd.DeleteObject acTable, "日期" '删除“日期”数据表(防止用户修改日期表)
   DoCmd.Close '关闭窗体
End If
End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-29 21:18 , Processed in 0.111958 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表