• 締切済み

ACCESSのデータシートビューでレコード(行)をクリックした時イベントを発生させるには

ACCESSのフォームにデータシートビューが貼り付けてあります。 ここにはAのテーブルのレコードがいくつか表示されていますが、 この行(レコード)の一部をクリックするとイベントを発生させるということは できるのでしょうか? またこのレコードの特定の値を取得するには? 例:TABLE名 野菜 フィールド:野菜名、値段 レコード1:とまと、100円 レコード2:キャベツ、200円 レコード3:なす、150円 1行で表示されているレコード3のなすか150円またはレコードセレクタをクリックすると イベントを発生させる。 150円という金額を取得する *なす、150円個別でクリックしたときのイベントは受け取れるのですが… フィールドが多い場合にどこをクリックしても同じイベントを発生させたいのです。 以上わかりにくい文章ですみませんが、宜しくお願いします。

みんなの回答

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

デザインビューでフォームのプロパティのクリック時イベントを設定する。

pokepotto
質問者

お礼

早速のご回答どうもありがとうございました。 フォームに張り付いているTABLE上のレコードで、クリックのイベントがきかないようなのですが、質問させていただいた内容に関してはどうにかクリアすることができました。 まだ全体としての問題が解決していないので また別に質問させていただきたいと思っていますので もし、そちらのほうがお分かりのようでしたら、 是非お力をお貸しください。(^^)

pokepotto
質問者

補足

早速のご回答ありがとうございました。 記述し忘れたのですが、メインフォームにサブフォームが張り付いており、 そのサブフォームに表示されたTABLEのレコードをクリックすると VBAで記述されたFUNCTIONが呼び出されるようにしたいのです。 TABLE以外の部分でクリックするとうまくいくのですが、 TABLE(表示されたレコード)上ではうまくいきません。 しかし、クリックに関しては、レコード移動のイベントで レコードの値をとることができました。 レコード上でダブルクリックをしたときにFUNCTIONが呼ばれるようにするのが 最終的な目的でしたので、いったんしめきって、別に質問しようと思います。

関連するQ&A

  • ACCESSの検索結果のレコード移動時イベント

    Access2010です。 F_マスタにF_サブのサブフォームが組み込まれています。 F_マスタには検索ボタンがあって、その検索結果がF_サブに表示されます。 その検索結果についてレコード移動時イベントを使い、クリックしたレコードの処理を行っています。 ところが、検索結果の1行目だけイベントが発生しません。 1行目以外ではイベントが発生し、その後は1行目でも発生するようになります。 表示直後はカレントレコードが1行目に存在するため、1行目をクリックしても移動とみなされない? そこで、表示直後でも1行目のイベントを発生させる何か良い方法はないでしょうか?

  • Access でレコードセレクタが押されたときのイベントは?

    こんにちわ Access2000 でデータシート形式のフォームを作成します。 何れかのレコードが選択された時のイベントの発生方法を調べています。 詳細セクションに配置されたコントロールに対するイベント出はなく、 レコードセレクタが押された場合のイベントです。 ご存知の方いらっしゃいましたら、よろしくお願い致します。

  • GridViewの行選択イベントを発生させるには?

    visual studio 2010でwebアプリケーションを作成しています。 GridViewの行をクリックしたことをjavascriptで認識したいので行の一番左のセルにチェックボックスを張り付けることにより実現できたのですが、チェックボックスとかボタンとかを張り付けないで行のどのセルをクリックしてもイベントを発生させるにはどのようにすればよろしいでしょうか? コントロールを張り付けたくないのは、1行に表示できる文字の領域がせまくなってしまうためです。

  • ACCESSの既存テーブルに、EXCELデータをレコードとして追加する事は可能ですか?

    ACCESSの既存テーブルに、EXCELのデータをレコードとして追加する方法はありますか? 又は方法を説明しているサイト等ありましたら教えて下さい。 EXCELのデータは、シートの1行目に各項目名、2行目以降に各データが順次入力されている状態です。 尚、EXCELの項目名と、ACCESSのフィールド名は一致していない状態です。 例えば、 EXCELの項目名:「予約ID」、「予約名」、「予約日」 ACCESSのフィールド名:「rsv_id」、「rsv_name」、「rsv_date」 のような感じです。 ACCESSのフィールド「rsv_id」には、EXCELの「予約ID」項目のデータを入れなければいけません。 こういうことは出来るのでしょうか? ※マクロは使わないようにしたいです。 いったんACCESS上で、EXCELのデータを元に新規テーブルを作成してから、 その新規テーブルからデータを抽出して、既存テーブルにレコード追加するような、SQLを書けばできるでしょうか?

  • Access データ表示 完了時のイベント

    Access2003で開発しております。 フォームのLoadが完了したというタイミングを取得したいのですが、 Formのイベントでそのようなイベントはありますでしょうか? 本当は「各テキストボックスにテーブルからのデータがセットされた後」 というタイミングが取得したいのですが、VBとは違い、ロジックに よる値の変更ではChangeイベントは発生しないようで・・・、 AfterUpdateイベントも、フォーカスを当てて直に編集しないと 発生しないようなので・・・。ですので、値セットが完了した= Form_Loadが完了した、というようなイベントがありましたら ご教授願いします。宜しくお願いします。

  • Access データを複数行に貼り付ける方法

    Access2013 テーブルの フィールドで 1つのセルのデータ(例/商品名)をコピーし、 同じフィールドの連続した複数行に貼り付ける方法を教えて下さい。 Excelの様にやってみたのですが出来なかったので。 宜しくお願いします。

  • Access レコード移動時イベントでサブフォーム

    お世話になります。 親フォーム Aがあります。(データソースが存在します) その中にサブフォームBがあります。(データソースが存在します) 親フォームのレコード移動時のイベントで、いつもサブフォームのレコードの最後を表示したいのです。そこで・・・ 親フォームAの レコード移動時イベントに Private Sub Form_Current() Me.B.SetFocus DoCmd.GoToRecord , , acLast End Sub 上記を記述すると、一番初めはきちんとサブフォームBのレコードは最後を表示するのですが、以後、親フォームのレコードを動かすと、親フォームの最後のレコードをさしっぱなしになってしまいます。 Me.B.SetFocus DoCmd.GoToRecord , , acLast これの後にどんな記述をすれば、親フォームのレコードを動かすと同時にサブフォームBも最後の行に移るようにできますでしょうか? 何卒よろしくお願いいたします。

  • アクセス;同じレコード内のデータを数字で指定して

    あるクエリ上の、同一のレコードの中にある4つのデータ中から、一つを指定して、表示するクエリを作りたいのですが、どのようにすればよいのでしょうか。 現在、以下のようなフィールドです。 「指定個人名,個人名(1),個人名(2),個人名(3),個人名(4)」 「指定個人名」には半角数字の1から4までが任意で入ります。 「個人名(1)~(4)」のうちどれかを、「指定個人名」の数字で指定するとします。 「個人名(1)~(4)」のうち指定されたデータが、同一レコード内の新しいフィールドに表示されるようにしたいです。 しかしあるレコード内のデータを、同一レコード内の別のデータで指定するというやり方が思いつきません。 どうやって「指定個人名」の数字1~4を、「個人名(1)~(4)」までのデータと関連付けて、新しいフィールドに呼び出せば良いのでしょうか。 クエリ解説の本をひっくり返しましたが、どうも一般的な方法ではないようで、やり方が見つかりません。 初心者ゆえに質問の内容に不備があるかもしれませんが、訂正・補足いたしますので、ヒントだけでも結構です。 どうぞ教えてください。

  • ACCESS詳細_Formatイベントが発生しない

    こんにちは。 ACCESS初心者で、初めて質問をさせて頂きます。よろしくお願いいたします。 Access2010のReportで詳細_Formatイベントが発生しません。 (詳細_Formatイベントにdebug.printのみを記入していますが、イミディエイトに表示されない)。 ちなみに、Report_Open / Report_Closeはイベントが発生します。 レコードソースとして、クエリーを指定していますが、これらは関係ありますでしょうか。 よろしくお願いいたします。

  • VBAでイベント発生時に自分の呼ばれたコマンドを知る方法

    イベントが発生したときに自分がどのオブジェクトから呼ばれているイベントか知る方法ってありますか?あるいは上から何番目のコマンド(縦に同じコマンドがズラッと並んでいるイメージ)から呼ばれているかをイベント内部から知る方法ってありますか? 今コーディングで新規フォームを作ってそこにレコード数だけコントロールを配置するというコーディングを考えております。 そのコマンドにクリックイベントも発生させたいので、コントロールを作成してイベントを埋め込むという作業まではできたのですが、不特定多数のコマンドボタンの作成設置方法に悩んでおります。 VBAではコントロールの配列はできないので、コントロールの名前などを全て変えて作らなければなりません。そこをどうするかで頭を悩ませています。 しかも後でどのコントロールがクリックされて呼ばれたのかも知りたいので、コントロール配列のindex番号みたいなものを取得しておく必要もありますが、何か良い方法はないでしょうか? いっそのことコマンドの名前を数字にして、後でそのコントロール名とかオブジェクトのメソッドを参照してインデックス番号を取得・・・みたいなことを考えてたのですが、たしか既存の(目に見えて形となっている)(オブジェクト名自体を持っている)コントロールのメソッドを使用するのはかなり不可能だったような気がするので、タグやオブジェクト名も拾えない気がします。 VBなら同じイベント内容のコマンドを全て配列にしてまとめてクリックイベントにしてそのIndexを見ればプロシージャ1つで済みますが、VBAで似たような方法をする方法を教えてください。 ループで回しながらオブジェクト名の違うコントロールを配置する方法は自分でなんとかやってみますのでindex番号の取得の方法だけお願いします。

専門家に質問してみよう