要望がありましたのでメモします。
結論:
=IF(A1-“2019/4/30″<=0,TEXT(A1,”ggge年m月d日”),IF(YEAR(A1)>2019,”令和”&YEAR(A1)-2018&”年”&MONTH(A1)&”月”&DAY(A1)&”日”,”令和元年”&MONTH(A1)&”年”&DAY(A1)&”日”))
A1となっているところを参照セルに置き換えてください。
動作:2019/4/30以前だと平成などの元号になります。2019/5/1~2019/12/31までは令和元年となります。それ以降は令和〇年となります。
関数で令和元年を表示する方法は、たくさんあると思います。
今回はできるだけ説明しやすいように作成してみました。
そのせいで些か長い式になりました。
まず、「2019/4/30までは和暦の表示形式にする」の部分が
=IF(A1-“2019/4/30″<=0,TEXT(A1,”ggge年m月d日”),
の部分ですね。日付があるであろう「A1」から「2019/4/30」を引いて、差が0日以下ならTEXT関数を使って和暦表示にしてください、としてあります。
次に「西暦年が2019年より上なら、令和〇年、それ以外なら令和元年とする」
,IF(YEAR(A1)>2019,”令和”&YEAR(A1)-2018&”年”&MONTH(A1)&”月”&DAY(A1)&”日”,”令和元年”&MONTH(A1)&”年”&DAY(A1)&”日”))
残りのこちらの部分ですね。
YEAR関数は日付から年だけを取得してきますので
YEAR(A1)>2019
とすることで2019年より上かどうかを判定してます。
次に文字列を結合する「&」を使用して
“令和”&YEAR(A1)-2018&”年”&MONTH(A1)&”月”&DAY(A1)&”日”,
の部分で
「令和」と「A1の西暦年から2018を引いた年」、「A1の月」「A1の日」
とすることで、「令和〇年〇月〇日」を表示させます。
残りは、「2019/5/1~2019/12/31」までの期間になるので
“令和元年”&MONTH(A1)&”年”&DAY(A1)&”日”))
として、「令和元年」と「A1の月」、「A1の日」と表示させてみました。
簡易解説は以上です。
[<=43585]ggge”年”m”月”d”日”;[<=43830]”令和元年”m”月”d”日”;
こちらをユーザー定義に貼り付けます。
動作:2019/4/30までは平成、2019/12/31までは令和元年と表示されます。年末までの暫定対応です。