- ベストアンサー
Excelで小数点の位置を揃えたい
Excelで、小数点以下の桁数が何種類もあって、それをタテ1列に表示したとき、小数点の位置を揃えたいと思い、セル書式を 0.?? としてみました。 ____2. ___12.5 __152.26 結果は上記のようになります。アンダーバーは無視してご覧下さい。 小数点以下に数値がある場合はよいのですが、整数の場合も小数点が表示されるので不都合です。 各セル共通の書式で、整数の場合に小数点を表示しないようにするには、どうしたらよいのでしょうか、教えて下さい。よろしくお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 一般の表示形式では、整数の「小数点表示」をなくすことはできません。本来、違う種類の書式だからです。どうしても必要となるのでしたら、以下のようにイベント・ドリブン型のマクロで可能です。 設定の仕方は、シートタブを右クリックして、コードの表示で以下を貼り付けます。 '--------------------------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) With Target '1列目以外は、働かない If .Column <> 1 Then Exit Sub If .Value - Int(.Value) <> 0 Then .NumberFormatLocal = "#,##0.????" Else .NumberFormatLocal = "#,##0! ! ! ! ! " End If End With End Sub '--------------------------------------------------------- 解説: If .Column <> 1 は、1列目、つまりA列のことです。B列でしたら、2 を 1の代わりに入れます。 書式の "#,##0! ! ! ! ! " は、半角空白が[5つ]あります。それは、「.(ピリオド)」を含め、「????」が4つで、5つになるからです。 これらの設定をし直すときは、必ず、メニューの[書式]-[セル]-[表示形式] ユーザー書式の中で、今までの設定を削除してください。通常は、問題がありませんが、あまり数が増えすぎると、場合によって、エラーの元になります。
その他の回答 (5)
- sokoja
- ベストアンサー率33% (164/491)
私も消したいのですが、やはり表示形式では出来ないようです。例題の場合は「0.0?」として、 ____2.0 ___12.5 __152.26 が限度ではないでしょうか。
お礼
sokojaさん ありがとうございました。 仕方がないので、書式を2種類にしました。
過去に、参考URLのような質問と回答がありましたが、 http://okweb.jp/kotaeru.php3?q=996373 これで解決できるのではないでしょうか。
お礼
uchiboriyoさん ありがとうございました。 やはり結果は同じです。 仕方がないので、書式を2種類にしました。
- WWolf
- ベストアンサー率26% (51/192)
書式設定に 0.0?? ?の数はそちらの仕様によります。
お礼
WWolfさん ありがとうございました。
>小数点が表示されるので不都合です 回避策はないようです。
お礼
ok20050706さん ありがとうございました。 仕方がないので、書式を2種類にしました。
表示設定を「会計」にしてみてください ユーザ定義ですと _ * #,##0.??_ ;_ * -#,##0.??_ ;_ * "-"_ ;_ @_ かな
お礼
ok20050706さん ありがとうございました。 やはり結果は同じでした。 仕方がないので、書式を2種類にしました。
お礼
Wendy02さん ありがとうございました。 マクロ組込は面倒なので、書式を2種類にしました。 整数の行は、通常の数値形の後にアンダーバーをつけて1の位の位置を調整し、小数の行は、小数点以下を ? の桁数と同じにして小数点の位置を揃えました。 小数位2桁の場合、画面上ではアンダーバー6個で揃いました。