• 締切済み

Access2000で…その2(本題)

私のやり方は…「選択クエリー」によってテーブル2のクエリーを作り、それを編集にて「地域」のところの「表示」チェックをはずし、更に、そのすぐ下の「抽出条件」で [Forms]![フォーム名]![地域] というのを入れ、フォームの「県名」ボックスのプロパティ⇒データ⇒「値集合ソース」に、作ったクエリを入れてあり、最後に、プロパティ⇒イベント⇒「フォーカス取得時」にマクロを入れてあります。マクロは「再クエリ」です。 ここからが本題なのですが… ENTERキーにてカーソルを動かしていった時に、コンボボックスのところでは自動的に開くようにしようと思いまして、まず最初にフォームの「地域」のプロパティ⇒イベント⇒「フォーカス取得時」にコードビルダとして、「Me!地域.Dropdown」というのを入れました。 しかし…「県名」のところの「フォーカス取得時」には既にマクロが入っており、「Me!県名.Dropdown」というイベント(?)を入れることが出来ません。 このイベントとマクロを両立することは出来るのでしょうか? もしくは他にやり方があるのでしょうか? 長くなりましたけど、お分かりになる方、ご回答よろしくお願いいたします。 関連URL:http://oshiete1.goo.ne.jp/kotaeru.php3?qid=382461

みんなの回答

  • aptiva
  • ベストアンサー率36% (193/529)
回答No.1

県名の「フォーカス取得時」は、イベントプロシージャにして、そのプロシージャから、DoCmd.RunMacroでマクロを実行してはどうでしょうか。

kikumaro
質問者

お礼

全く違う方法で何とかできました。 ありがとうございました。

kikumaro
質問者

補足

早々のご回答、ありがとうございます。 実は私、全くの素人でして… 「地域名」⇒「県名」選択のやり方も、他の人ならもっとスムーズなやり方があるのでしょうけど、これしか浮かばず… それなのに、他の人からの受け売りで 「Me!地域名.Dropdown」を知った次第です。 だからVBAってよく分からないんです… 出来ればやり方を詳しくお願いできませんか?

関連するQ&A

  • Access2003でコンボボックスからデータを抽出したい

    自己啓発でAccess2003を勉強しています。 Access2003でコンボボックスで名前を選択して、データ(住所)を抽出したものをリストボックスに表示させたいのですがどこがまちがっているかわかりません。こんなことで3週間ぐらい悩んでいます。 回答またはアドバイスをお願いします。 もしくはもっと簡単なやりかたがあればお願いします。 (1)「氏名」、「住所」のテーブルを作成。テーブル名は「01データ」 (2)「氏名」、「住所」のクエリを作成。クエリ名は「クエリ1」 (3)フォームでコンボボックスとリストを作成。フォーム名は「印刷」 ⇒コンボボックスの名前は「検索」。 ⇒値集合ソースはSELECT [01データ].ID, [01データ].氏名 FROM 01データ; これで「氏名」が選択できた。 (4)クエリの「氏名」抽出条件にLike [forms]![印刷]![検索] (5)検索するマクロを作成。マクロ名「M検索」 アクションは 全レコードの表示 フィルタの実行 ⇒Where条件は[Forms]![印刷]![検索]=[クエリ1]![氏名] (6)マクロ「M検索」をコンボボックスのプロパティ「イベント」タブから変更時に設定する。 (7)フォーム「印刷」を開き、コンボボックスで氏名を選択すると『クエリ1!氏名』と表示されてしまいます。 (8)フォーム「印刷」のリストボックスは全レコードが表示されている。

  • アクセス マクロのメッセージボックス

    アクセス マクロのメッセージボックス マクロのメッセージボックスのメッセージ文に、フォームでフォーカスされているデーターを表示できませんか? 例えば メッセージ・・ [Forms]![フォーム名]![フィールド名]&"さんのデーターを削除しようとしています"~~~ ** 注意 ******************* *  ○×さんのデータを * 削除しようとしています *  よろしいですか? *  OK NO **************************** のような感じでできないでしょうか? 別フォームで作るしかないですか?

  • Accessであいまい検索するフォームをつくってみたんですが?

    Accessの初心者です。 本などをみながらあいまい検索ができるようなフォームをつくってみましたがフォームを開いた時、全レコードが表示されてしまいます。 クエリーの抽出条件はLike "*" & Forms!フォーム1!テキスト0 & "*"にしてテキストボックスプロパティの更新後処理でDoCmd.Requeryとしました。(意味がよくわからないんですけど) フォームを開いた時やテキストボックスになにも入力されていない時、全レコードが表示されないようにするにはどうすればいいのでしょうか? よろしくお願いします。

  • 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 よろしくお願いいたします。

  • Access DLookupについて

    お世話になります。 ローカルクエリがあり、その抽出された内容を取得したいの ですがどのようにすればよいでしょうか。 クエリのフィールドは「拠点名」「端末数」の2つのみで、当該クエリは フォーム上のテキストボックス内の拠点名を条件としてます。  クエリの「拠点名」の条件として、 Forms![テスト]![拠点名] 直接クエリを開くと、ちゃんとその拠点名で抽出され、端末数も 表示されてます(必ず1レコードのみ抽出されます)。 で、この抽出結果をVBAで取得したいのですが。。 調べてみたところDLookup関数を使えば取得できるようなのですが、 指定の仕方がいまいち分からずにいます。 たとえば、フォーム上に「端末数」というテキストボックスを作成し、 そのレコードソースの箇所に「= DLookup("端末数","ローカルクエリ","[拠点名] = '" & Forms![テスト]![拠点名] & "'")」と指定するものなのでしょうか。 それとも、VBAで Forms![テスト]![端末数] = DLookup("端末数","ローカルクエリ","[拠点名] = '" & Forms![テスト]![拠点名] & "'")と指定するのでしょうか。 両ケースともに Forms![テスト]![端末数]にはNullが入ってしまい、端末数を 取得できません。 ちゃんとフォーム上の拠点名が参照できてないのか、それともDLookupの指定の 仕方が悪いのか分からずにいます。 勉強不足で大変恐縮ですが、ご教授の程よろしくお願い致します。

  • Access2010についての質問です。

    アクセス「超」初心者です。 あるクエリ上のデータを検索(抽出?)して、フォームに反映させたいのですが、基本的なところで躓いております。 クエリ【Q基本データ】にあるフィールドは [階] [場所] [物] です。 [階][場所]は、別にテーブルがあり、そこから選ぶようになっています。 (→【T階テーブル】【T場所テーブル】) このクエリを基に作成したフォーム【F基本データ】上で、検索を行いたいのです。 フォーム【F基本データ】のヘッダー部分に、 テキストボックスを2つ[階検索][場所検索]と ボタンを1つ[検索] それぞれ配置し検索を行えるようにしたいのですが・・・ (テキストボックスはそれぞれ【T階テーブル】【T場所テーブル】からコンボボックスで選ぶようにしています) [検索]ボタン > プロパティシート > イベント > クリック時 の埋め込みマクロにアクション「フォームを開く」を入力していけば良いのでしょうか??? テキストボックスが2つだとマクロでは無理とか??? テキストボックス1つにつき、ボタンを1つ配置したら良いのか??? ご教授いただけましたら幸いです。

  • AccessのLikeの使用について

    こんにちは。 Accessでクエリなどに条件を設定する時、 Like [Forms]![フォームの名前]![テキストボックスの名前] と設定するのと、 [Forms]![フォームの名前]![テキストボックスの名前] とでは意味が違ってくるのでしょうか。 Likeの使い方がいまいち解っていません。 わかりにくい文章で申し訳ありませんが教えてください。 よろしくお願いします。

  • Accessで簡単なアプリケーションを作っています。

    Accessで簡単なアプリケーションを作っています。 サブフォーム内のコントロールをダブルクリックした時に、フォームAを表示し、 入力した条件で別のフォームBを表示するというものです。 判らないのが、フォームAを表示した時に、フォームAにフォーカスが移らない(Activeにならない) ということです。 サブフォームをダブルクリックした時のイベントに DoCmd.OpenForm "フォームA" Forms!フォームA.フィールドY = Forms!元フォーム.フィールドX としていますが、その最後に、 DoCmd.SelectObject acForm, "フォームA" や Forms!フォームA!フィールドY.SetFocus などと追加してみたりしましたが、同じです。 ためしに、ダブルクリックでなく、クリックイベントにしてみると、フォーカスが移ります。 つまり、一旦移ったフォーカスがダブルクリックの2度目のクリックで、元のフォームに 移っているという当たり前といえば当たり前の動作のようです。 クリックでは都合が悪いので、ファンクションキーに割り当てればOKなのでしょうが、 これは仕方のないものなのでしょうか? (以前のAccessはこんな動作をしなかったような気がするのですが、CPUが早くなったせい なのでしょうか?)

  • Access2000で…その1(説明が長いので…)

    いつもお世話になっております。 初めてデータベースを作成しているのですが、ちょっとした事で困っています。 テーブル1がフィールド名を「地域」として  [地域]  北海道  東北  関東  東海 またこれとは別に、テーブル2として「地域」と「県名」をフィールド名にして   [地域]    [県名]   北海道    北海道   東北     青森   東北     宮城   関東     栃木   関東     東京   東海     静岡   東海     三重 があります。 「フォーム」の中に「地域」と「県名」をコンボボックスにて作成して、「地域」のコンボボックスから選択した地域名に応じた県名を、フォームにある「県名」のコンボボックスをドロップダウンさせて選択するようにしました。

  • Accessのテキストボックスとコンボボックスの違い

    フォームにテキストボックスを3ケ用意し、テキストボックス名をtxt1,txt2,txt3としました。これにコマンドスイッチを作成し、機能を再クエリと設定しました。 フォームのサブフォームに再クエリの結果を表示するようにしました。 クエリのテキストボックス1の抽出条件は 条件  [Forms]![フォーム名]![txt1] または [Forms]![フォーム名]![txt1] Is Null    [Forms]![フォーム名]![txt1] Is Null テキストボックス2の抽出条件は 条件  [Forms]![フォーム名]![txt2] Is Null または [Forms]![フォーム名]![txt2]  [Forms]![フォーム名]![txt2] Is Null テキストボックス3の抽出条件は 条件  [Forms]![フォーム名]![txt3] Is Null または [Forms]![フォーム名]![txt3] Is Null [Forms]![フォーム名]![txt3] と設定し、テキストボックスにデータを入力し実行すると 正しい結果が得られるのですが、テキストボックスをコンボボックスに変更し、コンボボックス名をtxt1,txt2,txt3 とすると、抽出されません。 コンボボックスをテキストボックスのように扱うのには どうするのでしょうか。教えてください。

専門家に質問してみよう