- ベストアンサー
Excelで数値の小数点を揃える方法は?
Excelの数値データで、小数点以下1桁とか2桁とかの表示にした時、整数の小数点以下を表示しない方法はありますか?しかも、小数点を中心に桁を揃えて。 12.2 300 20.4 こんな感じです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#,##0.? で、やってみて下さい。 あと、少数点以下は、上記の場合、1位のみ表示。 2位まで表示する場合は、?を最後に付けて下さい。 あと、整数の場合、「.」が付きます。(300.) 「.」が付かない方法は?です。
その他の回答 (2)
- ja7awu
- ベストアンサー率62% (292/464)
整数のとき、少数点を表示しないで、しかも桁をキチッ~ッと揃えるには、 VBAを使用しないと出来ないと思います。 それでも宜しければ、次の通り操作してみてください。 1.Alt + F11 で VBE(Visual Basic Editor)を開きます。 2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。 3.モジュールウィンドウに下記コードをコピーして貼り付けます。 4.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。 5.実行するときは、(範囲を指定して) Alt + F8 (メニューから[ツール]-->[マクロ]-->[マクロ])で 「数値桁揃え」を指定し、[実行]ボタンを押します。 桁揃えの範囲が、固定の場合は、4行目で指定すれば、その都度指定する 必要は、ありません。 行先頭の ' を削除します。 Sub 数値桁揃え() '指定セル範囲を少数1桁で位置を揃えて表示。 Dim R As Range 'Range("B1:B100").Select ' セル範囲を固定する場合ここで指定 Selection.Font.Name = "MS ゴシック" Selection.NumberFormatLocal = "@" Selection.HorizontalAlignment = xlRight For Each R In Selection If IsNumeric(R) And Not IsEmpty(R) Then R.Value = Fix(R.Value * 10) / 10 If R.Value - Int(R.Value) = 0 Then R.Value = Format(Trim(Val(R.Value)), "#,##0") & Space(2) Else R.Value = Format(Trim(R.Value), "#,##0.0") End If End If Next R End Sub '----- ↓ 少数2桁の場合 ↓ ------------- Sub 少数点揃え() '指定セル範囲を少数2桁で位置を揃えて表示。 Dim R As Range 'Range("B1:B100").Select ' セル範囲を固定する場合ここで指定 Selection.Font.Name = "MS ゴシック" Selection.NumberFormatLocal = "@" Selection.HorizontalAlignment = xlRight For Each R In Selection If IsNumeric(R) And Not IsEmpty(R) Then R.Value = Fix(R.Value * 100) / 100 If R.Value - Int(R.Value) = 0 Then R.Value = Format(Trim(Val(R.Value)), "#,##0") & Space(3) ElseIf R.Value * 10 - Int(R.Value * 10) = 0 Then R.Value = Format(Trim(R.Value), "#,##0.0 ") Else R.Value = Format(Trim(R.Value), "#,##0.00") End If End If Next R End Sub
- perko
- ベストアンサー率19% (9/47)
1セルの書式設定を開き、表示形式タブをクリックし、会計を選択。 2記号をなしを選択 3小数点以下の桁数を第1位にしたければ、1を挿入。 で、解決するはずです。