- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAについて質問です)
VBAで0で除算する際のエラーを回避する方法
このQ&Aのポイント
- VBAで0で除算しようとすると「0で除算しました」というエラーが発生します。このエラーを回避するために、除算の前に割り切れるかを判定する必要があります。
- 割り切れるかを判定するために、cdbl関数を使用して除算前の値を小数値に変換し、mod演算子を使って割り切れるかを判定します。割り切れない場合は「割り切れない」というメッセージを表示し、割り切れる場合は「割り切れる」というメッセージを表示します。
- ただし、dblwaruの小数点以下の桁数がわからないため、単純にcdbl関数を使って割り切れるかを判定することができません。解決策としては、事前にdblwaruの小数点以下の桁数を確定させるか、別の方法で割り切れるかを判定する必要があります。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
mod演算って、整数しか使えないんじゃないですか? 暗黙で整数に型変換されたから 0.0005 → 0 となり、0の除算でエラーになってるんだと思います。
お礼
素早いお答えありがとうございます mod は勝手にVB.NETのCINTみたいな形に変換されてしまうんですね; 割られる数 - ((割られる数 \ 割る数) * 割る数) という式で考えていきます 本当にありがとうございました