見出し画像

[EXCEL] TEXT関数で年月日を「ggge年m月d日」と表示することに、何の意味があるのか?

関連記事:セルの書式設定

noteで「基本の関数」といった記事を散見します。
何が「基本」かは人によって違うと思いますので、そこはともかく、目が留まってしまうのが、以下のような例。

2025/10/17 と入っているセルを、
=TEXT(日付セル,"ggge年m月d日”)

令和7年10月17日
にできる、という類(たぐい)のもの。

大体の記事が「こう出来ます」で終わっています。
これ、何の意味があるのでしょうか?
私はそう思ってしまいます。

多分、エクセルを使う多くの方は「そうだよね」と思っていただけると思います。
あるいは「そんな面倒な方法、教えるなよ」と。

そう、こんな面倒な関数を使わなくても、
2025/10/17 は簡単に
令和7年10月17日
にできます。

そう、「セルの書式設定」で出来ます。
しかも、数式を打ち込むことなく、マウスだけで出来ます。
勿論、これ以外にも「ユーザー定義」で細かい設定ができます。

TEXT関数を使って表示する例を説明する記事を見ると、「この人、セルの書式設定で表示する方法、知らないのかな?」と思ってしまいます(当然、知っているんでしょうけど)。


似たようなものに、
=TEXT(日付セル,"aaa")
というものがあります。
日付を曜日で表示する、というものです。

これも「その関数に何の意味があるのか」と思ってしまいます。

わざわざTEXT関数を使わなくても、日付を曜日表示にできますから。

「セルの書式設定」の「ユーザー定義」で「aaa」と入れるだけ。
(aaa)なら曜日が ( )  に入ります。


私もTEXT関数は多用しています。
大変便利な関数で重宝しています。
でも、上のような説明では、EXCELに不慣れな人には、これを使わないとできない、と思わせてしまうとともに、TEXT関数を使うメリット・デメリットが伝わらないと思います。

EXCELは、色々なことができます。
ですが、ただ「出来る」だけを伝えても意味がありません。
「この方法は、こういう場面で使う意義がある(有効である)」ということを伝えないと、意味はない、と考えます。

そういう記事を見ると、「実務やっていないんかな」といつものセリフが口をついて出てきます。
失礼ながら、パソコン教室やSE系(特に基幹系)の方に多いのではないか、という偏見も持っています(特に前者)。
知識はあるけど実務を知らない、と。
「知っている」と「使える」は別だと。
もちろん、実務について深い経験を持っている方もいるでしょうし、パソコン教室やSE系の方皆が実務経験に乏しいと思ているわけでもありません。専門性が高い=知識が豊富だろうと思うがゆえに、思ってしまう感想です(期待の裏返しというか)。

note内(に限らずWEB上)にエクセルに関する様々な情報が増えていくのは望ましいことです。
色んな見方からの情報が載ることで、色んな立場の方にとって役に立つ可能性が広がりますから。


もちろん、何を載せるかは、その人の自由です。
でも、一般的な知識なら、先人たちによりネットに情報が溢れています(常に新しい方法も生まれていますが)。

私が知りたいのは、あなたはそれをどう使っているか?
実務でどう使えているのか?
実務でどう使って便利になるのか?

知識を実務でどう使っているか?
知識をどう咀嚼してどう活用しているか?
それを知りたいのです

単に「知識」を載せるではなく、その「知識」がどういう場面で役に立つか、も併せて載せてほしいと思っています。
でないと、「知識」と「実用」は繋がりません。
英単語や英文法をたくさん知っていても、英語で意思疎通できない、みたいな。

で、言いっぱなしではいけないので、以下は私なりの「実用」の「一例」です。


1 TEXT関数で日付を表示する意義


既述のとおり、日付は「セルの書式設定」で表示を自由に変えられます。
でも、それはあくまで「見た目」だけ。
データ自体は「数値(シリアル値/連番)」のままです。
日付(シリアル値)は、1900年1月1日を1として、1日ずつ増えていく数値。
「文字データ」としては扱えません。
具体的には、文章中に入れ込みたいとき。

例えば、以下。

「今日」の日付が R7/10/17として、
「今日は~です」と表示したいとき、
「="今日は"&B8&"です"」と
単に、この日付セルを挟み込んでも、日付では表示されません。
1900年1月1日から同日が「45947」日目であるという表示になってしまいます。

日付として表示する場合には、下のようにTEXT関数を使います。

="今日は"&TEXT(B8,"ggge年m月d日"&"です")

これで、日付として表示されます。
実際、こんな表示をすることは少ないでしょうけれど、
実務では
「令和7年10月17日付け第〇〇号通知に基づく・・・」みたいな定型文書を作ることはよくあります。
その際、エクセルの一覧表から単に日付データを持ってきただけでは、正しく表示されないため、TEXT関数を使う「意義」(必要)があります。
*いわゆる差し込み印刷です。これについてはいずれ詳しく。

なお、「お遊び」ですが、「今日~日です」位なら、TEXT関数を使わなくてもできます。実際はやらないけど(上の例とは月が変わってます)。

上記はあくまで例。お勧めしません。


2 TEXT関数で曜日を表示する意義

TEXT関数で日付を曜日のみで表示する場合、どんな「意義」があるでしょうか?

前述のとおり、日付データは、TEXT関数を使わなくても、曜日のみの表示が可能です。
ならば、TEXT関数を使う必要はないのでは?
そうでもあり、そうでもありません。
過去記事にもしていますが、以下の違いがあります。

[Excel]曜日は手入力しない。曜日を自動で表示する2つの方法。違いと使い分け

日付データを「セルの書式設定」で aaa 等とした場合
 ⇒ 日付(数値)データは保持される。数式に利用できる。

日付データをTEXT関数で曜日表示にした場合
  ⇒ 文字データ扱いとなる。数式で日付としては利用できない。

となります。
これだと、一見、後者は無意味、と思われるかもしれません。
しかし、後者も利用価値があります。
それは「曜日別集計」に使える、ということです。
施設の曜日別利用者数等を調べる場合、日付を曜日に直して、
=SUMIFS(人数列、曜日列、曜日)
みたいにすることで、曜日別の利用人数の合計が出せます(勿論、週で割れば平均も出せます)。
*TEXT関数を使わなくても曜日別集計はできますが(WEEKDAY関数)。


繰り返しになりますが、このように、単に「出来る」だけではなく、それを使う「意義」も併せて説明しないと、ミスリードしてしまう恐れがあるかと思います。

何を書くかはその人次第ではありますが、是非、「知識」を載せる方は、その「意義」も併せて説明いただければと思います。
それが、読者の理解に繋がり、結果、記事やサイトの評価にも繋がると思いますので。






いいなと思ったら応援しよう!