• ベストアンサー

VBA 小数点の割り算

お世話になります。 以下のように計算をしたいのですが。 Dim A_DATE As Single Dim B_DATA AS Single Dim C_DATA AS Single A_DATA = 69.63 B_DATA = 1651.8 C_DATA = A_DATA / B_DATA とすると C_DATAには希望は0.04214・・・・ がセットされてほしいのですが、 4.2154・・・となってしまうのです。 変数の指定の仕方がおかしいのか、 割り算の仕方がおかしいのかよく分かりません。 よろしくお願いします。

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

  • ベストアンサー
  • dsuekichi
  • ベストアンサー率64% (171/265)
回答No.2

> 4.2154・・・となってしまうのです。 それって、後ろに「E-02」と付いていませんか? コレは、指数表記(Excelのセルの書式で「指数」を指定したときの表記法)で、 値としては、「0.04214・・・・」と同じです。 見た目の問題なので、実際に画面表示したい場合には、 「Formt関数」で整形してください。 #ちなみに、計算途中の値を整形する必要はありません。

rariko
質問者

お礼

そういう事だったんですね。 出来ました。 どうもありがとうございました。

その他の回答 (1)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

>変数の指定の仕方がおかしいのか、 割り算の仕方がおかしいのかよく分かりません。 問題はありませんよ。 MsgBox C_DATA とすると、答え(表示)の末尾に E-12 と指数表示されています。 MsgBox Format(C_DATA, "0.000000000") のようにすると通常の表示がされるはずです。 http://mh1.hp.infoseek.co.jp/mm/km/km.shtml/km00048

rariko
質問者

お礼

すみません、出来ました。 URLまでありがとうございました。