小数の表示を変えない方法

解決


ぽち  2009-08-26 17:24:22  No: 142456

VB2005で1E−3の様な指数部付きの定数を代入すると
1E−3は自動的に0.001に変換されてしまいます。
型指定の記号を付けると変換されないときもあります。

表示の変換を止めるオプションなどは有るのでしょうか?

Dim  a  as  Single

a=1E−3      ←0.001と変換されます

a=1E−12F  ←変換されません
a=1e−10F  ←0.000・・1に変換されます

よろしくお願いします


VBer  2009-08-26 22:13:13  No: 142457

>定数を代入すると

なにに代入するのでしょうか?


ぽち  2009-08-27 00:33:35  No: 142458

Single型の変数  aに1E−3など指数付きの小数を代入又は
計算させています。

a=1E−3
a=1.2/1E−3  
などのコードがVB2005では、下記の様に自動的に変わってしまいます
a=0.001
a=1.2/0.001

電子回路の計算をさせていますのでmA(−3乗)、uA(−6乗)など
指数はそのまま残しておきたいのです。

よろしくお願いします。


太郎冠者  2009-08-27 02:51:47  No: 142459

[ツール]→[オプション]→[テキストエディタ]→[Basic]→[VB固有]
を選択し「コードの再フォーマット」のチェックを外す事で一応は勝手に変換される事を防げると思います。

※当方の環境はVisual Studio2008Proなのでメニューの名称など、多少の違いはあるかも知れません。

ただ、これはIDEの便利機能なので、チェックをOFFにする事で今までは自動的に調整されていたアレコレがされなくなる、といった弊害が出ると思います。

例えばこうゆう人も
http://social.msdn.microsoft.com/Forums/ja-JP/vbgeneralja/thread/34757d79-8a92-41fe-836a-aa0e02b4b78d

実際、どの程度の違いが出るかはやってみなければ分らないとは思いますが・・・


太郎冠者  2009-08-27 02:58:37  No: 142460

「コードの再フォーマット」の内容がMSDNにあったので合わせて載せておきます。
http://msdn.microsoft.com/ja-jp/library/y0y5th94.aspx


VBer  2009-08-27 07:25:58  No: 142461

注釈行での対応が一般的でしょうね。


ぽち  2009-08-28 03:26:27  No: 142462

皆様ありがとうございました

さっそく「コードの再フォーマット」のチェックを外して
試してみました。

指数付きの小数は、思い通りになりましたが弊害も大きく
小数の表示よりもそのほかの便利機能を優先するほうが
良さそうです。

ありがとうございました


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加