- ベストアンサー
こんなことがフォーム上で表示できますか?
フォーム(既定のビュー:帳票フォーム)詳細に、クエリで表示させた現在のtxt生産台数とtxt予定台数を比較して、テキストボックス(非連結)に「完了」や「生産中」と表示させたいと考えております。 はじめはテキストボックスではなく、ラベルの可視プロパティをVBAで制御を試みましたが、比較がうまく機能していなくて・・・ いろいろとチャレンジしましたが、くじけております。 ヒントなどいただけたらよろしくお願いします。 環境:WinXp Pro、Access2002
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
「txt生産台数」と「txt予定台数」のデータ型がともに数値型なのでしたら、 =IIF(txt生産台数-txt予定台数<0,"生産中","完了") 数値型ではないのでしたら、 =IIF(CLng(txt生産台数)-CLng(txt予定台数)<0,"生産中","完了") という式を、表示させたいテキストボックスのコントロールソースに 設定してやればどうにかなるのではないかと思います。 (先頭の「=」も含めて必要です) *関数CLngは、数字テキストを長整数型に変換します。但し小数は 丸めてしまうので、小数が必要な場合はCSngかCDblという関数 を使って下さい(使い方は同じです)。 但し、式をコントロールソースとするコントロール(=演算コントロール)は、 フォームの右クリックメニュー等による検索・並べ替えはできません。 ですので、No.1の方も勧められているように、同様の式をクエリで使用して、 演算フィールドにするなどした方が、使い勝手はいいかもしれません。
その他の回答 (2)
- CHRONOS_0
- ベストアンサー率54% (457/838)
>クエリでチャレンジしましたが、挫折しました。 挫折するほど難しいことじゃないと思いますが 生産台数が予定台数未満なら生産中でいいいのですね =IIF(生産台数<予定台数,"生産中","完了") という式フィールドを作るだけです
お礼
ありがとうございます。クエリでも実現できました。 次にチャレンジしているのはクエリで得た結果の”生産中”と”完了”のフォントの色を変えるように挑戦しています。
- CHRONOS_0
- ベストアンサー率54% (457/838)
帳票フォームの非連結テキストボックスに 何らかの値をセットすると全てのレコードに同じものが表示されてしまいますよ フォームで何とかするのではなくクエリの式フィールドで行いそれをフォームのソースにすればいいのでは
お礼
ご回答ありがとうございます。 仰るとおり、全てのレコードに同じものが表示されました。 クエリでチャレンジしましたが、挫折しました。
お礼
ご回答ありがとうございます。 とりあえず希望通りの結果が得られました。 同じ内容がクエリで実現できるように挑戦してみます。