• ベストアンサー

「変更時」と「変更後処理」はどちらが先に動作するのでしょうか?

bonaronの回答

  • ベストアンサー
  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

> 例えばリストボックスに文字列を入力し、 リストボックスには文字列の入力ができません。 テキストボックス、または コンボボックスだと思います。 「変更時」は1文字入力するたびに発生します。 さらに、すべて入力が終わり、他のコントロールに移動するまで そのコントロールの値は変わりません。 よって、普通は「更新後処理」を使います。

lkhjlkhjlk
質問者

お礼

そうです。 テキストボックスとコンボボックスでした。すいません。 ありがとうございます。

関連するQ&A

  • Accessでパラメータークエリのパラメータを、フォームのリストボックスから選択することってできませんか?

    Accessで パラメータークエリのパラメータを、フォームのリストボックスから選択することってできませんか? あと、抽出されたテーブルの最後のリストの値を、テキストボックスに表示させるような、イベントプロシージャってどうのように書きますか? 以上、よろしくお願いします。

  • イベントプロシージャが動作しない

    アクセスVBAで、フォームでイベントプロシージャと指定し、該当イベントプロシージャをコーディングしてオブジェクト化しているのに、イベントプロシージャが動作しません。 何か良い解決方法がありましたら、教えていただけないでしょうか?よろしくお願いいたします。

  • (アクセス)全てのイベントプロシージャが無反応に

    何らかの原因でプロシージャやコマンドボタンに設定したマクロ等が無反応になる現象に苦慮しています。 多くのフォームの中で、この現象に関連するフォームは2画面あり、それぞれをフォームA、フォームBということで説明いたします。((1)~(4)) (1)フォームAのコマンドボタン押下でフォームBを開きクエリーのデータ(フォームAで指定した条件)  を表示しています。  フォームBで他のフォームと異なっているプロパティは次の通りです。  ・ポップアップ ----はい  ・作業ウィンド固定 --はい (2)フォームBにはレコードソース(クエリ)の値を表示する幾つかのテキストボックスとコンボボックス  が2つあり、それぞれをコンボA、コンボBとするとフォームBを開いた時はそれぞれにクエリーの   データを表示し、変更する場合はコンボAで選定した条件でクエリによりコンボBにデータを表示す  るようにしています。 (3)なお、コンボAの列数は2で、コンボボックスには列1のデータ(商品名)を表示するようしていて列 2の値(商品コード)を一旦テキストボックスに取り出し、そのコードでクエリによりコンボBのデータ  を表示しています。テキストボックスのプロパティのコントロールソースには次のように記述していま す。   =コンボ186.column(1)   ※=コンボ186がコンボAのことです (4)あと、フォームBにはデータをチェックするためのイベントプロシージャが幾つかとフォームAへ戻る ためのコマンドボタンがありますが他のフォームと比べても特に問題は無いように思えます。 以上のような環境でフォームAからフォームBを開いた時に、フォームBにはレコードソースであるクエリの値は全て表示するものの全てのイベントプロシージャ及び(3)で説明しました  =コンボ186.column(1) の処理が一切動作しなくなります。 しかし、次の操作により回復し、その後はACCESSを終了し再起動しても正常に動作します。  ・フォームBをデザインビューで開く  ・フォームBを開く時に設定しているイベントプロシージャを表示  ・イベントプロシージャをいじって閉じる。(内容は変更しない)  ・フォームBをホームビューで開く   だらだらと長くなり説明も不十分かと思いますが、原因がどうしてもわからなく困っております。 何か手がかりを教えて頂けたらと思い投稿しました。 よろしくお願いいたします。

  • phpでmysql_queryを使って以下の文

    phpでmysql_queryを使って以下の文を送るとエラーが出ます。 どうも、WHERE句で数字比較をするとダメなようです。 SELECT * FROM table1 LEFT OUTER JOIN table2 ON table1.name=table2.name WHERE turn<5 何がいけないのでしょうか? ・数字の5の部分はHTMLのテキストボックスからPOSTで貰っています。 ・WHERE句が無いとちゃんと動く。 ・WHERE句でLIKEを使った文字列比較は動く。 ・turnはphpMyAdminで見てもint(11)になっている。 ・実際は複数テーブルを連結したものです。わかりにくいので省きました。 ・PHP:5.4.29 ・MySQL クライアントのバージョン: 5.5.28 ・サクラレンタルサーバー(スタンダード)上での動作。

    • ベストアンサー
    • PHP
  • アクセスのサブフォームでのトラブル

    サブフォームにコンボボックスがあります。値集合ソースにクエリを指定しており、クエリの抽出条件でメインフォームのリストボックスの値を参照しています。 ところがなぜか、メインフォームのリストボックスを変更しても、それがサブフォームのコンボボックスに反映されません。どういうわけか、変更する前の値が反映されてしまいます。 ところがデータベースウィンドウからそのサブフォームを開くと、同じコンボボックスにメインフォームの変更がちゃんと反映されています。 メインフォームのリストボックスの更新後処理イベントでサブフォームのコンボボックスのリクエリを実行しています。 原因が分からず困っています。よろしくお願いします。

  • Visual Basic 2008 のリストボックスで項目を選択した時にイベントを起こしたい。

    VisualBasic2008のリストボックスで、リストボックス内の項目をクリックした時にイベントを起こしたいのですが、 Private Sub の後に何と書いたらいいか分かりません。 どなたかご存知の方がいらっしゃったらご解答お願いします。 どのように使いたいかというと、例えばリストボックスは 1:リンゴ 2:みかん 3:すいか と入っていたとします。 その時に2行目の「2:みかん」の列をクリックしたとしたら、ちょっと文字列を操作(いらない部分を切ったり)してLabel2に「みかん」を表示、という感じに使いたいです。 違う列をクリックする度に再取得。 実行中に、削除ボタンを押してその列を削除したら(こちらのボタンは出来ています)、違う列を自分でクリックしない限りは何も取得しないのが望ましいです。

  • AccessのDoCmd.ApplyFilterの使い方をおしえてください。

    社内で素人アプリケーション開発担当を買って出ているばか者です。 どうかこの私を助けてください。 商品マスターのようなものをサブフォームにして作っております。 メインフォームのコンボボックスの更新後処理イベントプロシージャに、そのサブフォームへDoCmd.ApplyFilterを実行させようとしてもうまく行きません。 「実行時エラー”2491”フォームがテーブルまたはクエリーを元に作成されていないので、このアクションは向こうです。」となってしまいます。ツールバーの選択フィルター使うとできるのですがイベントプロシージャでは不可能なのでしょうか。ご指導の程宜しくお願い致します。

  • コンボボックスのイベント 更新後処理をしたい

    VB.NETのテキストボックス、コンボボックスで アクセスのAfterUpdate(更新後処理)と同じ動きをするイベントはどれですか? 「TextChanged」を使うと 例えばテキストボックスに「あいう」の「う」を打ち終わってから実行したいのに 「あ」を入力するだけで実行されてしまいます。 「あいう」と入力し終わってから実行するイベントはどれでしょうか? よろしくお願い致します。

  • テーブルを使った置換

    Access2002 Accessでクエリ実行時に特定の文字列を置換したいと思っています。 今までは置換する文字列が1つだけだったので、replace関数を使って直接置換する文字列を書いていたのですが、置換する文字列が今後増えてきそうなのでテーブルで管理したいと思っています。 置換用テーブル 元 ,置換後 000022,002078 000218,002403 000447,002703 クエリは単純な選択クエリなのですが、上記のようなテーブルを使ってクエリ実行時に文字を置換する方法がわかりません。 よろしくお願いします。

  • VBA テキストボックスのイベントについて

    Microsoft ACCESS 2010を使用しています。 「テキスト0」という名前のテキストボックスがあり、 Me![テキスト0].Value = "こんにちは" というコードでテキストボックスの文字を変更します。 この時、テキストボックスの値が変更されたという条件でまた別のコードを動作させたいのですが、テキストボックスのイベントである、「更新前処理」「更新後処理」「ダーティー時」「変更時」では、動作しませんでした。 テキストボックスの値を変更する段階で別のコードを入力すれば対応は可能なのですが、「テキストボックスの値を変更した時」のタイミングで別コードを動作させることで、コードをまとめたいと考えています。 これに対して良い方法はありますか?よろしくお願いします。