如果知道某年(Year)某月(Month),怎么得到这个月的最大天数?用函数实现。

解决方案 »

  1.   


    DateDiff("d", "已知年-某月-1", "已知年-某月+1-1") 某月<12或DateDiff("d", "已知年-(某月-1)-1", "已知年-某月-1") 某月>12说简单点就是比较两个月的1号之间的天数
      

  2.   

    例如 (不好意思,上面有点错误)
    求2003年3月和12月的最大天数Days3= DateDiff("d", "2003-3-1", "2003-4-1")Days12= DateDiff("d", "2003-12-1", "2004-1-1")如要判断某月是不是为 12月
      

  3.   

    Private Function getDay(ByVal y As Long, m As Long)
    getDay = DateSerial(y, m + 1, 1) - DateSerial(y, m, 1)
    End Function
      

  4.   

    取得已知月的最后一天:
     DateDiff("d",-1,DateSerial(y,M+1 ,1))
    y 为已知年
    m 为已知月
      

  5.   

    dim i as integer   '最大天数
    select case 月数
        case 1,3,5,7,8,10,12
            i = 31
        case 2
             '判断闰年
            if 年份 mod 4 > 0 then 
                i = 29
            else
                i = 28
            endif
        case else
            i = 30
    end select
      

  6.   

    if 年份 mod 4 > 0 then 
                i = 28
            else
                i = 29
            endif
    '写错了。纠正一下
      

  7.   

    dateSerial 根据年月日值返回日期
    debug.print dateSerial(2003,3,0) 返回2003年2月的最后一天 
    2003-2-28