Officeを駆使して戦うあなたへ
Excelいいですよね。 納品金額やお仕事に必要ないろいろな勘定を最強の表計算ソフトExcelを使って出している人。いると思います。
Word差込印刷いいですよね。 Excelで作った表からVBAも使わずに 定形のレイアウトにおさめて印刷ができる。最強の帳票ツールです。
そんな最強のMicrosoft Office Excel & Word差込印刷タッグの前に、小数点表示のハードルが立ちはだかる。
この記事を読むべき人
- Excelのデータはいじることができないが、Wordの差込印刷を修正できる人
- 差込印刷のフィールドコードで書式をいじって小数点以下の表示をなんとかしたい人
数値を書式指定で表示するフィールドコード
差込印刷のフィールドを選択した状態で Alt+F9
を押すと、フィールドコードを入力できる。
無機質な数値も以下のようなフィールドコードを入力すると桁が増えたらカンマ区切りにしてくれるようなよろしくやってくれる。
{ MERGEFIELD 数値列 \# 0,}
小数点をフィールドコードで表示指定したい場合
今回以下のような数値を登録するとする。
数値列 |
---|
5.5 |
8 |
10.2 |
当初例に出したフィールドコードで差込印刷を行うと、以下のような結果になり、小数点以下が表示されなくなる。
差込印刷結果 |
---|
5 |
8 |
10 |
じゃあ世にあるMERGEFIELDの使い方にならって以下のように書いたとしよう
{ MERGEFIELD 数値列 \# 0,.#}
そうすると、こうなる
差込印刷結果 |
---|
5.5 |
8. |
10.2 |
8の結果を見てほしい 見事な鼻クソが残っている
Wordの式は簡単なものしか無く、最強Excelのような関数は当然無い。
どうすればよいのか?インターネットに聞いても触りの知識しかない。
ここからが根性SEの力の見せ所だ
結果
差込印刷の最終兵器IFを使用して、以下のように記述する。
{IF{MERGEFIELD 数値列 \# .#}="." {MERGEFIELD 数値列 \# 0,} {MERGEFIELD 数値列 \# 0,.#}}
最初のIFで小数点以下が表示されるか判断し、表示条件を分けている。
これで先の数字をいれると、以下のように表現される。
差込印刷結果 |
---|
5.5 |
8 |
10.2 |
すばらしい。きっとこれであなたの業務のお困りごとも解決したはずだ。
以上、何卒よろしくお願い致します。(締めの言葉)