2012-02-20 11 views
3

Decimalの変数xを別のDecimalyで除算しようとしていますが、整数の結果しか得られませんが、オーバーフローエラーが発生します。Decimalデータ型を使用したVBA整数除算

Dim a As Variant 
Dim b As Variant 

a = CDec(129801938493) 
b = CDec(9385029380) 

a = a \ b 

どうやら\オペレータは、Longデータ型に引数を強制します。 Decimalを使用して整数除算(またはモジュロ除算)を行う方法はありますか?

+0

あなたの例は、[モジュロ](http://en.wikipedia.org/wiki/Modulo_operation)ではなく[整数除算](http://en.wikipedia.org/wiki/Integer_division#Division_of_integers)を示しています。それに応じてあなたのタイトルを修正しました。 –

+0

@ Jean-FrançoisCorbett、ありがとう。私が扱っているアルゴリズムでは、整数除算またはモジュロ除算が必要です。 – Joe

答えて

4
a = Int(a/b) 

Int関数が切り詰められるので、 "\"と同じになるはずです。