過去ログ

                                Page     146
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼新しく開いたフォームにセットされた値が表示されない  yu-ji 02/12/17(火) 11:46
   ┗Re:新しく開いたフォームにセットされた値が表示されない  yu-ji 02/12/17(火) 12:26
      ┗Re:新しく開いたフォームにセットされた値が表示されない  yu-ji 02/12/18(水) 19:50

 ───────────────────────────────────────
 ■題名 : 新しく開いたフォームにセットされた値が表示されない
 ■名前 : yu-ji
 ■日付 : 02/12/17(火) 11:46
 -------------------------------------------------------------------------
   いつもお世話になってます。
また、基本的な質問で恐縮なんですが(^^;

フォームAから、フォームBを開く時に、フォームBにあるコンボボックスに
データをセットするように記述したのですが(以下のような感じ)、データ自体
は入っているようなのですが(Debug.Printで確認)、表示がされません。
FormのRepaintやDocmd.Repaint、Refreshも付けたりしてみたのですが
上手いこといきませんでした。

******
フォームAのクリックイベント

  DoCmd.OpenForm "フォームB"
  Forms!フォームB!コンボボックス = Me!テキストボックス
  DoCmd.Close acForm, Me.Name

******

と、あと前から思っていたのですが、上記の例でいくと、フォームAから
フォームBのコンボボックスの値を変更しても、フォームBの更新前処理イベント
なんかは発生しませんよね?
(フォーカスイベントなんかは実行されているのに)
これを発生させるようにするのに、なにか方法があれば教えてください。

よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:新しく開いたフォームにセットされた値が表示されない  ■名前 : yu-ji  ■日付 : 02/12/17(火) 12:26  -------------------------------------------------------------------------
   追記です。

環境は、Win98のAccess2000です。


不可能な場合。

一応、テキストボックスであれば、ちゃんとデータが入るので、
それを使って代案は考えてます。
更新イベントが実行されないのも、標準モジュールにしてそれを呼び出すとか
ってことで対応しようと思ってます。

 ───────────────────────────────────────  ■題名 : Re:新しく開いたフォームにセットされた値が表示されない  ■名前 : yu-ji  ■日付 : 02/12/18(水) 19:50  -------------------------------------------------------------------------
   最初の説明では不十分で、すみませんでした(^^;
必ず再現するもんかと思ったら、特殊?な条件でしか再現しなかったです。
ってことで、一応とりあえず解決できました。
ただ、いまいち複雑すぎて説明が難しいのですが(^^;
#いまだ混乱中。

とりあえず『たぶん』、以下のような感じだと再現するバグ?ではないかと思います。
#そして、以下のは最適化されたものではないと思われます(汗)。
#そして、まだ頭が”すっきり”した状態でないので、説明も不完全かも。
#あと別フォームじゃなくても、直接入力したデータ以外は、こうなる?

********

設定:
クエリAのフィールドBに、フォームCのコンボボックスDを条件に設定
フォームCのレコードソースに、クエリAを設定

再現手順:
フォームEのクリックイベントで、フォームCを開きコンボボックスDに
値を入れる

データ自体は入るが、表示されない。

回避方法:
クエリAを使わずに、それにあたるSQLを、動的にフォームCのレコードソースに設定。
(フィールドBの条件は、コンボボックスDの値をもとに別コード内で変更)
**********

あと、もう一つの更新イベントが実行されないのは、もうそんなもんだと思って
諦めて、標準モジュールで記述して、使いまわそうと思ってます。


以上、参考になれば。
#あんま、ならんかな(^^;

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 146