Excel中如何判断闰年?用VBA完成

如题所述

楼上的< MEIFEGHDPIG >,你算错了吧?
1900平年,2000闰年,自己检验一下
--------------
Sub at()
Dim y, s
y = Year(Now())
s = (y Mod 4 = 0 And y Mod 100 <> 0) Or y Mod 400 = 0 <> 0
MsgBox IIf(s, "闰年", "平年")
End Sub
----------------
A1写入日期(如,1900-1-1,或 2000-1-1),B1写入公式:
=IF(OR(AND(MOD(YEAR(A1),4)=0,MOD(YEAR(A1),100)<>0),MOD(YEAR(A1),400)=0),"闰年","平年")
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-24
把宽带猫的电源拔掉过一小会再插上
如果有路由器把路由器电源拔掉再接上
第2个回答  2012-05-24
Sub at()
年份 = Year(Now())
If (年份 Mod 4 = 0 Or 年份 Mod 400 = 0) And 年份 Mod 100 <> 0 Then
MsgBox "闰年"
Else
MsgBox "平年"
End If
End Sub追问

那用if函数怎么弄??

追答

=IF(AND(OR(MOD(YEAR(A1),4)=0,MOD(YEAR(A1),400)=0),MOD(YEAR(A1),100)0),"闰年","平年")

假设日期在A1

追问

如果我想一下判断出第一列中的8个年份是不是闰年,将结果写在第二列的对应位置,用VB要怎么写呢??

本回答被网友采纳
第3个回答  2013-04-09
发现一个更简单的方法:
if month(DateSerial(year, 2, 29))=2 then msgbox ("闰年")
相似回答