今回は、「ユーザー定義」の表示形式を使って「〒」や「様」などの文字を自動的に付加する方法を紹介してみよう。そのほか、数値データに単位を付けて表示する方法も解説する。「12本」や「50個」のように単位付きの数値を計算したり、IDや会員番号のように先頭に0を付けて数値を表示したりする場合に活用できるだろう。

文字を追加表示する「ユーザー定義」の表示形式

「ユーザー定義」の表示形式は、データの前後に「特定の文字」を追加する場合にも活用できる。まずは、氏名の最後に「様」を自動付加する場合を例に、その手順を紹介していこう。

データの前後に文字を自動付加するときも「セルの書式設定」を使って表示形式を指定する。設定を変更するセル(またはセル範囲)を選択し、「セルの書式設定」を呼び出す。

「セルの書式設定」の呼び出し

文字データの後に「様」を自動付加する場合は、「ユーザー定義」の表示形式を「@"様"」と指定すればよい。すると、入力されているデータの最後に「様」の文字が自動付加されるようになる。

文字データの後に「様」を自動付加する「ユーザー定義」

「様」の文字が自動付加された表示

ここで注目すべきポイントは、データそのものは変更されないことである。セルを選択して数式バーを見ると、「様」の文字が付いていない、本来のデータだけが表示されているのを確認できる。

数式バーで記録されているデータを確認

このようにデータそのものは変更せずに、セルの表示だけを変更できるのが表示形式の特長となる。「氏名」と「様」の間に間隔を設けることも可能だ。この場合は、「@" 様"」のように全角(または半角)のスペースを含めた形で「ユーザー定義」の表示形式を指定すればよい。

空白文字を含む「ユーザー定義」

「(全角スペース)様」の文字が自動付加された表示

もちろん、データの前に文字を追加することも可能だ。たとえば、郵便番号の前に「〒」のマークを追加したい場合は、「"〒"@」と表示形式を指定する。

文字データの前に「〒」を自動付加する「ユーザー定義」

「〒」の文字が自動付加された表示

今回の例で使用した@(アットマーク)の書式記号は、「任意の文字列」を示す書式記号となる。つまり、各セルに入力した文字データが@の部分に相当することになる。そして、@の前後に「ダブルクォーテーションで囲った文字」を記すことで、データの前後に好きな文字を付加している。

このように、@の書式記号を使うと、データの前後に好きな文字を追加表示できるようになる。ただし、この機能を単独で利用してもあまり意味がない。今回、紹介した例の場合、「様や〒の文字を自分で入力した方が簡単なのでは?」と思う方もいるだろう。確かにその通りである。

この機能は、VLOOKUP関数を使って他の表からデータをピックアップする場合などに活用できる。これについてはVLOOKUP関数の使い方にも関連する話なので、次回の連載で詳しく紹介していこう。

数値の表示を制御する「ユーザー定義」の表示形式

Excelには、数値データの表示をカスタマイズする書式記号も用意されている。この書式記号を使うと、通常の「数値データ」に単位を付けて表示することが可能となる。具体的な例で解説していこう。

セルに「12本」や「50個」、「980円」のように単位を付けた形でデータ入力を行うと、そのデータは「文字データ」として扱われる仕組みになっている。このため、数式や関数を使った計算が行えなくなってしまう。

「単位付きの数値」を参照した数式の例

数式や関数を使って計算を行うときは、「50」のように数値だけをセルに入力しなければならない。とはいえ、単位を付けた状態で数値を示したい場合もあるだろう。このような場合は、「ユーザー定義」の表示形式を使って単位を追加するとよい。

たとえば、「本」という単位を付ける場合は、「ユーザー定義」の表示形式を「#"本"」と指定する。

数値データの後に「本」を自動付加する「ユーザー定義」

「本」の文字が自動付加された数値データの表示

この場合、記録されているデータは「数値データ」のまま変化しないため、数式や関数を使った計算が可能となる。ちなみに、#(シャープ)の書式記号は、「任意の数値データ」を示す書式記号となる。つまり、各セルに入力した数値データが#の部分に相当することになる。

ただし、0(ゼロ)の数値データを入力すると、数値の表示が空白になってしまうことに注意しなければいけない。試しに、先ほど例として紹介したセルに0(ゼロ)の数値を入力してみると、数値の表示がなくなり、「本」の文字だけが表示されてしまう。

0の数値データをセルに入力した場合

これを「0本」と表示するには、#の代わりに0(ゼロ)の書式記号を使用し、「0"本"」と表示形式を指定する必要がある。

0の書式記号を使った「ユーザー定義」の指定

数値データが0の場合も正しく数値が表示される

また、0の書式記号には「数値の表示桁数」を制御する場合にも活用できる。こちらも具体的な例で示していこう。

たとえば、「000145」と数値データを入力すると、冒頭にある不要な0が自動的に省略され、「145」という数値だけがセルに表示される。

「000145」とデータを入力したセルの表示

一般的な数値であれば、この表示でも何ら問題はないが、IDや会員番号のように桁数を揃えて数値データを表示したい場合もあるだろう。このような場合は「000000」のように、0(ゼロ)の書式記号を必要な桁数だけ並べて表示形式を指定すればよい。

表示桁数を6桁に指定する「ユーザー定義」

今回の例では、0の書式記号を6個並べているので、「必ず6桁で数値データを表示する」という指定になる。このセルに145という数値データを入力すると、セルに記録される数値データは「145」、セルの表示は「000145」という結果になる。

145という数値データを入力したセルの表示

ちなみに、7桁以上の数値データを入力した場合は、入力した数値がそのまま表示される仕組みになっている。たとえば、1234567という数値データを入力すると、セルの表示は「1234567」となり、7桁の数値が表示されるようになる。つまり、「000000」の表示形式は「最低でも6桁で数値を表示する」という指定になる。

もちろん、セルに「文字列」の表示形式を指定してから「000145」と入力し、同様の表示を実現することも可能だ。ただし、この場合は「000145」としてデータが記録されてしまうため、以降の作業を行いにくくなってしまう。数式や関数を使って計算を行うことは可能であるが、「条件付き書式」や「フィルター」などが思いどおりに動作しなくなる場合があるので注意すること。

データを「数値データ」として記録したまま、セルの表示だけをカスタマイズできる「ユーザー定義」の使い方も覚えておくとよいだろう。

なお、小数点以下の表示桁数を指定する場合にも0の書式記号を活用できるが、「セルの書式設定」にも「小数点以下の桁数」を指定する項目が用意されているので、必ずしも「ユーザー定義」を使う必要はない。

「小数点以下の桁数」を指定する項目

そのほか、0や#の書式記号を使って、数値データの表示を自由にカスタマイズすることも可能である。より詳しく勉強したい方は、「Excel 数値 書式記号」などのキーワードでネット検索してみるとよいだろう。書式記号の詳しい使い方を紹介しているWebページを見つけられると思う。