设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] [求助]查询使用天数的问题

[复制链接]
跳转到指定楼层
1#
发表于 2006-9-17 04:14:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题:表car记录了车辆的借用情况,若 “借用结束”为空表示车辆未归还,希望在窗体frmcar中的两个文本框中任意输入查询日期,在子窗体能得到车辆在这段日期中的使用天数。我估计要用到自定义函数什么的,请高手相助,谢谢。

下面是我以前用excel做的时候,在excelhome求得的vba代码,应用于excel中,因为access不很精通,不知道如何移植到access中。


Function dateRQ(inpStartDate As Date, inpEndDate As Date, startDate As Date, endDate As Date) As Integer
Dim intW%
If endDate & "" = "0:00:00" Then
endDate = inpEndDate
intW = 1
End If

If endDate < inpStartDate Then '如果查询日期已超过归还期,返回0
dateRQ = 0
Exit Function
End If

If inpStartDate < startDate Then inpStartDate = startDate '如果查询起始日期早于出借起始日期,调整查询起始日期
If inpEndDate > endDate Then inpEndDate = endDate
dateRQ = inpEndDate - inpStartDate
If dateRQ < 0 Then
dateRQ = 0
Exit Function
End If
dateRQ = IIf(inpEndDate - inpStartDate > 0, inpEndDate - inpStartDate, 1) + intW
Application.Volatile
End Function

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-9-17 06:00:00 | 只看该作者
3#
 楼主| 发表于 2006-9-17 22:20:00 | 只看该作者

一点通,谢谢您的指点,这些函数对我有所启发,可是我没有那么高的悟性,无法一点就通。我自己重新写了模块,也不知道写得对不对,见笑了,更不知道如何在查询中使用,真是笨啊。重新上传了附件,麻烦哪位看看啦。



[此贴子已经被作者于2006-9-18 11:31:55编辑过]

本帖子中包含更多资源

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

x
4#
发表于 2006-9-18 20:03:00 | 只看该作者
不用这么复杂


本帖子中包含更多资源

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

x
5#
 楼主| 发表于 2006-9-18 20:11:00 | 只看该作者
老大,先谢谢你,我测试了测试,发现结果是错误的。也许问题不是这么简单。

比如:我查询2006-8-20至现在,结果1辆车也没有。

[此贴子已经被作者于2006-9-18 12:19:38编辑过]

6#
发表于 2006-9-18 21:36:00 | 只看该作者
变通一下,增加条件就行了

本帖子中包含更多资源

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

x
7#
 楼主| 发表于 2006-9-18 22:12:00 | 只看该作者
谢谢老大,我自己在你的基础上修改了一下,得出了正确的结果。

使用天数: DateDiff("d",[借用日期],IIf([归还日期] Is Null,forms!frm!eday,[归还日期]))并加上条件>0

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-23 11:57 , Processed in 0.122157 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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