ExcelのTEXT関数で日付データを漢字和暦形式で表示する方法
Excelでは、日付データをさまざまな形式でTEXT関数を用いて別のセルへ表示することが可能です。今回は、特に日本の和暦形式を取り上げ、日付データを漢字和暦形式で表示する方法について解説します。
基本的な和暦表示形式
和暦表示形式の基本的な使用方法についてまずは解説します。以下の式では、セルA2に入力された日付データを和暦形式で表示します。
=TEXT(A2,"[DBNum1]ggge""年""m""月""d""日""")
和暦表示の標準表示形式記号は「ggge”年”m”月”d”日”」です。これをTEXT関数の第二引数で指定する際には、「”」を二重の「””」の形式にする必要があります。またこの式では、「[DBNum1]」オプションを用いて年を漢数字で表示しており、例えば「令和一年九月四日」といった形式で日付が表示されます。確認する場合はセルA2へ「2019/9/4」を入力してからどこかのセルへ上記の計算式を入力してください。
「元年」を表示するための条件付き和暦表示形式
「元年」を特別に表示するための条件付き和暦表示形式について解説します。「元年表記のオプション」としては「[$-ja-JP-x-gannen]」が用意されていますが、漢数字オプションの「[DBNum1]」と併用ができません。そこで以下の式では、IF関数を用いて和暦部(e)が1である際に「元年」を表示する条件を追加しています。
=IF(TEXT(A2,"e")="1",TEXT(A2,"[DBNum1]ggg""元年""m""月""d""日"""),TEXT(A2,"[DBNum1]ggge""年""m""月""d""日"""))
この式では、和暦の年部分が「1」であるかどうかを確認し、「1」であれば「元年」として表示します。そうでない場合は、漢数字を用いて年を表示します。
LET関数を使用した効率的な解決法
上記の方法では、セルA2を何度も参照しています。これを改善するために、変数を登録できるLET関数を使用してセルA2を一度だけ参照することが可能です。以下の式がその例です。
=LET(date,A2,IF(TEXT(date,"e")="1",TEXT(date,"[DBNum1]ggg""元年""m""月""d""日"""),TEXT(date,"[DBNum1]ggge""年""m""月""d""日""")))
この式では、LET関数を使用してセルA2の値を変数「date」に割り当て、その変数を後続の計算で使用しています。これにより、A2セルへの参照が一度だけで済むようになります。ただしLET関数はExcel2019以前のバージョンには対応していませんので注意してください。
以上の方法で、日付データを漢字和暦形式で表示する方法を簡単かつ効率的に実現できます。日付データの表示に関してさらに詳しく知りたい場合は、Excelの公式ドキュメントや関連リソースを参照してください。
コメント