対象:Excel97,Excel2000,Excel2002,Excel2003ユーザー定義書式を使って、日付を漢数字で表示する方法をご紹介しました。この中で「1989/1/8」を「[DBNum1]ggge"年"」と指定しても、「平成元年」となることはなく、「平成一年」にしかならないことを指摘しておいたのですが、どうしても「平成元年」と表示させたいのだがどうすればいいのか、というご質問をいただきました。[スポンサードリンク]条件によって表示を切り替えれば「平成元年」と表示できるはずですから、まずはIF関数で表示を切り替える方法を考えましょう。TEXT(A1,"m月d日"),TEXT(A1,"ggge年m月d日"))となります。IF関数の第1引数「TEXT(A1,"ge")="h1"」で、TEXT関数を使って書式設定をしてみて「平成1年」かどうかを調べています。TEXT関数は、ユーザー定義書式を設定するのと同じようなことをする関数で、第1引数で指定された値を第2引数で指定された表示形式に変換してくれます。ユーザー定義書式を設定するのと同じ書式記号を使って第2引数で「"ge"」とすれば「s64」「h1」というように元号のアルファベットと和暦にしてくれます。1989年でも、1月7日までは昭和64年で、1月8日以降が平成元年であるために、論理式が「YEAR(A1)=1989」ではまずいため、「TEXT(A1,"ge")="h1"」としているわけです。TEXT(A1,"m月d日")」、その他の年であれば単純に元号表示をさせていいのでIF関数の第3引数で「TEXT(A1,"ggge年m月d日")」と指定します。月日も漢数字を使って表示させるのであれば、TEXT関数の第2引数で「[DBNum1]」を使って以下のような指定をします。いった表示になります。IF関数で表示を切り替えるという考え方、ユーザー定義書式でも条件によって表示を切り替えられること、Excelで日付はシリアル値という数値であることがわかると、書式設定だけでも「平成元年」表示は可能となります。その方法は後日ご紹介します。関数を使って「平成1年」を「平成元年」と表示させる方法をご紹介しました。今回は書式設定で「平成元年」と表示させてみます。複数のセルに入力されているデータを連結して一つのセルに表示させる方法をご紹介しました。文字列同士をつなげるのならば問題ないのですが、例えば日付データと文字列を連結しようとするとちょっと問題が起きます。業務システムによっては、日付データを「yyyymmdd」といった形式のテキストデータとして保存していることは少なくありません。「2006年3月25日」ならば、「20060325」という文字列でデータ格納しておくという方法です。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。