• 締切済み

特殊なセルの書式

Excelで 2 3.111 1.465 9.3 60000 7000 8236.6 を 2 3.111 1.465 9.3 60,000 7,000 8,236.6 となるように表示するセルの書式を教えてください。 ・少数のないものは少数を表示しません。("."も表示しません) ・少数は3桁とします。下位が0の場合は表示しません(5.5 -> 5.500は駄目) 桁区切り1000を1,000で表示します。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

小数点以下なし(整数)の場合に「.」を表示しないことは、表示形式の工夫では普通では出来ません。過去にも数度質問があり、凝ったやり方が載った記憶がありますが、普通出来ません。 それ以外は、普通の、数の書式設定です。 VBAなら出きるかも知れない。 5.000を5とする例 Sub test01() For i = 1 To 10 If Cells(i, "A") = Int(Cells(i, "A")) Then Cells(i, "A").NumberFormatLocal = "#,### " Else Cells(i, "A").NumberFormatLocal = "##,##0.000" End If Next i End Sub 5.500になるが、小数点以下を1,2桁の場合に分けて記述すれば出来そう。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

小数点ありでいいなら表示形式をユーザー定義で #,##0.??? 小数点なしだと表示形式では無理です。 別のセルでいいなら =TEXT(A1,IF(MOD(A1,1)=0,"#,##0","#,##0.???"))

  • snoopy64
  • ベストアンサー率42% (337/793)
回答No.1

表示形式だけでは無理かもしれません。 隣のセルになら以下で可能です。 元の値がG列に入っているとして、H列に =TEXT(G2,IF(G2=INT(G2),"#,###","#,###.###")) として下方にコピー。 H列を右揃えにすれば、見た目はご希望の結果になると思います。 ただし、文字列なので、計算にはG列を使ってください。 頑張ってくださいヽ(^。^)ノ

5S6
質問者

お礼

ありがとうございます。 このようなやり方は一応知っていたのですが、 表示形式でやってみたかったです。

関連するQ&A