Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Google SpreadSheetの表示形式オプションをつかって各国表記に対応する

昨日の記事でも扱ったように、
桁区切りは各国がローカルルールで動いているため見積書や発注書のフォーマットを作っても結構手がかかったりします。
Google SpreadSheetならば、その辺りをよろしくやる「表示形式オプション」というのがあります。

公式ヘルプでは以下のような解説がされています。

文字 説明
0 数字内の任意の桁です。結果に無効な 0 が表示されます。
# 数字内の任意の桁です。結果に無効な 0 は表示されません。
? 数字内の任意の桁です。結果に無効な 0 が空白として表示されます。
$ 数値をドル値にします。
.(ピリオド) 数値を小数にします。
/ 数値を分数にします。
% 数値を百分率にします。
E 数値を指数にします。
"テキスト" 数式にテキストを追加します。表示するテキストを二重引用符で囲んで挿入します。
@ セルに入力したテキストを表示します。

単位については、例えば"$JPY"とやれば、通貨単位がJPYとでます。
番号で指定する方法もあるみたいです。

というわけで...

_(###.000,* [$JPY]_)

とやれば、

1.234 JPY

と出てきます。

国の設定ごと変えてしまう方法

ただ、この方法だと毎回毎回特殊構文を設定する必要があるので面倒です。
単に特定国家のルールに合わせたい場合は

ファイル=>スプレッドシートの設定

で言語設定を希望する国に合わせます。
f:id:shuzo_kino:20140830175339p:plain
こんな感じの画面が出てくるので、スイスを設定すると...
123456は

Fr. 123'456.00

とスイス式に書き下してくれます。
通貨単位は

表示形式の詳細設定 => その他通貨

で変更できます。
小面倒な区切りまわりの設定は保存されるため、たとえば JPYを指定すると

123'456.00 JPY

と変更もできます。
小数点以下が不要ならば「小数点以下の桁を減らす」ボタンで削るか、上記の記法に従って新規に構文を書いてあげると良いでしょう。

なお、表示言語は変わらないため、安心して対応国を変更できます。やったぜ