Vfp獲得:月天數.月初日期.月末日期及兩個日期之間天數.月數.年數

 Clear


ldDate=Date()
ldDateB={^2004/02/29}
ldDateE={^2005/02/28}
 

*--月天數
?"月天數",32-Day(ldDate-Day(ldDate)+32)
 

*--月初日期
?"月初日期",ldDate-Day(ldDate)+1
?"月初日期",
Date(Year(ldDate),Month(ldDate),1)
 

*--月末日期
?"月末日期",Gomonth(ldDate-Day(ldDate)+1,1)-1
?"月末日期",
Gomonth(ldDate,1)-Day(Gomonth(ldDate,1))
?"月末日期",ldDate-
Day(ldDate)+32-Day(ldDate-Day(ldDate)+32)
?"月末日期",
Date(Year(Gomonth(ldDate,1)),Month(Gomonth(ldDate,1)),1)-1
 

*--兩個日期之間天數(Max是防止ldDateE小於ldDateB)
?"兩個日期之間天數",Max(ldDateE-ldDateB,0)
 

*--兩個日期之間月數(Max是防止ldDateE小於ldDateB)
?"兩個日期之間月數",Max((Year(ldDateE)-Year(ldDateB))*12+Month(ldDateE)-(Month(ldDateB)+Iif((Day(ldDateE)<Day(ldDateB) And Day(ldDateE+1)>1),1,0)),0)
 

*--兩個日期之間年數,可以用於計算年齡(Max是防止ldDateE小於ldDateB)
?"兩個日期之間年數",Max(Year(ldDateE)-Year(ldDateB)-Iif(Gomonth(ldDateB,(Year(ldDateE)-Year(ldDateB))*12)>ldDateE,1,0),0)
?"兩個日期之間年數",
Max(Int(((Year(ldDateE)-Year(ldDateB))*12+Month(ldDateE)-(Month(ldDateB)+Iif((Day(ldDateE)<Day(ldDateB) And Day(ldDateE+1)>1),1,0)))/12),0)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章