エクセルVBAにて16の16乗を取り扱いたいのですが....
データ型が、LongとCurrencyでは、オーバーフローしてしまいます。
そこで、SingleとDuobleですると
Singelでは、1.844674E+19
Doubleでは、1.84467440737096E+19
になります。
これを、正確に18446744073709551616とさせる方法を教示ください。
Dim Dec_data As Double
Dec_data = 16 ^ 16
MsgBox Dec_data
No.2
- 回答日時:
Doubleは a * 2^nの形で記憶していて、 16^16 = 2^64なので
1.0 * 2^64
と、誤差無くDoubleの保存されています。(おそらく)
ただ、そのままMsgBoxで出そうとしたので、デフォルトの文字列変換で 1.84467440737096E+19 と指数表現で表示されているだけです。
ちょっと今確認できる環境が無いのですが、Format関数で#を沢山並べたらどうでしょうか
MsgBox Format(Dec_data,"#############################0")
No.1
- 回答日時:
エクセルの(VBの)表現可能な有効数字範囲を超えているので、既定のデータ型では実現できません。
いわゆる「多倍長計算」が必要になります。(計算処理を自作する必要がある)
このURLの「多倍長計算 乗算編 Excelブック(2003/9作成)」が参考になるでしょう。
参考URL:http://www.tokyo-pax.co.jp/jisaku.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- 数学 単振り子とルンゲ・タック法 1 2022/07/15 00:05
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) VBA初心者です。 2 2022/10/10 11:52
- C言語・C++・C# 10個の実数に対する降順ソート結果を出力するプログラムを作りたいのですが、以下のプログラムをどう直せ 1 2022/07/09 22:16
- Visual Basic(VBA) 複数シート一括作成後に、特定範囲の数式は値で貼り付けしたい 3 2022/10/07 11:18
- Visual Basic(VBA) VBAでのMATCH関数 3 2022/10/17 19:06
- Visual Basic(VBA) パーソナルXLSBのfuctionを呼び出すと「Functionが定義されていません」のエラーになる 2 2022/08/22 22:51
- Excel(エクセル) 格納したデータを配列のように扱う方法はありますか? 8 2023/06/05 08:53
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
pythonでDBのカラム名で取得し...
-
matlabのソースコードをpython...
-
エクセルVBA:日付データの変換...
-
C言語の構造体にてバブルソート...
-
データの値の近いものをグルー...
-
printfの%eで指数部分の桁数を...
-
テキストファイルの結合について
-
パイソン、データーサイエンス...
-
POSTで配列のデータを渡す方法は?
-
基本クラスのポインタから、特...
-
オセロゲーム 2次元配列で困...
-
花の名前を教えて下さい。
-
途中経過も表示するプログラム
-
python 気象データの取得
-
UTF-8で5~6バイトになる文字コ...
-
COBOLのCOMP形式について
-
ビットスワップとバイトスワッ...
-
エクセルシート名の制限を変更...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
printfの%eで指数部分の桁数を...
-
エクセルVBA:日付データの変換...
-
int型(2バイト)データの分割
-
c言語の多次元配列で1から100ま...
-
C#でのswitch文
-
【Excel VBA】10進数を2進数に...
-
途中経過も表示するプログラム
-
CreateProcessでの環境変数の設...
-
pythonでDBのカラム名で取得し...
-
C言語についてです! 同じ年の...
-
linuxのシェルでファイル名に先...
-
c言語 配列から数字だけをint型...
-
c言語での wavファイルの編集(...
-
matlabのソースコードをpython...
-
ビットデータのチェック方法
-
10個の実数に対する降順ソート...
-
python 気象データの取得
-
C言語の構造体にてバブルソート...
おすすめ情報