任意の日付から、法人の「上半期」or「下半期」なのかを算出したい場合があります。
判断する処理をパーツ化しています。
任意の日付から上期なのか下期なのかを求めるパーツ化コード
Public Function Get_1stHalf2ndHalf(sDate As Date, fiscalStartMonth As Long) As String Dim monthValue As Integer '■期首からの月数を計算する Dim tmp As Long tmp = (Month(sDate) - fiscalStartMonth + 12) Mod 12 '■上期か下期を判断する If tmp < 6 Then Get_1stHalf2ndHalf = "上期" Else Get_1stHalf2ndHalf = "下期" End If End Function
実際の使い方
Public Sub sample() '10月が期首の会社の場合、日付が上期なのか下期なのかを調べる Debug.Print Get_1stHalf2ndHalf("2023/10/01", 10) '上期 Debug.Print Get_1stHalf2ndHalf("2023/11/01", 10) '上期 Debug.Print Get_1stHalf2ndHalf("2023/12/01", 10) '上期 Debug.Print Get_1stHalf2ndHalf("2024/01/01", 10) '上期 Debug.Print Get_1stHalf2ndHalf("2024/02/01", 10) '上期 Debug.Print Get_1stHalf2ndHalf("2024/03/01", 10) '上期 Debug.Print Get_1stHalf2ndHalf("2024/04/01", 10) '下期 Debug.Print Get_1stHalf2ndHalf("2024/05/01", 10) '下期 Debug.Print Get_1stHalf2ndHalf("2024/06/01", 10) '下期 Debug.Print Get_1stHalf2ndHalf("2024/07/01", 10) '下期 Debug.Print Get_1stHalf2ndHalf("2024/08/01", 10) '下期 Debug.Print Get_1stHalf2ndHalf("2024/09/01", 10) '下期 End Sub
注意点
- 任意の日付から法人の「事業年度」(会計期間)を求める場合はこちら。
- 任意の日付から会社(法人)の「第〇期」を求める場合はこちら。
- 任意の日付からクォーターを求める場合はこちら。
- 一般的な年度「4月1日 ~ 翌年3月31日」を取得したい場合はこちら。
コメント