• 締切済み

Access フォーム上のタブ移動

タブ移動について質問します。 フォーム上に検索ボタンがあり、検索ボタンを押すと、イベントプロシージャでデータを取得してきて、フォーム上のテキストボックスに結果を表示する仕組みをつくっています。 この検索ボタンを押した後、あるテキストボックスにタブ移動をしたいのですが、うまくいきません。現在、下記の状態です。 ・検索ボタンを押さずTABキーを押すと、正しくタブ移動する(プロパティのタブ移動順のとおり) ・コード上には「Me!テキストボックス名.SetFocus」を記述 試しに、「Screen.ActiveControl.Name」で確認したところ、移動させたいテキストボックス名が取得できました。また、検索ボタンを押してデータ表示後、別のウインドに切り替え、Accessの画面に戻ると、移動したいテキストボックスにカーソルが存在(点滅)しています。 この事から、タブ移動ができていないのではなく、検索ボタンを押してデータを表示すると、タブが正しく移動しているにもかかわらず、画面上で表示されていないの(点滅していないので入力も、そこからのタブ移動もできません)では?と思います。 「Repaint」などでいろいろ試行錯誤してみたのですが、解決できなかったので、質問をさせて頂きました。 検索ボタンを押した後、正しくタブ移動する方法を教えてください。 環境はAccess2010です。回答をお願い致します。

みんなの回答

回答No.1

こんにちは。 Formをリフレッシュすればよろしいかと・・・。

OKWaveUsers
質問者

補足

回答ありがとうございます。 すでにRefreshは試し済みです。結果が伴わなかったので、ここで質問をさせて頂きました。 コマンドはMe.Refreshですが、もし誤りがあれば再度ご指摘ください。

関連するQ&A

  • 任意のタブのページをアクティブにするには

    アクセス2007です。 フォームにタブコントロール(タブ0)を置きました。 テキストボックス(テキスト_ページ番号)とコマンドボタン(コマンド_移動)も置いたのですが、 コマンドボタンをクリックしたら、 テキストボックスに入ってる値のページ番号に移動するプログラムを組みたいのですが コードが分かりません。 例えば、テキストボックスに「2」と入力して、コマンドボタンを押したら、 ページ2が選択され前面に表示されるようにしたいです。 Private Sub コマンド_移動_Click() Me!タブ0.Pages(Me.テキスト_ページ番号.Value).SetFocus End Sub としてみたのですが、エラーになってしまいます。 ご回答よろしくお願いします。

  • ACCESS2000 あいまい検索の結果からデータをフォームに取得

    MSACCESS2000にてフォームを作り、テキストボックスに入力された文字で、データをあいまい検索し、複数表示するようになってます。like [テキストボックス]&"*" 複数表示されたデータから1つを選択し、フォームのテキストボックスに取得することは可能なのでしょうか? ACCESSを始めたばかりで、いろいろ調べたりしているのですが、可能かどうかが知りたいのです。どうか宜しくお願いします。

  • Accessのフォームでマウスでの操作が制限される

    Access初心者です。 あるフォームを作っていて、変更をしているうちに TABボタンでしかカーソル移動ができなくなり、 ボタンもTABで移動してからでないとマウスでクリックすることができなくなりました。 元はマウスで別のテキストボックスにカーソル移動できたり TAB移動しなくてもボタンがクリックできたのですが… どうすればもとに戻せるか、教えていただけないでしょうか。 あとできればなぜそうなったのかも。。 <作業環境> Windows7 Microsoft Access2007 SQL Server <作っていたフォーム> 開始日付と終了日付を入力し、表示ボタンを押下すると 指定範囲のデータを集計したレポートが表示される。 クリアボタンで日付がクリアされる。 閉じるボタンでAccessが終了する。 <変更した内容> (1)初期表示のカーソル位置が表示ボタンになっていたので、 タブオーダーで開始日付が初期位置になるように変更。 (2)同じフォーム上で、 指定した日付の明細がクエリで見れるように、 指定日付入力ボックス、表示ボタン、クリアボタンを追加。 それぞれにイベントを追加。 よろしくお願いいたします。

  • アクセスのフォームで期間検索するには?

    アクセスの検索フォームで、レコードを別フォームで表示して、表示したフォームでフィールド毎に検索しています。 日付の部分だけ、検索方法が分からず、なかなか出来ない状態です。 このフォームに、開始と終了のテキストボックスを設置しています。 ボタンを押して、開始と終了の期間のデータを表示出来ればと思います。 宜しくお願いします。

  • Accessで起動時にフォームが開かれるのですが・・・

    Accessで起動時にフォームが開かれるようになっていて、そこに設置してあるマクロボタンをクリックするとメインフォームが開くようになっています。 このマクロボタンをクリックしメインフォームを開いて、メインフォームに設置してあるテキストボックスに期間を入力してサブフォーム上にその期間内のみのデータが表示されるようにしてあるんですが、どういうわけか、そのテキストボックスにカーソルが移動しない為、入力できない状態になってしまいます。 デザインビューに切り替えた後、再度ビューを切り替えると、カーソルが移動できるようになるのですが、どのようにすれば、カーソルが移動するようになるのでしょうか?? どうぞご回答の程宜しくお願いいたします。

  • AccessのVBAにおいて,アクセスフォームに表示されている「値」を

    AccessのVBAにおいて,アクセスフォームに表示されている「値」を変数の中に格納したい。  例えば,オートフォームの単票形式でフォームを作成した場合,「番号」「製品」といったフィールドが2個あるテーブルを使うと,「番号」「製品」という名前のテキストボックスが2個ほどできます。 (フィールド名やテキストボックス名は問題ではありません。) このフォーム上に「ボタン」を配置し,このボタンをクリックした時に,「製品」というテキストボックスの内容を,メッセージボックスで表示させたい。 MsgBox (Me.製品.Text) と書いてもエラーとなります。 実際には,このフォームで欲しいデータを見つけた時,ボタンクリックで,テキストボックスに表示されている内容をグローバル変数に格納したいのですが,方法が分かりません。 Access 初心者です。どなたかよろしくお願いします。

  • アクセス フォーム単表形式について

    いつもお世話になります。 アクセスの単票形式フォームで、テキストボックスに数値を表示させています。タイマーで元データのテーブルを読み込んだ時に、最後に更新したテキストボックスがアクティブになっている(テキストボックス上でカーソルが点滅している)のですが、アクティブを解除する方法はありますでしょうか。

  • Access2010 SetFocusが当たらない

    Access2010です。 VBAにて、あるフォームの、デザイン上、「詳細」の中に存在しているテキストボックスにSetFocusでフォーカスを当てようと思ってます。 1 フォームロード時、フォームの「詳細」は非表示(当然、テキストボックスも非表示) 2 ボタンクリック時、フォームの「詳細」を表示し、テキストボックスにフォーカスを当てる という動作をしているのですが、2でテキストボックスにフォーカスがフォーカスが当たりません。どうしたらフォーカスが当たるのでしょうか? 以下、コードです。 Private Sub Form_Open(Cancel As Integer) Me.詳細.Visible = False End Sub Private Sub cmdボタン_Click() Me.詳細.Visible = True 'テキストボックスにフォーカスを当てる Me.txtテキスト.SetFocus End Sub よろしくお願いいたします。

  • アクセスのフォーム

    アクセスのフォームで、ヘッダー部にボタンを3つ作成し、それぞれ名前を"1","2","3"とします。そして、全てのボタンに埋め込みマクロで"1"にはクエリ1を実行する、"2"にはクエリ2を実行する、"3"にはクエリ3を実行するというマクロを埋め込みます この時ボタンをクリックすると、その結果がフォームの詳細部分に表示させる事はできますか?例えば"2"をクリックすれば詳細部分にクエリ2の結果が表示される様にしたいです。それぞれのクエリの構成は異なります。テーブル形式で表示されるのではなく、フォームの形式で表示される様にしたいです。 表示された文字をクリックするとヘッダー部のテキストボックスにその文字が入力され、クエリの抽出条件がそのテキストボックスになっており、クエリ実行ボタンを押せばその抽出条件でクエリが実行され、詳細部分に表示・・・という様に検索できる様にしたいです。文字をクリックすればテキストボックスへというのは以前この場で教えて頂きました。 説明がうまくできなくてすいません。誰か教えて下さい。 よろしくお願いします。

  • Accessフォームパラメータについて

    Access2000(2002のライセンスがあったのでアップグレード予定)で、プログラムを作ることになりました。 フォームAに、テキストボックスで文字を入力させます。 その文字をキーにして、データベースを検索し、 その情報をフォームBに上記キーをヘッダにテキストボックスで表示し、 複数業の表形式で、データを全て表示・スクロールしたいと思っています。 その時に、どのようにしてこのキーを利用していけば実現できるのか、イメージできないで困っています。 フォームAのテキストの値をキーにデータベースを読み、 該当するレコードを、全て、表形式のフォームBに表示する。 同時に、フォームAのテキストの値であるキーはヘッダ部に表示し、値が変更され、更新ボタンを押せば、検索しなおして、表示しなおす。 表示された明細には、変更ボタンを儲けて、 変更フォームで表示して更新させて、終わったら画面が表形式に戻ってくる。 こんな機能なのですが・・・。 パラメータ値であるAの値の受け渡しがうまくいかず困っていますので、どうしたら、実現できるか教えてくださいませ。 ややこしくてすみません。 アドバイス宜しくお願いします。

専門家に質問してみよう