Sub Meiji_Reiwa() Dim X_day As Date Dim I, Nen As Integer Dim Nengo As String For I = 2 To Cells(Rows.Count, "A").End(xlUp).Row 'A列の最終行取得(データ) X_day = Cells(I, "A") 'A列の日付をX_Dayに代入 Select Case X_day Case #1/25/1868# To #7/29/1912# Nengo = "明治" Case #7/30/1912# To #12/25/1926# Nengo = "大正" Case #12/26/1926# To #1/7/1989# Nengo = "昭和" Case #1/8/1989# To #4/30/2019# Nengo = "平成" Case #5/1/2019# To #1/1/2099# Nengo = "令和" End Select Cells(I, "B") = Nengo '年号を代入 Next I End Sub
Sub Ansei_Reiwa() Dim X_day As Date Dim I, L, Nen As Integer Dim Nengo As String For I = 2 To Cells(Rows.Count, "A").End(xlUp).Row 'A列の最終行取得(データ) X_day = Cells(I, "A") For L = 2 To Cells(Rows.Count, "E").End(xlUp).Row 'E列の最終行取得(年号データ) If X_day >= Cells(L, "F") And X_day <= Cells(L, "G") Then '該当する和暦の範囲を調べる Nen = Year(X_day) - Year(Cells(L, "F")) '和暦の年数計算 If Nen = 0 Then Nengo = Cells(L, "E") & "元年" & Month(X_day) & "月" & Day(X_day) & "日" '元年の場合 Else Nengo = Cells(L, "E") & Nen + 1 & "年" & Month(X_day) & "月" & Day(X_day) & "日" '元年以外 End If Cells(I, "B") = Nengo '和暦の日付で代入 Exit For End If Next L Next I End Sub