「円」や「個」などの単位を数字と一緒に表示させたい

解説記事内の画像はExcel 2016のものですが、操作方法は下記のバージョンで同じです。
  • Excel 2016, 2013, 2010
Excel 2016・2013・2010用 練習ファイル
(custom-number-format-number.xlsx 9.51KB)

ユーザー定義の表示形式(数値編)01 選択したセルの中身は数式バーに映し出されるので、上の図のD4番地を選択して数式バーを見ると、このD4番地には「単価×数量」の数式が入っていることが分かります。

ユーザー定義の表示形式(数値編)02 ここでB4番地に注目してみます。
B4番地には、単価の数字が入力されています。
そして、先ほど確認したD4番地には、「単価×数量」の計算結果がちゃんと表示されています。

ユーザー定義の表示形式(数値編)03 ところが、「単価」のB4番地に、数字だけでなく、その数字の単位「円」という文字も一緒に入力し、セルの中で文字カーソルが点滅しなくなるまで[Enter]キーでセルを確定すると、

ユーザー定義の表示形式(数値編)04 たちまち、「単価×数量」の数式が入ったD4番地に、エラーが出てしまいました!
(練習ファイルを操作しながらご覧いただいている方は、この先の操作のために[元に戻す]ボタンで、「9720」と数字しか入力されていない状態まで戻しておいてください。)

Excelさんは、セルに入力されたデータが「数値」なのか「文字」なのか、はたまた「日付」や「時間」なのかを自動で判断してくれます。
人間は、B4番地が「単価」の欄であるという、表そのものの「意味」が理解できるので、「9720」と入力されていようが「9720円」と入力されていようが、同じ意味だと理解できますが、Excelさんにそんな意味は理解できません。
だって機械ですもの。

なので、Excelさんは機械的に振り分けるようにして、データの種類を判断します。
1つのセルの中に数字だけを入力している場合には、当然「数値」と判断してくれますが、1つのセルの中に数字と文字を一緒に入力した場合には「文字」と判断します。

「あいうえお」×「かきくけこ」といった「文字」の計算があり得ないのと一緒で、「文字」が入った掛け算はできないよと、計算結果にエラーが出てしまったのです。

でも、やっぱり人間は欲張り。
1つのセルの中に数字も文字も表示させたい。そして計算もうまくいくようにしたい!

そこで登場するのが、今回ご紹介する「ユーザー定義の表示形式」。
数字の計算が成り立つよう、実際のセルの中には数字しか入力していないけれど、あたかも、文字も一緒だよと、見せかける技です!
今回の内容は、下記のページをご覧いただいていることを前提として進めていきますので、まだの方は先に下記のページをご覧ください。

スポンサーリンク

数値をあらわす「#」

それでは早速、実際のセルの中には「9720」のような数字しか入力していないけれど、「9720円」のように表面的に文字も一緒だと見せかけるように設定していきましょう!

ユーザー定義の表示形式(数値編)05 まずは、表面的に文字も一緒だと見せかけたいセルを範囲選択します。
今回は「単価」の欄に設定したいので、B4からD4番地を範囲選択します。

ユーザー定義の表示形式(数値編)06 範囲選択したセルのところだったらどこでもいいので右クリック、

ユーザー定義の表示形式(数値編)07 [セルの書式設定]をクリックすると、

ユーザー定義の表示形式(数値編)08 [セルの書式設定]ダイアログボックスが表示されます。
「見せかける」設定をするのが、このダイアログボックスの[表示形式]タブ。
今回は「見せかけ」の設定を自分で作りたいので、左側の[分類]から[ユーザー定義]を選択します。
すると、その右側に、現在、範囲選択しているセルに設定されている表示形式を、記号で表したものが[種類]欄に表示され、更にそれと全く同じものがこの欄の一番上にも映し出されています。
練習ファイルを操作しながらご覧いただいている方は、ここに「G/標準」と表示されていますが、これは[標準]の表示形式をユーザー定義の記号で表したものです。

ユーザー定義の表示形式(数値編)09 この[種類]の一番上の欄は、現在の設定を映し出している場所ですが、編集も加えられるようになっているので、今回はこの欄の文字をすべて消してしまいます。

ユーザー定義の表示形式(数値編)10 すべて消すことができました!
ここから、設定したい表示形式の記号を、自分で入力していきます!

ユーザー定義の表示形式(数値編)11 まずは「#」を半角で入力します。
ユーザー定義で使う記号は、半角がお約束です。
この「#」は、数値の1桁を表します。
「#」を1つ、つまり1桁分しか指定していないので、十の位や千の位など、1桁より大きい数字は表示できないんではないかと心配したくなりますが、桁が増えても自動的に表示してくれるので問題ありません。
[サンプル]欄には、現在範囲選択しているセルの先頭のセル、B4番地のデータが表示され、この設定をするとこうなるよと、サンプルとして表示されています。
#」という設定は、「数値を1桁表示してください(それ以上の桁がある場合には自動的に桁を増やして表示してください)」という意味なので、サンプルを見ると、そのセルに入力されている数字が、そのまま表示されることが分かります。

ユーザー定義の表示形式(数値編)12 続いて、その後ろに「円」を入力し、「#円」とします。
サンプルを見ると、セルに入力されている数字の後ろに「円」という文字が表示されることが分かります!

ユーザー定義の表示形式(数値編)13 そして最後に忘れてはならないのがコレ!
ユーザー定義の表示形式の設定では、「そのまま表示したい文字の前後をダブルクォーテーションで囲む」というのがお約束なんです!
今回の設定では、「円」という漢字をそのまま表示したいので、図のように「円」の前後をダブルクォーテーションで囲みます。
ユーザー定義で使う記号は半角がお約束なので、もちろん、ダブルクォーテーションも半角で入力します。

正直に告白してしまうと、このダブルクォーテーションの入力を忘れてしまっても、ダイアログボックスの[OK]ボタンを押した時点で、Excelさんが気を利かせてダブルクォーテーションを自動的に入力してくれます。
でも、その気の利かせ方は万能ではなく、中には自動的に付かずにエラーメッセージが出てしまう場合も。
エラーメッセージが出ると、適切なダブルクォーテーションを設定するまでいつまで経っても設定を完了できないので、「そのまま表示したい文字の前後をダブルクォーテーションで囲む」ということは必ず覚えておいてください。
それでは、ダイアログボックス右下の[OK]ボタンを押してみましょう!

ユーザー定義の表示形式(数値編)14#"円"」という設定は、「数値を1桁表示し(それ以上の桁がある場合には自動的に桁を増やして表示し)、その後ろに「円」という文字をそのまま表示してください」という意味なので、ちゃんとそのように表示されました!

スポンサーリンク

「#」の意味をもっと理解する

ユーザー定義の表示形式(数値編)15 今回の設定は、本当はセルの中に数字しか入力していないけど、見かけ上「円」という文字も一緒に表示される、という設定です。
なので、この設定をしたB4番地を選択して数式バーを見ると、そのセルの中身が映し出されるわけですが、このセルには、数字だけしか入っていないことが確認できますね。
表面的に文字も一緒だと見せかけている」というイメージ、OKでしょうか?

ユーザー定義の表示形式(数値編)16 さて、ここで1つ問題が生じます。
それがB8番地。
なんと、「円」という文字だけしか見えないではないですか!数字はどこへ行った!
ここでB8番地を選択して数式バーを見ると、このセルにはゼロが入力されていることが分かります。

実は今回使った「#」、数字の1桁を表すことに間違いはないのですが、「ゼロの時に、そのゼロを表示しない」という特性の持ち主。
B8番地に入力されている数字はゼロなので、設定した表示形式どおり、そのゼロが見えなくなってしまい、「円」という文字だけが見えているわけです。
今回の表のような場合、ゼロの時には、やはりそのゼロは見えていた方が分かりやすいので、そうなるように設定を変更していきましょう!

ユーザー定義の表示形式(数値編)17 設定を変更したいセルを範囲選択します。
この時、ゼロが入力されているB8番地だけを選択すればいいのではないかと思った方もいらっしゃるかもですが、他の「単位」欄のセルも、いつゼロが入力されてもいいよう、同じ設定をしておきたいので、B4からB8番地を範囲選択します。
選択したセルのところだったらどこでもいいので右クリック、

ユーザー定義の表示形式(数値編)07 [セルの書式設定]をクリックすると、

ユーザー定義の表示形式(数値編)18 [セルの書式設定]ダイアログボックスが表示されます。
先ほど同様、自分で表示形式を作っていくので、[表示形式]タブにある[分類]で、[ユーザー定義]が選択されていることを確認します。
そして、その右側にある[種類]欄には、現在、範囲選択しているセルに設定されている表示形式を、記号で表したものが表示され、更にそれと全く同じものが、この欄の一番上にも映し出されています。

ユーザー定義の表示形式(数値編)19 この[種類]の一番上の欄で、表示形式の編集ができたので、「#"円"」を「0"円"」のように、「#」の部分を「0(ゼロ)」に修正します。
もちろん、ユーザー定義の記号は半角で入力するのがお約束なので、「0(ゼロ)」も半角で入力します。
実はこの「0(ゼロ)」、「#」同様、数値の1桁を表し、これまた「#」同様、「0」を1つしか指定していなくても、十の位や千の位など、1桁より大きい数字の時は、自動的に桁を増やして表示してくれます。
ですが、「#」と違い、「ゼロの時には、そのゼロを表示する」という特性を持っています。
サンプルでは「#"円"」の時と同じように見えますが、ダイアログボックス右下の[OK]ボタンを押してみましょう!

ユーザー定義の表示形式(数値編)200"円"」という設定は、「数値を1桁表示し(それ以上の桁がある場合には自動的に桁を増やして表示し)、その後ろに「円」という文字をそのまま表示してください」という意味なので、ちゃんとそのように表示されています!

ユーザー定義の表示形式(数値編)21 しかも、「0"円"」という風に「#」ではなく「0」を使って設定したので、ゼロが入力されているセルでは、そのゼロもちゃんと表示されています!

スポンサーリンク

3桁区切りのカンマがほしい!

ユーザー定義の表示形式(数値編)22 ここまででゼロの問題を解決したものの、もうひと越えほしいんですよね〜。
数字が読みにくいので、3桁区切りのカンマ(千の位のカンマ)がほしい!
というわけで、更に設定の変更を加えていきましょう!

ユーザー定義の表示形式(数値編)23 設定を変更したいセルを範囲選択し、選択したセルのところだったらどこでもいいので右クリック、[セルの書式設定]をクリックします。

ユーザー定義の表示形式(数値編)24 先ほど同様、[表示形式]タブにある[分類]で、[ユーザー定義]が選択されていることを確認します。
そして、その右側にある[種類]欄に、現在、範囲選択しているセルに設定されている表示形式が表示され、更にそれと全く同じものがこの欄の一番上にも映し出されていることも確認します。

ユーザー定義の表示形式(数値編)25 この[種類]の一番上の欄で、表示形式の編集ができるわけですが、今回は練習も兼ねて設定をイチから入力したいので、この欄の文字をすべて消してしまいます。

ユーザー定義の表示形式(数値編)27 それでは、どんな表示形式の記号にするか、考えていきましょう。
まず、ゼロの時にそのゼロが表示されるようにしたいので、「#」ではなく「0」を使うことにしてみましょう。
更に桁数についても考えていきます。
先程までは「0"円"」という風に数字を1桁分しか設定しませんでした。
別に1桁分しか設定しなくても、桁が増えれば自動的に表示されていたわけですが、3桁区切りのカンマを表示させるために、千の位まで桁を設定し、忘れずに当初の目的の、3桁区切りのカンマも入力します。
というわけで、表示形式の記号は「0,000」とします。
これまた、カンマも半角で入力します。
もちろん、「0」を1桁分しか設定していなかった時と同様、万の位や百万の位など、設定した桁よりも大きい数字の時は、自動的に桁を増やして表示してくれるので、千の位までの桁の設定で大丈夫。

ユーザー定義の表示形式(数値編)26 サンプルを見ると、ちゃんと3桁区切りのカンマが表示されることを確認できます。

ユーザー定義の表示形式(数値編)28 続いて、その後ろに「円」を入力し、「0,000円」とします。
サンプルを見ると、セルに入力されている数字の後ろに「円」という文字が表示されることが分かります。

ユーザー定義の表示形式(数値編)29 そして、ユーザー定義の表示形式の設定では、「そのまま表示したい文字の前後をダブルクォーテーションで囲む」というのがお約束でしたから、「円」というそのまま表示したい漢字の前後をダブルクォーテーションで囲みます。
もちろん、ダブルクォーテーションは半角で入力します。
ここで、「3桁区切りのカンマも、そのまま表示させたい文字なのだから、ダブルクォーテーションで囲む必要があるのではないか?」と考えるのが自然だと思うのですが、3桁区切りのカンマは、ダブルクォーテーションで囲まなくてもそのまま表示される特別な記号なので、ダブルクォーテーションで囲む必要はありません。
それでは、ダイアログボックス右下の[OK]ボタンを押してみましょう!

ユーザー定義の表示形式(数値編)300,000"円"」という設定は、「数値を3桁区切りのカンマ付きで、千の位の桁まで表示し(それ以上の桁がある場合には自動的に桁を増やして表示し)、その後ろに「円」という文字をそのまま表示してください」という意味なので、そのように表示されました!
が、しか〜し!
千の位に到達しているものは「9,720円」のようにうまく表示されていますが、千の位に到達していない「5円」などは、「0,005円」のように表示されてしまっています!

ユーザー定義の表示形式(数値編)46 もうお気づきですね?
表示形式の記号である「0」は、ゼロの時にそのゼロを表示するものでした。
なので、「0,000"円"」と指定したので、十の位、百の位、千の位に到達していない、1桁の数字も、「5円」ではなく「0,005円」という風に表示されてしまったわけです。

ユーザー定義の表示形式(数値編)47 そこでもう一つの数字を表す記号、ゼロの時にそのゼロを表示しない#」の出番です!
十の位、百の位、千の位に到達していない、1桁の数字の時のために、十の位、百の位、千の位は「#」を設定します。
でも、一の位は、ゼロの時にゼロが表示されるようにするために、「0」を使い、「#,##0"円"」のように、設定を変更してみることにしましょう。

ユーザー定義の表示形式(数値編)31 設定を変更したいB4からB8番地を範囲選択し、[セルの書式設定]ダイアログボックスを表示させます。
(この操作が分からない方は、これ以上先に進むのは危険です!このページの内容を、もう一度最初からお読みいただくことを強くおすすめします。)
[表示形式]タブの[ユーザー定義]が選択されていることを確認し、表示形式の記号を「#,##0"円"」のように編集し、[OK]ボタンをクリックします。

ユーザー定義の表示形式(数値編)33 千の位まで到達している数字には3桁区切りのカンマが表示され、千の位に到達していない数字も、先ほどのような不自然なゼロの表示から脱出することができました!
もちろん、当初の目的である「円」という文字も、数字の後ろに表示されています!

スポンサーリンク

「#,##0」は丸暗記すべきなのか?

ユーザー定義の表示形式(数値編)34 今度は「数量」の欄で、「1個」や「4個」のように、数字の後ろに「個」という文字が一緒だと見せかける設定をしていきましょう!
「数量」の欄であるC4からC8番地を範囲選択し、[セルの書式設定]ダイアログボックスを表示させます。

ユーザー定義の表示形式(数値編)35 [表示形式]タブの[ユーザー定義]を選択し、[種類]の一番上の欄に、表示形式の記号を入力します。
(この欄に最初に入力されているものは、現在の設定なので、消してしまって構いません。)
先ほどと同じ理屈で行くと、「円」が「個」になるだけなので、「#,##0"個"」となります。
もちろんこれで大正解なのですが、もし、「俺の会社では「数量」に、千の位に到達するような数字は入力しないんだよね」というのであれば、わざわざ3桁区切りのカンマを設定する「#,##0"個"」と設定しなくてもいいんじゃないかと、私個人は考えております。
0"個"」と、「0」を1桁分しか設定していなくても、十の位や百の位に到達した数字の時には、自動的に桁を増やして表示してくれますし。
もちろん、「0"個"」ではなく、「#"個"」としないのは、ゼロが入力されている場合に、そのゼロをちゃんと表示させるため。
これはこのページの最初の段階でご説明した通りです。
[OK]ボタンをクリックします。

ユーザー定義の表示形式(数値編)34 お次は、「単価×数量」の数式が入力されている「金額」の欄。
ここは「単価」の欄同様、数字に3桁区切りのカンマが表示されるようにし、なおかつ「円」という文字も一緒に表示されるように設定していきましょう。

ユーザー定義の表示形式(数値編)37 この設定の際、「#,##0"円"」と、先程までのように[ユーザー定義]の[種類]の一番上の欄で、自分で表示形式の記号を入力するのはもちろん大正解です。
更にもう一つの方法として、この文書内では既に「単価」の時に同じ表示形式の記号を設定しているので、[ユーザー定義]の[種類]の一覧から選ぶこともできるようになっています。
同じ文書内で、既に設定されているものと同じ設定にしたい時だからこそできる技です。
[OK]ボタンをクリックします。

ユーザー定義の表示形式(数値編)37 「単価」と「金額」欄に設定した「#,##0"円"」は、「数値が千の位まで到達しているなら3桁区切りのカンマ付きで表示し(それ以上の桁がある場合には自動的に桁を増やして表示し)、その後ろに「円」という文字をそのまま表示してください」という意味なので、そのように表示されました!
一の位は「#」ではなく「0」を使っているので、B8番地やD8番地のような、セル内の数字や計算結果がゼロの時にも、そのゼロがちゃんと表示されています。
また、「個数」欄に設定した表示形式「0"個"」は、「数値を1桁表示し(それ以上の桁がある場合には自動的に桁を増やして表示し)、その後ろに「個」という文字をそのまま表示してください」という意味になるので、ちゃんとそのように表示されています!

今回の例では、「単価」欄と「金額」欄のセルには、既に千の位に到達している数字が入力してあるので、表示形式でも3桁区切りのカンマを設定しましたが、「数量」欄では、「俺の会社では「数量」に、千の位に到達するような数字は入力しないんだよね」という仮定のもと、3桁区切りのカンマを設定しませんでした。
もちろん「俺の会社では「数量」も千の位に到達するよ」というのであれば、「#,##0"個"」と、3桁区切りのカンマが表示されるように設定します。

中には、「だったら「#,##0」はよく使いそうだから、特に意味も覚えず、丸暗記してしまえばそれでよくね?」と思う方もいらっしゃるかもしれませんが、Be Cool Usersでは、ただの丸暗記はおすすめしません。
表示形式の記号である「#」と「0」にはちゃんとした違いがあるので、このページでご説明したそれぞれの記号の意味と、「#,##0」とした経緯を頭に入れることで、応用がきくようになるからです。

スポンサーリンク

「見せかけている」からこそ

ユーザー定義の表示形式(数値編)39 今回の「キモ」は、「実際のセルの中には数字しか入力していないけれど表面的に文字も一緒だと見せかけている」ということです。
試しに、B5番地を選択して数式バーを見ると、そのセルの中身が映し出され、B5番地には数字しか入力されていないことが分かります。
3桁区切りのカンマも、「円」なんて文字も、実際のデータとしては入力されていないわけです。

ユーザー定義の表示形式(数値編)40 ということは、データを修正したい時も、当然、3桁区切りのカンマや「円」なんて文字は一切入力せず、数字だけを入力します!
(データを修正する際は、元のデータをいちいち消す必要はありません。上からかぶせて入力してしまってOKです。)
数字を入力後、セルの中で文字カーソルが点滅しなくなるまで[Enter]キーで入力を確定すれば、

ユーザー定義の表示形式(数値編)41 あたかも3桁区切りのカンマや「円」という文字が一緒に入力されているように、見せかけで表示されました!

ユーザー定義の表示形式(数値編)42 もちろん、「数量」の欄だって同じように、「実際のセルの中には数字しか入力していないけれど表面的に文字も一緒だと見せかけている」ので、試しに、C5番地を選択して数式バーを見ると、C5番地には数字しか入力されていないことが分かります。
「個」なんて文字も、実際のデータとしては入力されていないわけです。

ユーザー定義の表示形式(数値編)43 ということは、これだって、データを修正したい時は、「個」なんて文字は入力せず、数字だけを入力します!
(データを修正する際は、元のデータをいちいち消す必要はありません。上からかぶせて入力してしまってOKです。)
数字を入力後、セルの中で文字カーソルが点滅しなくなるまで[Enter]キーで入力を確定すれば、

ユーザー定義の表示形式(数値編)44 あたかも「個」という文字が一緒に入力されているように、見せかけで表示されました!

ユーザー定義の表示形式(数値編)45 そして「金額」欄には「単価×数量」の数式が入力されていますが、これも計算結果に、3桁区切りのカンマと「円」という文字が一緒に見えるよう、見せかけているだけです。
「単価」「数量」「金額」の欄には、それぞれ数字や数式しか入力されていないので、このページの冒頭のようなエラーが出ることもなく、計算表としての体裁が保たれています!

まとめ

最後に、今回ご紹介したユーザー定義の表示形式の記号をまとめます。
これらの記号は、すべて半角で入力します。

# 数値の1桁
表示形式で設定した桁以上の数字がセルに入力された場合には、自動的に桁を増やして表示してくれます。
ゼロの時には、そのゼロを表示しない
0 数値の1桁
表示形式で設定した桁以上の数字がセルに入力された場合には、自動的に桁を増やして表示してくれます。
ゼロの時には、そのゼロを表示します

また、次のお約束もとても大切です。

そのまま表示したい文字の前後をダブルクォーテーションで囲む
(もちろんダブルクォーテーションは半角で入力。)

但し、「#,##0」で使った半角のカンマは、ダブルクォーテーションで囲まなくてもそのまま表示される特別な記号です。

スポンサーリンク