プロが教えるわが家の防犯対策術!

こんにちは。VBA(ACCESS2003)初心者です。
どうぞ、よろしくお願いします。
現在、テキストボックスにカンマ書式(###,#)を設定しているのですが、16桁以上の数値を入れると、16進数に変換されてしまうのです。
これを、変換させずに入力したままの値にするにはどうしたらいいのでしょうか?
すみませんが、ご回答を宜しくお願いいたします。

A 回答 (2件)

(1)数の最大表示桁数と関係あるのでは


(2)>16進数に変換されてしまうのです
指数表示の間違いではないですか。実例を挙げてみてください。
    • good
    • 0
この回答へのお礼

大変失礼しました。指数表示の間違いでした。
早々のご回答ありがとうございました。

お礼日時:2005/08/24 03:55

#1のかたがいわれてますように、最大桁数の範囲を超えています。

通常のデータ型では16桁以上の整数を扱うことはでません。(long,currency,integer等)
16桁以上の整数はdecimal型で扱えます。(最大28桁まで)
但し、decimal型は dim data as decimalのような定義はできません。variant型の内部表現でのみ存在します。
これは、Cdec関数により、実現可能です。詳細はマニュアルを参照してください。
以下は20桁の整数をテキストボックスにカンマ書式(###,#)で表示するサンプルです。
-------------------------------------
Dim data As String
Dim num As Variant
Dim cnum As String
cnum = "99999999999999999999"
num = CDec(cnum)
data = Format(num, "###,#")
MsgBox (data)
--------------------------------
    • good
    • 0
この回答へのお礼

ご回答ありがとう御座います。
サンプルを参考にさせていただきました。
decimal型の定義も出来なくて悩んでいたので、
かなり参考になりました。
本当にありがとうございました!

お礼日時:2005/08/24 03:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!