自定義財年開始日期計算周次

'================================
    '   定義待測日期
'================================

 

  Dim dateTest As Date     '待測日期

  dateTest  = "10/9/2009"

 

'================================
    '   定義財年開始日期
'================================

 

  Dim dateFY As Date     '財年開始日期

  Dim iDay As Integer        'FY開始日

  Dim iMonth As Integer    'FY開始月

  Dim iYear As Integer       'FY開始年

 

  iDay = 1

  iMonth = 10

  iYear = DatePart("yyyy", dateTest ) '取待測日期年份作爲待考查的財年

  dateFY = iMonth & "/" & iDay & "/" & iYear
  If dateFY > dateTest  Then            '如果待測日期小於財年開始日期,則跳到上一財年
      dateFY = iMonth & "/" & iDay & "/" & (iYear - 1)
  End If

 

'================================
    '   計算日期間隔
'================================

 

  Dim iBuffer As Integer   'FY非一週第一天始的間隔
  Dim iDateRange As Integer  '日期與FY第一天的間隔

 

  iBuffer = DatePart("w", dateFY, vbSunday)    '以週日爲每週第一天
  iDateRange = Abs(dateTest  - dateFY) + iBuffer

 

'================================
    '   得到週數
'================================

 

  Dim iWeek As Integer   'FY中第幾周

  iWeek = -Int(-iDateRange / 7)   '相當於向上取整

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