受注管理システムをAccess2000で開発しています。商品選択のリストボックスのみのフォームを作成、その商品をダブルクリックすると、例えば受注入力のフォームに自動的に商品IDが入っていくようにしてあるのですが、この商品選択のフォームを、別のフォームでも使いたいのです。商品の原価入力フォームとか。だけれども、商品選択フォームダブルクリックのところに[Forms]![受注入力フォーム名].[code] = [Forms]![商品選択フォーム名].[interior]というようにフォーム名を書いてしまっているので、使いまわしはできないのでしょうか?どういう条件を書けば、違うフォームにもダブルクリックすると商品IDが入っていくのでしょうか?教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

違うフォームでも、商品IDを入れるのはテキストボックスですよね?



フォームでダブルクリックする時にグローバル変数にコン
トロールを設定し、リストの設定時にそのコントロールの
テキスト(バリュー)にデータを設定してやればいいので
はないでしょうか?

'***** グローバル変数 *****
Public SyohinCtrl As Control

'***** ダブルクリック時 *****
Set SyohinCtrl = Me.txtCtrl1

'***** リストのダブルクリック時 *****
SyohinCtrl.Value = "値"

で、どうでしょうか?
    • good
    • 0
この回答へのお礼

ありがとうございました。試してみます。

お礼日時:2001/06/29 20:17

さてなにを元に飛び先フォームを判断するのでしょうか?


呼び元の画面?
商品選択の画面?

呼び元の画面ならグローバル変数にでも呼び元フォーム名でも入れて(呼び元で処理をします。)
SELECT CASE文で分岐処理で可能なはずです。


SELECT CASE グローバル変数
CASE "受注入力フォーム"
[Forms]![受注入力フォーム名].[code] = [Forms]![商品選択フォーム名].[interior]
CASE "原価入力フォーム"
[Forms]![原価入力フォーム].[code] = [Forms]![商品選択フォーム名].[interior]
CASE ELSE
'例外処理があれば

END SELECT

この回答への補足

すみません。もう少し教えてください。
各フォームで商品選択ボタンをクリックして、同一の商品選択フォームを呼び出すとき、
どのフォームに呼ばれたか、呼び元フォーム名を変数に代入するやり方を教えて下さい。
お願いします。

補足日時:2001/06/21 17:47
    • good
    • 0

このQ&Aに関連する人気のQ&A

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


人気Q&Aランキング