设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[模块/函数] 【Access】判断是否为闰年

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2013-8-8 11:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
【Access】判断是否为闰年

         判断闰年向来是一个经典话题,主要是考究逻辑性。
         闰年分两种情况,一种是不能被100整除,能被4整除;
                                     一种是能被100整除的,要能被400整除。

         这样,一般要先判断能否被100整除,再根据判断结果进行下一步判断。
判断嵌套有点多。

         有没有简单的方法呢?
         答案是肯定的!能否被400整除也就是同时能否被100 和 4 整除。
那,我们可以先处理一下那个年份:先判断能否被100整除,能则除以100。
然后再判断能否被4整除即可。

          在窗体创建文本框txtYear 和按钮cmdYear。
方案一:
  1. Private Sub cmdYear_Click()
  2.     Dim yearNum As Integer      '定义变量
  3.     yearNum = CInt(Val(Nz(txtYear)))  '转换数据类型,(此处偷懒了)
  4.    
  5.      '先判断能否被100整除,能则处理一下。再判断能否被4整除
  6.     If IIf(yearNum Mod 100 = 0, yearNum / 100, yearNum) Mod 4 = 0 Then
  7.         MsgBox yearNum & "是闰年"
  8.     Else
  9.         MsgBox yearNum & "是平年"
  10.     End If
  11. End Sub
复制代码
方案二:
  1. Private Sub cmdYear_Click()
  2.     Dim yearNum As Integer      '定义变量
  3.     yearNum = CInt(Val(Nz(txtYear)))  '转换数据类型,(此处偷懒了)
  4.    
  5.      msgbox IIf(IIf(yearNum Mod 100 = 0, yearNum / 100, yearNum) Mod 4 = 0, yearNum & "是闰年", yearNum & "是平年")
  6. End Sub
复制代码
上面除了逻辑思维的应用之外,还使用了iif函数,这个函数是if结构的简化,有时有奇效作用哦

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2013-8-8 11:10:27 | 只看该作者
不错,学习一下
3#
发表于 2013-8-8 11:19:04 | 只看该作者
学习了!
回复

使用道具 举报

4#
发表于 2013-8-8 11:41:03 | 只看该作者
  1. iif(isdate("2/29/"&yearnum)),"闰年","平年")
复制代码

点击这里给我发消息

5#
 楼主| 发表于 2013-8-8 12:20:22 | 只看该作者
6#
发表于 2013-8-9 09:44:06 | 只看该作者
妙!赞一个。
回复

使用道具 举报

点击这里给我发消息

7#
 楼主| 发表于 2013-8-9 10:13:59 | 只看该作者

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

本版积分规则

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

GMT+8, 2024-11-29 23:40 , Processed in 0.089555 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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