解決済み

Accessのマクロで

  • すぐに回答を!
  • 質問No.261780
  • 閲覧数573
  • ありがとう数1
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 57% (86/150)

Accessのマクロでコントロールの移動のコマンドを実行しようとするのですが、どうもうまくいきません。
時間計算でA~Bの時間をdatediffで計算させ、その答えが負(マイナス)の場合はもう一度Bの時間を聞き直すというものを作る過程で、再入力を促すメッセージのあとBの値にNullを代入して、コントロールの移動でBにフォーカスを移動したいのですが、どうしてもBにフォーカスが移らず、Bの次のタブ順のコントロールにフォーカスが移動してしまいます。どなたかいいアドバイスください。

質問者が選んだベストアンサー

  • 回答No.2

ベストアンサー率 69% (23/33)

「フォーカス喪失時」イベントであれば
わざわざフォーカスを移動しなくても
マクロで「イベントのキャンセル」を実行すれば
テキストボックスへの再入力を促せますよ。
あとは「フォーカス喪失時」ではなく「フォーカス喪失後」イベントにしてみるとか…
それでも解決しない場合、
フォーム自体にも何かイベントが使われているかどうか気になるところです。
お礼コメント
nkeis

お礼率 57% (86/150)

「イベントのキャンセル」で解決しました。どうもありがとうございました。
これからもよろしくお願いします。
投稿日時 - 2002-04-30 22:40:00
感謝経済、優待交換9月20日スタート

その他の回答 (全1件)

  • 回答No.1

ベストアンサー率 69% (23/33)

あまり関係無いかもしれませんが
まず最初に以下を試してみて下さい。
BにNullをセット→Bにフォーカス移動
の順ではなく、
Bにフォーカス移動→BにNullをセット
の手順に変更。

それでダメな場合、
とりあえず、コントロールの移動先にBが指定してあるのは間違いではないですよね(^^;
それから、マクロ内でコントロールを移動させた後、
他のコントロールに移動させる処理は含まれていませんよね。
一応上にあげた、うっかりミスは無いものとして他の可能性を…
まず、コントロールB(テキストボックスですよね?)には
何かイベントが設定されていますでしょうか?
たとえば、「フォーカス取得後」等のイベントが設定してある場合は、その内容次第では
次のコントロールにフォーカスが移動してしまう可能性もありますし…
あと、移動先のコントロールを他のコントロール(タブ移動順で前後のコントロールとか)
に指定してみた場合はどうなりますでしょう?
そのあたりを追記願えますでしょうか。
補足コメント
nkeis

お礼率 57% (86/150)

うっかりミスの確認とタブ移動順を変更の確認は済です。ただ、「フォーカス喪失時」でマクロの起動をおこなうようにしています。Bの値が入力された後に非連結のテキストボックスに計算値を代入するようにしているのですが、これがいけないのでしょうか?またそうであれば、どの時点でマクロとつなげばいいのでしょう?
投稿日時 - 2002-04-30 12:58:11
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

特集


より良い社会へ。感謝経済プロジェクト始動

ピックアップ

ページ先頭へ