Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

日期按规律自动计算,请朋友帮助解决

爱在深秋  发表于:2009-06-19 15:47:16  
复制

我这里有一个日期问题,是输入一个日期后,后面三个日期按规律自动计算出来,要求是每两个日期之是的差,符合表(日期差)中的数值,要求计算出来后的日期,不能为周六与周日,也不能为法定假日表中的日期,如果遇到这些日期,那么就加一天,直到符合要求为止,请朋友们帮助,点击下载此附件

 

Top
善裕 发表于:2009-06-19 20:11:48
自己完成了周六与周日的排除,遇到法定假日还不懂的怎么处理,请朋友们帮助点击下载此附件

点燃一支烟 发表于:2009-06-19 20:33:39

呵呵,怎么看象有点象道计算机考试的测试题或某种布置的作业题啊?不知道这么做的实际意义?题目本身存在点问题要核实澄清:

相差日期天数的界定:包不包括首尾日期的问题?

以相差5天为例说明:

比方说,从2009-1-1算起,五天后可能是几种情况啊:

1、2009-1-5(包括首:2009-1-1和尾:2009-1-5)

2、2009-1-6(首尾日期中只包括任意一个)

3、2009-1-7(首尾日期都不包括)

.......................

所以:要事先给出统一的口径,要不这个相差5天会引起“歧义”的,呵呵



点燃一支烟 发表于:2009-06-19 20:47:16
这个问题若推而广之要写成个通用的函数(计算某日期N天后顺延的工作日,从这点看还真有点实际意义,呵呵)还真有点难度,尤其是处理农历的法定节假日(只是你这里把农历的法定节假日规定死了,降低了些难度而已),有兴趣的高手可以试试把它写成通用版(考虑种种可能,即带参数供选择)的函数,试试?呵呵,不知谁有现成的实例或曾经做过类似的尝试?

善裕 发表于:2009-06-19 23:19:19
你说的日期差数值的问题是我未说清,如差为5,那么我的意思是在原来的日期上加5天,如2009-01-01,加5天,为2009-01-06,
法定假日在实际应用中维护,不一定要换成农历,全部以我法定假日表为准,

点燃一支烟 发表于:2009-06-20 21:20:53

给你做了个示例,你自己测试一下,呵呵

点击下载此附件

点燃一支烟 发表于:2009-06-20 21:23:39
上传的示例中后面的模块全部是没有用的,只是上传的时候忘记了删除而已,呵呵,不好意思,怕误导读者,特此说明

善裕 发表于:2009-06-20 22:06:04

谢谢了,今天在外面学习,刚回来,看到你的回帖,我很高兴

问题一是,原思路想在原来日期一的基础上加10天,那天如果遇到了周六与周日或者法定假日才顺延的,你做的是这样的,如2009-04-21加10天,那么为2009-05-01,因为这天为法定假日,所以顺延,又因2009-05-02 2009-05-03 都为法定假日,所以顺延到2009-05-04,这过程虽然遇到了好几天周六与周日,但不用扣,因为只有遇到才顺延的.

例如我去办一工商执照.2009-04-21去的,工商要求10天来领证.正好是2009-05-01,五一放假3天,所以只有2009-05-04才可以去领证的.

又如,2009-04-15去办证,同样10天后领证,日期为2009-05-25,因为今天正好是周六,那么只好下周一才可以办的,只好顺延到2009-05-27.这是这个意思.

你的代码,我未全部看明白,但是我觉的日期差,10天之类的数字,会因政策的变动与改变,最好在代码定义中,用DLOOKUP 免的以后要一直改代码,

谢谢你呀,有空再帮我修改一下,我会认真学习的,



点燃一支烟 发表于:2009-06-20 22:52:39

遇到顺延的话,相应的改下代码可以做到的,至于日期差,可以在窗体专门建个供输入日期差的文本框,按钮响应该文本框的输入值(倒不要再dlookup了)



点燃一支烟 发表于:2009-06-20 23:04:14
呵呵,是我对你的那个日期差有理解上的歧义,我以为是10个工作日之后,呵呵,表上仅仅是个10?,开始本想让你再澄清一下的,我的理解:举例说:政府部门办事往往是"号称"在规定的"工作日"之内办完,比如:工商办执照说:在受理之日起15个工作日办结(那他们中间的双休日和节假日才不会给你办呢,你就老老实实等15个工作日吧,除非托关系找熟人或他们心情好提请给你办完,哈哈),所以,我就按工作日去考虑了,按天当然也可以的.

善裕 发表于:2009-06-21 07:07:22
请您告诉我,要排除法定假日,是怎么做的,你写的代码,如果应用到如上所说的顺延上,这种排除法定假日要如何做呢,

点燃一支烟 发表于:2009-06-21 09:18:20

其实判断条件在上个示例中已明确告诉你了啊?你相应的改改代码就能达到你的诉求的.那好吧,继续按你的意思给你示例一下,供参考

点击下载此附件

点燃一支烟 发表于:2009-06-21 09:24:21

早知道你是这么算的话,代码要简单的多,呵呵



善裕 发表于:2009-06-21 14:34:40
谢了

总记录:13篇  页次:1/1 9 1 :