VBAについて教えて下さい。

小数点2桁で切り上げを行いたいのですが、良い方法を教えていただけませんでしょうか。
例)
0.98=1
1.98=2
1.25=1.3
出来ればROUND関数を使わずに実行したいのですが良い方法を教えていただけませんでしょうか。
よろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/12/20 20:54:37

ベストアンサー

id:SALINGER No.2

回答回数3454ベストアンサー獲得回数969

-Sgn(x) * Int(-Abs(x) * 10) / 10
id:sinrabanshyo

有難うございます。やってみます。

2011/12/20 20:57:11

その他の回答1件)

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ワークシート関数の Ceiling を使うのが簡単だと思います。
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_050_030.html

Ceiling は、第2引数の単位で数字を丸めて、大きい方を返します。

Application.WorksheetFunction.Ceiling(1.25, 0.1)  → 1.3

何度も呼び出すとき(普通、そうなるでしょうが)には、リンク先のページのように Application の参照を使って呼び出した方が、早いはずです。

id:sinrabanshyo

Ceiling という手もあったのですね!!
有難うございます。

2011/12/20 20:56:04
id:SALINGER No.2

回答回数3454ベストアンサー獲得回数969ここでベストアンサー

-Sgn(x) * Int(-Abs(x) * 10) / 10
id:sinrabanshyo

有難うございます。やってみます。

2011/12/20 20:57:11

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません