• ベストアンサー

エクセルの表示形式

エクセルの表示形式で、小数点の位置をそろえたいです。それで、表示形式をユーザー定義で0.??としたのですが、そうすると小数点以下がない場合でも、1.などと、小数点が出てしまいます。小数点以下の数字がない場合は、1と出て、なおかつ小数点以下の数値がある場合に点の位置がそろうような表示形式を教えてください。おねがいします。 こうしたい 1 1.1 1.11 こうなってしまう 1.(←この点がいらない) 1.1 1.11

質問者が選んだベストアンサー

  • ベストアンサー
noname#3622
noname#3622
回答No.4

参考URLのページにある 「有効桁を表示し、小数点位置をそろえるマクロ」 は如何ですか? 「fmtpt1.txt」に書かれてあるマクロをコピーして、 [ツール]→[マクロ]→[マクロ]で適当に名前を入れて 「作成」ボタンを押し、出てきたウィンドウにコピーしたマクロを貼り付ければマクロ登録は終わりです。 後は、数値を入力して、入力したセルを選択し、 マクロを実行させれば揃うはずです。 細かなところは「0.??」をご存知の方なら調整できるのではないかと思います。 因みに自分のエクセルでは、エラーが出るところもありましたが、大部分は上手くいっていたので、大助かりでした。

参考URL:
http://www.geocities.co.jp/SiliconValley-SantaClara/1429/link18.htm
bird157
質問者

お礼

ありがとうございました。おかげで助かりました。 参考URLは他にも利用できそうなものが沢山あったので、今後も参考にさせていただきたいと思います。

その他の回答 (4)

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.5

整数のとき、少数点を表示しないで、しかも桁をキチッ~ッと揃えるには、 書式では無理と思います。VBAを使用しないと出来ないと思います。(2000) もし、VBAでも宜しければ、次の通り操作してみてください。 1.Alt + F11 で VBE(Visual Basic Editor)を開きます。 2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。 3.モジュールウィンドウに下記コードをコピーして貼り付けます。 4.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。 5.実行するときは、(範囲を指定して)  Alt + F8 (メニューから[ツール]-->[マクロ]-->[マクロ])で  「数値桁揃え」を指定し、[実行]ボタンを押します。 桁揃えの範囲が固定の場合は、4行目で指定すれば、その都度指定する 必要は、ありません。 そのときは、行先頭の ' を削除します。 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

bird157
質問者

お礼

ありがとうございます。しっかり小数点そろいました。 おかげで助かりました。

  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.3

すみません。補足です。 セルのプロパティ(右クリック)→「表示形式」タブ→「ユーザー定義」を選択して、右側の「種類」という所に、先ほどの書式を定義してください。

  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.2

はじめまして。 書式設定は多分「#,###.##」になってますよね。 「#,###.00」に設定してください。 1.00 1.10 1.11 で表示されます。

bird157
質問者

お礼

説明がうまくできていなかったようですみません。表示形式は0.??になっています。小数点以下が0の場合は、できれば0を表示したくはないのです。0.??の表示形式ですと、小数点以下の数字がある場合はきれいに小数点の位置がそろうのですが、小数点以下の数字が0の場合は1.のようにいらない.が表示されてしまうので困っています。よろしくお願いします。

回答No.1

表示形式を「文字列」に設定したらどうでしょうか? すると 1 1.1 1.11 という表示は可能だと思います。 ただ、 >小数点の位置をそろえたいです。 ということですが、 1 11.1 123.15 2.3 などのように整数部の桁数がバラバラの数字で小数点を縦にキレイにそろえるのは無理です。 表示形式を「文字列」にして、小数点の位置がきれいにそろうように、自分で整数部の頭にスペースを入力するしかないですね。(多分・・・)

bird157
質問者

お礼

早速の回答ありがとうございます。文字列にしてスペースを入れて揃えることも考えてはみたのですが、あとで計算をしなければならないので、断念しました。やはり、小数点以下の数字が0になる数値がある場合は、点の位置を揃えるのは無理なのかもしれませんね

関連するQ&A

専門家に質問してみよう