- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アクセスフォームにて連携したテキストボックス「の数値識別)
アクセスフォームのテキストボックス数値識別についての質問
このQ&Aのポイント
- アクセスフォームにて連携したテキストボックスの数値識別について質問です。テーブルをフォームにした際、コンボボックスとテキストボックスを利用して商品名と値段を表示させています。しかし、値段の合計を計算する際に文字列として処理され、意図しない値が表示されてしまいます。
- フォーム内の商品名と値段を表示させるためにコンボボックスとテキストボックスを使用していますが、値段の合計を計算する際に予期せぬ結果が生じています。文字列として処理されている可能性があるのですが、どの部分を修正すれば良いのでしょうか。
- アクセスフォーム内のテキストボックスの数値識別について質問があります。商品名と値段を表示させるためにコンボボックスとテキストボックスを使用していますが、値段の合計を計算すると意図しない結果が表示されます。文字列として扱われている可能性がありますが、修正する方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
「Column」プロパティを使用して取得した値は、元のテーブルでの データ型に関係なく、文字列扱いになってしまうようです。 このため、ご質問のように「1+1」が「2」ではなく「11」とテキスト連結に なってしまったものと思います。 これは、恐らく「Column」の仕様によるもので、Accessの設定では 解決はできないと思われますので、後は「CCur」関数などを使用して、 意図的にデータを変換してやるしかないのではないでしょうか。 【案1】「値段x」テキストボックスで変換 「値段1」のデータを、合計欄以外のコントロールでも参照する場合は、 この案(=各テキストボックスで予め通貨型に戻しておく)をお勧めします。 (値段1などの欄でも、通貨型で表示:右寄せ・「\」あり) ※値段2、値段3も同様に変更することになります。 現在: =[商品名1].[Column(1)] 変更後: =CCur([商品名1].[Column(1)]) 【案2】合計欄で変換 「値段1」等のデータを、合計欄以外で使用しない場合は、この案 (=合計欄で通貨型に変換する)の方が、修正箇所が少なくて済みます。 (値段1などの欄は、文字列として表示されます:左寄せ・「\」なし) 現在: =[値段1]+[値段2]+[値段3] 変更後: =CCur([値段1])+CCur([値段2])+CCur([値段3])
お礼
DexMachina様、御回答ありがとうございます。 アクセスの設定では解決できないのですね。 CCur関数を利用したところ、思い通りに計算することができました。 なぜなんだろうと3日くらいいろいろ試していたので 解決できてすっきりしました。ありがとうございます。