日付の四半期を計算する関数、西暦での年度の表示も可能です。
VBEの標準モジュールに下のコードを登録して「Excelマクロ有効フォーム」で保存してください。
関数の登録方法は⇒♯000 ユーザー定義関数を登録する方法
登録されたら、シート上からユーザー関数「YQuarter 」が使用できます。
使い方は
ワークシート上で = YQuarter (日付,[年度の有無])の関数として使用できます。
※年度の有無、0は年度なし、1は年度あり
【例】
YQuarter(#2019/5/7#) → 第一四半期
YQuarter(#2020/3/7#,1) → 2020年度第一四半期
Function YQuarter(GDate As String, Optional N As Long) As Variant
’ 四半期を計算する関数、項目1に表示形式、0は年度なし、1は年度あり
’ YQuarter(日付,[年度表示])
’ 例1 YQuarter(#2019/5/7#) → 第一四半期
’ 例2 YQuarter(#2020/3/7#,1) → 2020年度第一四半期
Dim Y As Long
Dim M As Long
Dim S As Long
Dim SD(1 To 4, 0 To 1) As Variant
SD(1, 0) = “第1四半期”
SD(2, 0) = “第2四半期”
SD(3, 0) = “第3四半期”
SD(4, 0) = “第4四半期”
On Error GoTo EXITFEnd
If IsDate(GDate) = True Then
M = Month(GDate)
If M <= 3 Then
Y = Year(GDate)- 1
Else
Y = Year(GDate)
End If
If M <= 2 Then
S = 4
ElseIf M <= 5 Then
S = 1
ElseIf M <= 8 Then
S = 2
ElseIf M <= 11 Then
S = 3
ElseIf M <= 12 Then
S = 4
End If
If N = 0 Then
YQuarter = SD(S, 0)
ElseIf N = 1 Then
YQuarter = Y & “年度” & SD(S, 0)
End If
Else
YQuarter = GDate
End If
Exit Function
EXITFEnd:
End Function
ここで紹介したコード使用による損害に対しては一切責任は負えません。