• ベストアンサー

エクセルで・・・

エクセルの入力についてお尋ねします。 セルに数値を入力して、小数点以下切り上げ(例: 入力数値0.3→表示数値1.0)にしたいのですが、可能でしょうか?可能でしたら方法を教えてください。 宜しくお願いします。 エクセル97使用です。

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

  • ベストアンサー
noname#148473
noname#148473
回答No.5

#2です。マクロ版つくってみました。 処理したいセル(またはセル範囲)を選択して実行してください。 なお、当方Excel2000なので、ひょっとすると動作しないかもしれませんので、その際はあしからず。 '---------------------------------- Sub 切り上げ()     Dim c, d As Variant   Dim i As Long      For Each c In Selection     d = Fix(c)     If c <> d Then       c.Value = d + 1     End If     c.NumberFormat = "#.0"   Next   End Sub '----------------------------------

h-i
質問者

お礼

御丁寧にありがとうございます。 マクロはほとんど使ったことがなく、ド素人ですが 勉強をかねて早速やってみます。

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.4

No.1です。 表示する小数点以下の桁数が、 0.3→1.0 0.35→1.0 のように、常に一定の桁なら、数式を、 =ROUNDUP(A1,) にして、このセルの表示形式の[分類]を「数値」にして、桁数を設定すればいいです。 しかし、 0.3→1.0 0.35→1.00 のように、元のデータの小数点以下の桁数に合わせて、表示する桁数を可変にする場合は、数式を、 =TEXT(ROUNDUP(A1,),"0" & REPT(".",ISNUMBER(FIND(".",A1))) & REPT("0",MAX(LEN(A1)-FIND(".",A1 & "."),0))) とします。 (セルの表示形式は[標準]のまま)

h-i
質問者

お礼

ありがとうございます。確かにちょっと複雑ですね・・・。早速、試してみます。

すると、全ての回答が全文表示されます。
  • laputart
  • ベストアンサー率34% (288/843)
回答No.3

例えばセルA1の値をB1で切り上げた値にする場合 B1 には =roundup(A1,0) と入力します。 ROUNDUP(元の値,小数点以下何桁目で切り上げるか) ですので 0を入れると小数点以下切り上げとなります。 他に四捨五入は =Round() というのもあります。

h-i
質問者

お礼

ご丁寧な回答ありがとうございます。早速、試してみます。

すると、全ての回答が全文表示されます。
noname#148473
noname#148473
回答No.2

表示形式による数値まるめは、四捨五入のみです。切り上げを行うには、関数を使うか、VBAマクロを使用するかになります。 関数の場合は、 =ROUNDUP(A1,0) でOKです。 マクロご希望でしたら、補足ください。

h-i
質問者

お礼

回答ありがとうございます。 早速やってみます。よろしければ、マクロご教授いただけると助かります。

すると、全ての回答が全文表示されます。
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 表示形式で、そのセル自身の表示を切り上げにすることは出来ません。 別のセルへ表示するなら、ROUNDUP関数を使用すれば出来ます。 ただし、 0.3→1 ではなく、 0.3→1.0 のように小数点以下の桁の表示は残したまま切り上げする場合は、数式は少し複雑になります。

h-i
質問者

お礼

早速のご回答ありがとうございます。 表示数値を1.0にする方法もあるのですね。よろしければその方法もご教授いただけると助かります。

すると、全ての回答が全文表示されます。

関連するQ&A