Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6770 / 13646 ツリー ←次へ | 前へ→

【43280】変数の型Singleについて 小心者 06/10/7(土) 21:32 質問[未読]
【43281】Re:変数の型Singleについて ponpon 06/10/7(土) 21:54 発言[未読]
【43282】Re:変数の型Singleについて ぱっせんじゃー 06/10/7(土) 21:58 発言[未読]
【43285】Re:変数の型Singleについて 小心者 06/10/7(土) 23:13 お礼[未読]

【43280】変数の型Singleについて
質問  小心者  - 06/10/7(土) 21:32 -

引用なし
パスワード
   すいません。下記のコードで計算すると
なぜか違う値が返ります。誰か詳しい方教えて
ください。お願いします。
Sub テスト()
Dim A As Single
Dim B As Single

A = 37.8
B = 52.6
  '90.4になるはずなのに違う値・・・。
MsgBox A + B

End Sub

【43281】Re:変数の型Singleについて
発言  ponpon  - 06/10/7(土) 21:54 -

引用なし
パスワード
   ▼小心者 さん:
>すいません。下記のコードで計算すると
>なぜか違う値が返ります。誰か詳しい方教えて
>ください。お願いします。
>Sub テスト()
> Dim A As Single
> Dim B As Single
>
> A = 37.8
> B = 52.6
>  '90.4になるはずなのに違う値・・・。
> MsgBox A + B
>
>End Sub

エクセルは小数の計算が苦手です。

http://pc.nikkeibp.co.jp/pc21/special/gosa/index.shtml

それで、
Sub テスト2()
  Dim A As Single
  Dim B As Single
  
  A = 37.8 * 10
  B = 52.6 * 10
  MsgBox (A + B) / 10
End Sub
こうするとうまくいくのですが、

Sub テスト3()
  Dim A As Single
  Dim B As Single
  
  A = 37.8
  B = 52.6
  MsgBox (A * 10 + B * 10) / 10
End Sub

こうすると失敗 ??

詳しいことは、上のページか 識者の回答を待ってください。

【43282】Re:変数の型Singleについて
発言  ぱっせんじゃー  - 06/10/7(土) 21:58 -

引用なし
パスワード
   こういうhpもありました。

http://salv.miscnotes.com/1998/03/vb5singledouble.php

【43285】Re:変数の型Singleについて
お礼  小心者  - 06/10/7(土) 23:13 -

引用なし
パスワード
   ponponさん ぱっせんじゃーさん
ありがとうございます。

教えてもらったことを参考に勉強してみます。

6770 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free