【Excel】書式設定を使って時刻を「午前/午後」表示にしたり、数値を漢数字で表示したりする:Tech TIPS
Excelで時刻を「午前/午後」表示にしたり、数字を漢数字にしたりする方法を紹介する。ご祝儀や領収書などで使われる「大字」表示にすることで、突き合わせの際の間違いを減らすことも可能だ。
対象:Excel 2013/2016/2019
■記事内目次
Excelでロケールを設定するメリット
慶事や弔事の際のご祝儀や香典などを「Excel」で集計するといったことがあるのではないだろうか。この際、ご祝儀や香典などは「壱阡弐拾四」といった「大字(だいじ)」と呼ばれる数字で書かれることが多い。そのため、入力の際に誤ったり、突き合わせをする際に間違ったりしがちだ。字は、請求書などに利用する慣習があるため、この形式で表示できれば、Excelからの請求書発行などにも利用できる。
このような場合、Excelの書式設定に「ロケール」指定を加えるとよい。ロケールを設定することで、数値や時刻の表示を各国の言語に合わせて表示できるようになる。日本のロケールを指定した場合、数字を「壱阡弐拾四」のような大字や「千二十四」のような漢数字で表示することができるようになる。また、時刻表示でも「午後3時」のようにAM/PMを日本語で表示できるようになる。
ただし、この機能は、Excel 2016以降とそれより前(Excel 2013以前)で若干表記方法が違う。本稿では、先にExcel 2016以降で有効な表記で解説し、あとでExcel 2013以前で指定する方法を解説する。
ロケール指定を行う方法
Excelでロケールを指定するには、設定したいセルを選択して、右クリックの[セルの書式設定]を選択し、[表示形式]タブの[分類]で「ユーザー定義」を選択することで行う。
先に、[分類]リストから使いたい書式を選択して、その後[分類]リストで「ユーザー定義」を選択すると、先ほどまで選択していた書式文字列が「種類」テキスト欄に表示されるので、書式指定の前に日本語のロケールを指定するのであれば「[$-ja-JP]」付け加えればよい。
例えば、時刻の表示を「AM/PM」から「午前/午後」に変更するには、[分類]リストで「時刻」を選択して、[種類]で「1:30 PM」となっている書式を選択した後、「ユーザー定義」を選択して[種類]の「[$-en-US]h:mm AM/PM;@」(米国英語のロケール指定が含まれている)の「[$-en-US]」部分を「[$-ja-JP]」に書き換えればよい(Excel 2013以前では「ja-JP」の代わりに「411」という数値を指定する。詳しくは後述)。これで、セルは「1:45 午後」のように表示されるようになる。「午前/午後」を時刻の前に表示するようにするには、「[$-ja-JP]AM/PM h:mm;@」とすればよい。
ロケール指定を行う(3)
[分類]リストで「ユーザー定義」を選択すると、選択した書式の文字列が表示される。標準では米国英語の「en-US」が指定されているので、これを「ja-JP」に書き換え、適切な書式(例えば、「AM/PM」を前にする)などして、セルに適用すると日本語で「午前/午後」が表示される。Excel 2013以前の場合は、「ja-JP」の代わりに「411」という数値を指定する(詳細は後述)。
ロケール指定とは?
[セルの書式設定]の「ユーザー定義」に追記する「[$-en-US]」「[$-ja-JP]」の「en-US」「ja-JP」はロケールと呼ばれ、コンピュータで言語と地域を指定するための表記方法だ。ロケールは、ISOで定めた言語コードと国コードをハイフンでつなげて表現する。
言語だけを指定しないのは、国によっては複数の言語が使われている場合があること、同じ言語であっても国によって慣習が違う場合があるからだ。例えば、英語(en)には、米国式英語(en-US)と英国式英語(en-GB)などがある。ただ、日本語の場合、日本以外では使われていないので、ロケールとしては「ja-JP」のみだ。
具体的に見てみることにしよう。下表は、書式指定文字列をロケール指定なし/ありで適用させたものだ。Excelでは、原則、ロケール指定がない場合、「英語-米国」(en-US)が指定されたことになっている。このため、午前/午後を表す「AM/PM」や曜日を表す「dddd」は、米国式英語の表記に変換される。この書式の前に「[$-ja-JP]」を付けると、書式指定はそのままで、日本語用に切り替わり、「AM/PM」は「午前」または「午後」に、「dddd」は「月曜日」などと表示されるようになる。
表示 | セルの値 | ロケール指定なし書式 | 指定なし書式のセル表示 | ロケール指定付き書式 | 指定付き書式のセル表示 |
---|---|---|---|---|---|
午前午後 | 13:45 | AM/PM h:m | PM 1:45 | [$-ja-JP]AM/PM h:m | 午後 1:45 |
曜日 | 1月21日 | MM/dd(dddd) | 01/21(Monday) | [$-ja-JP]MM/dd(dddd) | 01/21(月曜日) |
曜日(従来の方法) | 1月21日 | MM/dd(aaaa) | 01/21(月曜日) | [$-en-US]MM/dd(aaaa) | 01/21(月曜日) |
ロケール指定なし/ありによる書式指定文字列 |
なお、Excelの日本語版には、「aaaa」という表記もある。これは、1990年台に日本語版が発売された頃に追加された機能で、当時はロケールの概念がExcelにはなかったため、書式指定文字を拡張していた。
しかし、この方法で各国に対応するには書式指定文字が足りなくなってしまう。このため、現在では、各国の各言語に対応するためにロケールを指定する方法が使われるようになった。
ロケール指定を使うメリットは、複数の言語での表記を個別にセルに指定できるため、多国語対応が容易になる点だ。Excelは中国語版だからといって、表記が自動的に中国語になるわけではなく、「dddd」と指定すれば、どの言語のExcelも「Monday」と英語でしか表示されない。しかし、ロケール指定を付けることで「dddd」は、中国語の「星期一」(月曜日のこと)やドイツ語の「Montag」などと表示できるようになる。閲覧される地域、言語に合わせて表記を行う日付表示のセルを追加することで各国語での表記が可能になる。
ロケール | セル値 | 1月21日 | |
書式パターン | MMMM/dd(dddd) | ||
英語 | [$-en-US] | January/21(Monday) | |
日本語 | [$-ja-JP] | 1月/21(月曜日) | |
中国語(台湾) | [$-zh-TW] | 一月/21(星期一) | |
ドイツ語 | [$-de-DE] | Januar/21(Montag) | |
各国のロケールに設定した場合の表示 |
Excel 2016以降で数値を漢数字や大字で表示する
日本語式の表示は、午前/午後だけでなく、数値の表示にも利用できる。日本語の場合、ロケール指定を使うことで、数値を漢数字、大字、全角数字で表示できるようになる。
大字とは、請求書などの金額表示に使う「壱弐参四伍六」のような表記のことだ。手書きの時代に金額を後から書き換えにくいようにした表記の名残だが、前述のご祝儀や香典の金額表記などで見かける(使う)こともいまだに多い。漢数字では、では「10」を「拾」と表記するのに対して、大字では文字を書き加えられないように「壱拾」と表記して「1」があることを示すなどの違いがある。
表示 | 書式 | セル値 | 書式指定した文字列 | 備考 | |
---|---|---|---|---|---|
漢数字 | [$-ja-JP][DBNum1]G/標準 | 123456 | 十二万三千四百五十六 | 数値を漢数字で表示("G/標準"は標準の書式設定) | |
大字 | [$-ja-JP][DBNum2]G/標準 | 123456 | 壱拾弐萬参阡四百伍拾六 | 数値を大字で表示 | |
全角数字 | [$-ja-JP][DBNum3]G/標準 | 123456 | 十2万3千4百5十6 | 数値を全角文字(2バイト文字)で表示 | |
漢数字(金額) | [$-ja-JP][DBNum1]”金"#,##0"円也" | 123456 | 金一二三,四五六円也 | 書式指定付きで漢数字表示 | |
大字(金額) | [$-ja-JP][DBNum2]”金"#,##0"円也" | 123456 | 金壱弐参,四伍六円也 | 同 大字による表示 | |
大字(金額) | [$-ja-JP][DBNum2]”金"G/標準"円也" | 123456 | 金壱拾弐萬参阡四百伍拾六円也 | 同 大字による表示。千、万などの表記を入れる場合 | |
全角数字(金額) | [$-ja-JP][DBNum3]”金"#,##0"円也" | 123456 | 金123,456円也 | 同 全角数字による表示 | |
参考(英語) | [$-en-US][DBNum1]G/標準 | 123456 | 123456 | 米国英語のロケールでは無効 | |
[$-en-US][DBNum2]G/標準 | 123456 | 123456 | |||
[$-en-US][DBNum3]G/標準 | 123456 | 123456 | |||
参考(台湾) | [$-zh-TW][DBNum1]G/標準 | 123456 | 一十二萬三千四百五十六 | 台湾の場合、日本語とは使われる文字に違いがある | |
[$-zh-TW][DBNum2]G/標準 | 123456 | 壹拾貳萬參仟肆佰伍拾陸 | |||
[$-zh-TW][DBNum3]G/標準 | 123456 | 1十2萬3千4百5十6 | |||
各表示を設定するためのロケールと書式 |
こうした日本語ロケールの数値表示を使う場合には、[セルの書式設定]ダイアログの「分類」で[その他]を選択し、「ロケール」のプルダウンリストで[日本語]を選択、「種類」で[漢字数字]や[大字][全角]などを選択すればよい。
[セルの書式設定]ダイアログで数値を漢数字や大字で表示する
[セルの書式設定]ダイアログの「分類」で[その他]を選択し、「ロケール」のプルダウンリストで[日本語]を選択、「種類」で[漢字数字]や[大字][全角]などを選択することで、表示を漢字数字や大字にすることができる。
また、「分類」で[ユーザー定義]を選択し、ロケールの後ろに「[DBNum1]」(漢数字)、「[DBNum2]」(大字)、「[DBNum3]」(全角数字)を付けてもよい。なお、大字や漢数字の表記は、中国語(「zh-TW」や「zh-CN」など)でも行える。また、漢字を使わないロケール(例えば米国式英語のen-USなど)では、無効となる。
Excelでは、書式指定は[セルの書式設定]ダイアログから行うが、同様のことがTEXT関数を使っても行える。このときには、「表示形式」パラメーターに書式指定([セルの書式設定]ダイアログの種類欄に入れる文字列)をそのまま指定できる。1つのセル値を書式だけを変えて表示するような場合には、TEXT関数を使う方が便利だ。
Excel 2013以前で数値を漢数字や大字で表示する
Excel書式指定のロケール指定は、Excel 2016で表記方法が変更になった。Excel 2013の場合、ロケールは、「ja-JP」のような標準ロケール指定ではなく、MicrosoftのLCIDという数値を使う。
地域-言語 | ロケール指定(Office 2016以降) | Office 2013以前の指定方法(LCID) |
---|---|---|
日本-日本語 | [$-ja-JP] | [$-411] |
米国-英語 | [$-en-US] | [$-409] |
イギリス-英語 | [$-en-GB] | [$-809] |
台湾-繁体字中国語 | [$-zh-TW] | [$-404] |
中国-簡体字中国語 | [$-zh-CN] | [$-804] |
Windowsの時刻指定(長い形式)を利用 | [$-x-systime] | [$-F400] |
Windowsの日付指定(長い形式)を利用 | [$-x-sysdate] | [$-F800] |
Excelのバージョン別のロケール指定 |
なお、Excel 2013でも、text関数を使う場合には、Excel 2016同様に「[$-ja-JP]」のようなロケール指定ができる。セルの書式設定ダイアログからユーザー定義を使って書式を設定する場合のみ、上表のような数値によるロケール指定が必要になる。この数値は、MicrosoftがWindows OS用に定めた数値で、以下のURLに言語と数値の対応表がある。また、この表は、Windows OSやExcelが対応するロケールを示すものにもなっている。
- [MS-LCID]: Appendix A: Product Behavior[英語](Microsoft)
このWebページの下の表にある「Language ID」の欄にある数値の先頭から「0x0」を取り去った3桁の16進数を「[$-」の後ろに記述する。例えば、日本語(Japanese)の場合、LCIDは「411」となり、「[$-411]」と記述する。なお、ロケール文字列は、「Language tag」欄に記述されている。
ロケール指定により、日本国内で使われている数字の表示や、午前/午後のような日本語を使った表示がExcelでも可能になる。また、セルごとにロケール指定を変えることで、同じ書式文字列を各国語に対応させることも可能だ。
Copyright© Digital Advantage Corp. All Rights Reserved.