目的別
日付の表示形式を変える
日付の表示形式を変えるとき、使える関数は複数あります。どれを選ぶかは、やりたいことの条件で決まります。
先に決めること。 計算に使い続けるか、表示だけか。ここが決まれば、関数は1つに絞れます。
記載内容は 2026年8月時点のものです。ExcelとGoogleスプレッドシートで使える関数が違う場合があります。

このページの中身(26項目)
場面別・使う関数の早見
TEXT を通すと文字列になり、日付として計算できなくなります。
表の使い方
左の列で自分のやりたいことを探し、右の関数の記事に進んでください。複数に当てはまる場合は、条件が多いほうを選んでください。条件が少ない関数で書くと、後から条件を足せません。
1. 書式を指定する
使うのは TEXT です。
書式を指定するなら、まずこれを検討してください。
つまずきやすいところ
範囲の行数が揃っているか、参照を固定したか。この2つで、結果がずれる原因の大半が説明できます。
この場面で確認すること
空欄と0を区別しているかを決めてください。表の意味が変わります。

2. 年を取り出す
使うのは YEAR です。
=YEAR(日付)
日付から年を取り出す関数です。年だけを取り出す場面で使います。
つまずきやすいところ
文字列の日付には使えません。日付として認識されているかを先に確認してください。
この場面で確認すること
空欄と0を区別しているかを決めてください。表の意味が変わります。
3. 月を取り出す
使うのは MONTH です。
=MONTH(日付)
日付から月を取り出す関数です。月だけを取り出す場面で使います。
つまずきやすいところ
月だけで集計すると、年をまたいだデータが混ざります。年と組み合わせてください。
この場面で確認すること
空欄と0を区別しているかを決めてください。表の意味が変わります。
4. 日を取り出す
使うのは DAY です。
=DAY(日付)
日付から日を取り出す関数です。日だけを取り出す場面で使います。
つまずきやすいところ
日だけでは月と年が分かりません。並べ替えの基準には使えません。
この場面で確認すること
空欄と0を区別しているかを決めてください。表の意味が変わります。
5. 曜日を出す
使うのは WEEKDAY です。
曜日を出すなら、まずこれを検討してください。
つまずきやすいところ
範囲の行数が揃っているか、参照を固定したか。この2つで、結果がずれる原因の大半が説明できます。
この場面で確認すること
空欄と0を区別しているかを決めてください。表の意味が変わります。
6. 文字列を日付に
使うのは DATEVALUE です。
=DATEVALUE(日付文字列)
文字列の日付を日付の数値に変換する関数です。文字列を日付にする場面で使います。
つまずきやすいところ
形式が認識されないと #VALUE! になります。区切り文字を揃えてから使ってください。
この場面で確認すること
空欄と0を区別しているかを決めてください。表の意味が変わります。
選び方の順番
計算に使い続けるか、表示だけか。この一点が決まらないまま関数を探すと、どれも当てはまるように見えて決まりません。
1. 出したい結果を一文で書く
「何を、どの条件で、どんな形で出したいか」。この一文が書ければ、関数はほぼ決まります。
2. 条件の数を数える
条件が1つか、複数か。ここで使える関数が分かれます。将来増える可能性があるなら、最初から複数条件に対応する形にしてください。
3. 返したい値の形を決める
1つの値か、複数行か。複数行を返す関数は、展開先を空けておく必要があります。
4. 共有先の環境を確認する
新しい関数は、古い環境で開くとエラーになります。社外に渡すファイルでは、この一点で選択肢が変わります。
5. 短く書けるほうを選ぶ
同じ結果になるなら、書く量が少ないほうを選んでください。後から読むときの負担が違います。
この記事で使っている言葉
解説で使う用語をまとめました。分からない語があればここを見てください。
引数
関数の括弧の中に渡す値のことです。TEXTでは =TEXT(...) の括弧内が引数にあたります。順番に意味があるため、位置を入れ替えると結果が変わります。
範囲
A2:A100 のように、複数のセルをまとめて指定したものです。行数が揃っていないと、複数の範囲を渡す関数では結果が狂います。
絶対参照と相対参照
$ を付けた $A$2 は絶対参照で、どこにコピーしてもずれません。A2 は相対参照で、コピーした方向に応じてずれます。この使い分けが、結果がずれる原因の大半を占めます。
配列
1つの数式が複数の値を返す形です。返した先のセルが埋まっていると展開できず、エラーになります。
揮発性
関係のない編集でも再計算される性質です。NOW TODAY INDIRECT OFFSET が該当します。多用するとファイル全体が重くなります。
値として貼り付ける
数式ではなく計算結果だけを残す操作です。参照元を消しても壊れなくなり、再計算の対象からも外れます。
作業列
途中の計算結果を置くための列です。長い数式を1つ書くより、短い数式を分けて置くほうが間違いを見つけやすくなります。完成後に非表示にすれば、見た目は変わりません。
TEXTの応用
少し複雑ですが、覚えておくと使える場面が広がります。
さらに複雑にする前に
入れ子が3段を超えたら、作業列に分けてください。1つの数式にまとめることに価値はありません。後から読める形のほうが、結果的に速く終わります。
応用が必要かどうかの判断
手作業のほうが早い規模なら、無理に数式化しないでください。
実際にあった相談と、その原因
同じ症状でも、原因はいくつかに分かれます。相談の形で並べます。
「昨日まで動いていた数式が壊れた」
参照先の表で、列が挿入されたか削除されたかのどちらかです。列番号を直書きした式は、参照先の列が増減した時点で別の意味になります。その場をしのぐなら番号を直し、根本から直すなら位置に依存しない形にします。
「合計が1円合わない」
丸めの位置が揃っていません。表示形式で小数を隠しても、値そのものは丸められません。行ごとに丸めるのか、合計してから丸めるのかで結果が変わります。各行で丸めるか、合計してから丸めるかで結果が変わります。
「一部の行だけ結果がおかしい」
その行のデータだけ型が違うか、余分な空白が入っています。=ISNUMBER(A2) と =LEN(A2) を隣に置いて、動いている行と比べてください。
「下にコピーすると値が変わる」
参照を固定していません。動いてはいけない範囲に $ を付けてください。上の数行は正しく動くため、気づくのが遅れます。
「共有したら相手の画面でエラーになる」
TEXTや組み合わせている関数が、相手の環境で使えません。#NAME? が出ている場合はこれです。対応範囲の広い書き方に変えるか、値として渡してください。
「重くて開けない」
列全体の指定と、揮発性の関数が原因のことがほとんどです。範囲を区切り、確定した期間は値に変換してください。
数式を使わないという選択
数式にこだわると、かえって手間が増えることがあります。
ピボットテーブルで足りる場合
集計の軸が決まっているなら、集計機能のほうが速く、保守も簡単です。数式で組む理由がないか、一度確認してください。
フィルタで足りる場合
一時的に絞り込んで見るだけなら、フィルタ機能で十分です。ただし共有中のファイルでは、他の人の表示にも影響します。そこが問題になる場合だけ、関数で抽出してください。
条件付き書式で足りる場合
色を付けたいだけなら、列を増やす必要はありません。ただし範囲が広いほど負荷になるため、必要な範囲に絞ってください。
入力規則で防げる場合
誤りを後から探すより、入力の段階で防ぐほうが手間がかかりません。選択肢を決められる項目は、プルダウンにしてください。
手作業のほうが早い場合
繰り返さない作業に式を組む必要はありません。繰り返す作業かどうかで判断してください。
それでも数式を使う理由
元データが更新される表では、数式が最も確実です。手作業は、更新のたびに同じ手間がかかり、抜けも起きます。
よく組む形をそのまま貼る
実際に使われる形を並べます。参照だけ自分の表に合わせてください。
空欄なら計算しない
=IF($A2="", "", TEXT(...))
未入力の行に0やエラーが並ぶのを防ぎます。集計表では必ず入れてください。
エラーを空欄にする
=IFERROR(TEXT(...), "")
配布用の表を整える段階で使います。原因を追っている間は外してください。
エラーに文言を出す
=IFERROR(TEXT(...), "要確認")
空欄より実務では役に立ちます。後からフィルタで抽出できるためです。
条件で使い分ける
=IF($B2="対象", TEXT(...), 0)
対象外の行を0にする形です。合計に含めたくない行がある場合に使います。
YEAR と組み合わせる
=YEAR(TEXT(...))
内側から評価されます。3段以上の入れ子になったら作業列に分けてください。
結果を丸める
=ROUND(TEXT(...), 0)
小数の誤差を残したまま集計すると、合計が1円ずれます。丸める位置を決めてください。
貼るときの注意
... には、上の実例のうち自分の表に近いものを入れてください。参照を固定するかどうかは、コピーする方向で決まります。下方向なら行、右方向なら列を固定するかを先に判断してください。
TEXTを身につける順序
実務で必要になる順に並べます。上から順に押さえてください。
まず、基本形1つだけ
=TEXT(...)
書式を指定する形です。まずこれだけを覚えてください。実務で使う場面の大半はこの形で足ります。
次に、参照の固定
下方向にコピーしたときに、動いてよい参照と動いてはいけない参照を区別します。ここを理解すると、コピーで結果が狂うことがなくなります。
次に、エラーの扱い
=IFERROR(TEXT(...),"") の形です。配布する表では必要になります。ただし原因を追う段階では外してください。
次に、組み合わせ
YEAR など、目的の近い関数と組み合わせる形です。ここまで来ると、たいていの要望に応えられます。
最後に、代替手段
TEXT以外の書き方も知っておくと、環境が変わったときに困りません。共有先で使えない関数があるとき、代わりの書き方を出せるようになります。
覚えなくてよいこと
すべての引数を暗記する必要はありません。書き始めれば候補が出ます。覚えるべきなのは、何ができる関数かという一点だけです。
TEXTと似た関数の違い
どれを使うか迷ったときの判断材料を並べます。
TEXT と YEAR
TEXTは日付の表示形式を変える関数です。YEARとは、扱えるデータの形か、返す値の種類が違います。
共有先の環境で使えるかどうかも判断材料になります。
TEXT と MONTH
TEXTは日付の表示形式を変える関数です。MONTHとは、扱えるデータの形か、返す値の種類が違います。
共有先の環境で使えるかどうかも判断材料になります。
TEXT と DAY
TEXTは日付の表示形式を変える関数です。DAYとは、扱えるデータの形か、返す値の種類が違います。
共有先の環境で使えるかどうかも判断材料になります。
判断の基準
- 出したい結果を一文で書く
- 条件の数を数える
- 返したい値が1つか複数かを決める
- 共有先の環境を確認する
- 短く書けるほうを選ぶ
この順で考えれば、関数は1つに絞れます。先に条件を決めないまま探すと、選択肢が絞れません。
数式の前に、データを整える
関数を疑う前に、元のデータを疑ってください。原因はほぼこちらにあります。
型を揃える
=ISNUMBER(A2)
数値として入っているかを判定します。見た目が数字でも文字列なら FALSE になります。システムから書き出したデータでは、これが原因のことが多くあります。
前後の空白を落とす
=TRIM(A2)
前後の空白と、語間の連続した空白を1つに詰めます。見た目では判別できないため、検索や集計が合わない原因になります。
全角と半角を揃える
=ASC(A2)
全角の英数字と記号を半角にします。逆方向は JIS です。手入力が混じる列では、この差が原因になりがちです。
改行を取り除く
=SUBSTITUTE(A2,CHAR(10),"")
セル内改行はコピー時に紛れ込みます。CHAR(10) が改行文字です。
文字数を比べて確認する
=LEN(A2)&" / "&LEN(B2)
見た目が同じなのに一致しないとき、まずこれを見ます。数が違えば、空白か不可視文字が入っています。
掃除は作業列にまとめる
数式の中に掃除を書き込むと、長くなって読めなくなります。掃除済みの値を作業列に出し、そこを参照する形にしてください。元データを直接書き換えないので、後から検証できます。
エラーが出たときの読み方
エラーの記号は、原因の分類そのものです。TEXTで出やすいものを含めて整理します。
| 記号 | 意味 | 最初に見るところ |
|---|---|---|
#N/A | 検索した値が見つからない | 検索値の前後の空白、全角と半角、数値と文字列の違いを確認してください |
#REF! | 参照先が消えている | 参照していた行や列を削除していないかを確認してください |
#VALUE! | 引数の型が合っていない | 数値を渡すべきところに文字列が入っていないかを確認してください |
#DIV/0! | 0で割っている | 割る側が0または空欄になっていないかを確認してください |
#NAME? | 関数名が認識されていない | 綴りの誤りか、その環境で使えない関数かを確認してください |
#NUM! | 数値として扱えない | 指定した順位や桁数が範囲を超えていないかを確認してください |
#N/A が出た場合
検索した値が見つからない状態です。検索値の前後の空白、全角と半角、数値と文字列の違いを確認してください。
数式の書き方より、渡しているデータを先に疑ってください。
#REF! が出た場合
参照先が消えている状態です。参照していた行や列を削除していないかを確認してください。
数式の書き方より、渡しているデータを先に疑ってください。
#VALUE! が出た場合
引数の型が合っていない状態です。数値を渡すべきところに文字列が入っていないかを確認してください。
数式の書き方より、渡しているデータを先に疑ってください。
#DIV/0! が出た場合
0で割っている状態です。割る側が0または空欄になっていないかを確認してください。
数式の書き方より、渡しているデータを先に疑ってください。
エラーを隠すべきかどうか
IFERROR で包めば表示は消えますが、原因も見えなくなります。原因を追っている段階では外してください。配布用の表に仕上げる段階になってから包むのが正しい順序です。
ExcelとGoogleスプレッドシートの違い
同じ名前の関数でも、環境によって細かい違いがあります。
使える関数が違う
FILTER UNIQUE SORT などは、Excelでは比較的新しい機能です。古い環境で開くと #NAME? になります。社外に渡すファイルでは、この点だけで使う関数が変わります。
配列の扱いが違う
スプレッドシートでは ARRAYFORMULA を使って一気に展開するのが定石です。Excelでは自動的に広がる仕様になっています。同じ結果を出す書き方が違うため、そのまま移すと動きません。
引数の区切りが違うことがある
地域設定によっては、引数の区切りがセミコロンになります。コピーした数式が動かない場合、ここを疑ってください。
日付の基準が違う
日付を数値で持つ点は共通ですが、起点の日が違う設定が存在します。ファイルをまたいで日付を計算するときは注意してください。
どちらで作るか
共有先が決まっていないなら、対応範囲の広い書き方を選んでください。後から書き換えるより、最初から限定するほうが手戻りが少なくなります。
数が増えて重くなったとき
行数が増えたときに効く対策を、効果の順に並べます。
範囲を列全体で指定しない
A:A は書くのが楽ですが、空行まで対象に含めます。$A$2:$A$5000 のように行を区切ってください。行数が多いほど差が出ます。
同じ計算を繰り返さない
同じ引数でTEXTを何度も書いているなら、作業列に一度だけ出して、他はその列を参照させてください。
揮発性の関数を減らす
無関係なセルを触っただけで再計算が走る関数があります。NOW TODAY INDIRECT OFFSET です。多用すると、ファイル全体が重くなります。
確定した部分は値にする
締めた期間の集計は、値貼り付けにしてください。数式が残っている限り、再計算の対象になり続けます。
条件付き書式を減らす
数式を使った条件付き書式は、範囲が広いほど負荷になります。必要な範囲だけに絞ってください。
引き継ぐときに書いておくこと
数式は動いていても、意図は残りません。渡す前に、次の点をシート内にメモしてください。3分で終わります。
何を出している数式か
TEXTで日付の表示形式を変えるという意図を、一行で書いてください。読めば分かると思っても、数か月後の自分には分かりません。
どの表を参照しているか
参照先のシート名と、その表の更新担当。参照先が別ファイルなら、その場所も書いてください。
該当しないときの扱い
該当なしをどう表示しているか。書いていないと、受け取った側は空欄をデータなしと読みます。
触ってはいけない場所
範囲の行数が揃っているか、参照を固定したかで結果が変わります。この点を書いておかないと、引き継いだ人が同じところでつまずきます。
使った関数の対応環境
新しい関数を使っている場合、古い環境では開けません。共有の範囲が広がる可能性があるなら、必ず明記してください。
よくある間違い
TEXTで起きやすい間違いを、原因ごとに整理します。
参照を固定していない
下方向にコピーしたときに、動いてはいけない範囲までずれます。上の数行は正しく動くため、気づくのが遅れます。表の最終行まで確認してください。
型が揃っていない
画面上は同じに見えても、数値と文字列は一致しません。=ISNUMBER(A2) で確認できます。システムから書き出したデータでは、これが原因のことが多くあります。
空欄と0を区別していない
空欄が未入力を意味するのか0を意味するのかで、表の読み方が変わります。どちらとして扱うかを決めてから数式を書いてください。
範囲の行数が揃っていない
複数の範囲を渡す関数では、行数がずれると結果が狂います。エラーにならず値が返るため、気づきにくい種類の間違いです。
結果を検算していない
範囲の行数が揃っているか、参照を固定したかで結果が変わります。別の方法で同じ数字を出して、突き合わせてください。
数式が長くなりすぎている
入れ子が3段を超えると、書いた本人でも読めなくなります。作業列に分けてください。完成後に非表示にすれば見た目は変わりません。
書いたあとの確認
TEXTを新しく書いたら、次を順に確認してください。数分で終わります。
参照を固定したか
下方向にコピーする数式では、動いてはいけない参照を固定したかを確認します。上の数行だけ見て判断しないでください。範囲のずれは下のほうで表面化します。
一番下の行まで正しいか
最終行までスクロールして、結果を確認してください。途中から値が変わっていないかを見ます。
別の方法で検算したか
同じ数字を別の関数でも出して、突き合わせてください。TEXTの結果だけを見ても、正しいかどうかは判断できません。
空欄とゼロを区別したか
空欄が未入力を意味するのか0を意味するのかで、表の読み方が変わります。どちらとして扱うかを決めてから書いてください。
エラーの扱いを決めたか
隠すのか、残すのか。用途に合っているかを確認してください。
他の人が読めるか
入れ子が3段を超えていないか。超えているなら、作業列に分けることを検討してください。
数式の読み解き方
数式は書くより読むほうが難しくなります。順番を決めて追ってください。
内側から読む
入れ子になった数式は、いちばん内側の括弧から評価されます。外側から読もうとすると、途中で分からなくなります。
引数の区切りで分ける
カンマで区切られた単位が引数です。括弧の対応を見ながら、どこまでが1つの引数かを確認してください。
一部だけを別セルで試す
長い数式の一部を切り出して、別のセルに貼って結果を見てください。どこまでが正しく動いているかが分かります。
この記事の例で確認する
=TEXT(...)
書式を指定する形です。内側から順に、何が返っているかを確認してください。一度分解して読めば、似た形の数式はすべて読めるようになります。
分からない部分は残しておく
全部を理解してから触ろうとすると、いつまでも進みません。変える必要のある部分だけを特定して、そこだけ直してください。触っていない部分は、動いている限り放っておいて構いません。
実務で使う場面
TEXTを使う場面は限られています。代表的なものを挙げます。
集計表を作るとき
元データから数字を出す段階で使います。書式を指定するのが典型的な形です。この段階で型を揃えておかないと、後の集計が全部ずれます。
他人に渡す表を整えるとき
見た目を整える段階です。桁や表記を揃えると、読み手が数字を比較できるようになります。渡す前に、意図しない値が混ざっていないかを確認してください。
元データを掃除するとき
システムから書き出したデータには、余分な空白や型のずれが混ざります。掃除済みの値を1列作って、そこを参照する形にすると後が楽になります。
定期的に更新する表を作るとき
同じ処理が毎月あるなら、日付の表示形式を変えるで組んでおくと手作業が消えます。手作業を残すと、そこが毎回の負担になります。
数字が合わない原因を探すとき
検算に使えます。TEXTで出した値と、別の方法で出した値を突き合わせると、どこでずれているかが分かります。
TEXTについてよくある質問
Q. TEXTが使えません
その環境で対応していない可能性があります。#NAME? が出ている場合は、綴りの誤りか、環境が未対応かのどちらかです。
Q. 結果が0になります
参照先が空欄か、数値として認識されていない可能性があります。ISNUMBER で型を確認してください。
Q. 下にコピーすると結果が変わります
参照を固定していません。動いてはいけない部分に $ を付けてください。
Q. エラーを消したいのですが
=IFERROR(TEXT(...),"") で包めます。ただし原因を追っている段階では外してください。
Q. TEXTとYEARはどちらを使うべきですか
やりたいことで決まります。出したい結果を一文で書いてから選んでください。
Q. Excelでも同じように使えますか
関数自体は使えますが、組み合わせる関数に差があります。共有先の環境を先に確認してください。
Q. 重くて開けません
列全体の指定をやめ、確定した期間は値に変換してください。この2つで大半が改善します。
Q. 引数を省略できますか
省略できる引数と、できない引数があります。省略すると既定の動作になり、意図と違う結果になることがあります。
Q. 計算結果を固定したいのですが
値として貼り付けてください。参照元を消しても壊れなくなります。
Q. 他の関数も見たいのですが
→ 全関数の一覧 から探せます。
この分野の他の記事
同じ「目的別」の記事です。目的が近いので、こちらで解決しない場合はこちらも見てください。