Access2003です。
フォームにサブフォームを設置し、直接テーブルを表示させています。
このサブフォームのテーブルのある行をダブルクリックしたら
その行のデータを他のフォームのオブジェクトにセットしたいのですが
行や行のデータ全てを取得は出来るのですが、サブフォームのイベントがEnterとExitしかなくて、イベント発生が出来ません。
フォームのダブルクリックでXとYを見て…と思ったのですがサブフォーム上ではフォームのダブルクリックイベントが発生せず。
サブフォームのテーブルはユーザーがソートする事もあるのでベタに上にテキストボックス等を置く事は出来ません。
どうにかダブルクリックで動作させる方法はありませんでしょうか?
No.2ベストアンサー
- 回答日時:
> どうにかダブルクリックで動作させる方法はありませんでしょうか?
前回の質問でも触れたように(下から2つ目の段落)、
http://oshiete1.goo.ne.jp/qa4952701.html
> サブフォームの「コントロールとしてのイベント」は「Enter」と「Exit」の2つしかありませんが、
> ソースオブジェクトに指定したフォーム(上記の例では「SF1」)側で、各種イベント(Open
> その他)が実行
されます。
ですので、No.1の方の回答にもあるように、『既定のビュー』(フォームのプロパティシートの
『書式』タブにあります)を「データシート ビュー」にしたフォームを、サブフォームのソース
オブジェクトにすれば、テーブルと同様の表示で、かつ、ダブルクリック等のイベントを発生
させることができます。
(但し、テーブル/クエリでは「サブデータシート」を表示できますが、これには非対応です)
【重要】
「フォームのダブルクリックイベント」は、データシートの外側(データが表示されていない、
グレーの背景部分)をダブルクリックした時にしか発生しません。
『データシート内でのダブルクリック』でデータを取得するレコードを指定する場合は、面倒
でも「各コントロールのダブルクリックイベント」に処理を記述してやる必要がありますので
ご注意下さい。
(以下のように、他のフォームへの代入を行う部分を、イベントとは別のSubとして作成して、
各コントロールではそれを呼び出す形にすると、コードを組むのも修正/管理するのも
比較的楽だと思います)
なお、ダブルクリックした時点で、コントロールの値は「現在のレコードのもの」しか参照
できないので、x,yなどで「どのレコードが選択されたか」の判定は不要です。念のため(汗)
Private Sub 社員コード_DblClick(Cancel As Integer)
Call FromAtoB
End Sub
Private Sub 氏名_DblClick(Cancel As Integer)
Call FromAtoB
End Sub
Private Sub FromAtoB()
With Forms!フォームB '別フォームの名前が「フォームB」の場合
!社員コード = Me!社員コード
!氏名 = Me!氏名
'(以下、データを転記する処理を必要な追加)
End With
End Sub
回答ありがとうございます。
直接で出来ないかと思っていたのですが、それは無理なのですね。
No.1の方の回答でテーブル仕様で作成しようとしてだめだったのですが
>、『既定のビュー』(フォームのプロパティシートの
『書式』タブにあります)を「データシート ビュー」にしたフォーム
で出来ました!
検索で「テキストうんぬん」と出てくるのもこれですね!
一度出来てしまえば色んなイベントをいじれそうです。ありがとうございました!
No.1
- 回答日時:
> フォームにサブフォームを設置し、直接テーブルを表示させています
これを変更すればできると思います。
手順)
・フォームウィザードで、そのテーブルを対象に表形式でフォームを作成します。
・ダブルクリックなどのイベントを設定します。
・動作等確認します。
・フォームのプロパティで、既定のビューをデータシートに変更し、保存します。
・親フォームのサブフォームコントロールのプロパティで、「ソースオブジェクト」に先ほど作成し保存したフォームを指定します。
※データのやり取りは、サブフォームコントロール名を経由して行います。
サブフォームコントロール名を「FSUB」とした場合、
親から子には(親側で実行)
Me.FSUB.Form.子テキストボックス = Me.親テキストボックス とか、
子から親には(子側で実行)
Me.Parent.親テキストボックス = Me.子テキストボックス とか
Forms("親フォーム名").親テキストボックス = Me.子テキストボックス など
で、どうなりますか。
回答ありがとうございます。
>これを変更すればできると思います。
あ、そうなのですね。このまま何とか出来ないかと思ってましたが、変える必要があるのですね。
早速やってみようとしたら
>・フォームウィザードで、そのテーブルを対象に表形式でフォームを作成します。
のとこで「フィールドが多すぎて作成出来ません」となってしまいました;;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
【お題】・忍者がやってるYouTubeが炎上してしまった理由
-
コンビニでおにぎりを買うときのスタメンはどの具?
コンビニでおにぎりを買うとき、何の具材を選ぶことが多いですか?
-
テレビやラジオに出たことがある人、いますか?
テレビやラジオに取材されたり、ゲスト出演したことある方いますか?
-
今から楽しみな予定はありますか?
いよいよ2025年が始まりました。皆さんには、今から楽しみにしている予定はありますか?
-
Access サブフォームでの選択行の取得
その他(データベース)
-
Access でレコードセレクタが押されたときのイベントは?
その他(プログラミング・Web制作)
-
サブフォームのイベント取得
Visual Basic(VBA)
-
-
4
Access VBAでタブコントロールで選択するタブをしていするには。
Access(アクセス)
-
5
Accessでサブフォームのボタンクリックイベントをメインフォームで処理したい。
Access(アクセス)
-
6
Accessのサブフォーム
Access(アクセス)
-
7
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
8
Accessでセレクタをダブルクリックで別フォームで詳細表示
Access(アクセス)
-
9
ACCESS──メインフォームでサブフォームのレコード件数をカウントしたい
Access(アクセス)
-
10
レコードをダブルクリックすると別フォームでひらく
Access(アクセス)
-
11
ラベルとテキストボックスのグループ化を解除したい
Access(アクセス)
-
12
サブフォームを非表示させる方法を教えて下さい
その他(Microsoft Office)
-
13
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
14
Access2000 サブフォームのRecordSet取得法
Access(アクセス)
-
15
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
16
ACCESS VBAサブフォーム(DATA SHEET)の値の取得方法
Visual Basic(VBA)
-
17
デフォルトでチェックボックスをオンにしたい。
その他(Microsoft Office)
-
18
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
19
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
20
角丸四角形を描きたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・ことしの初夢、何だった?
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access サブフォームでの選択行...
-
アクセスでサブフォームのレコ...
-
サブフォームでフィルタしたデ...
-
Access 複数フォームを...
-
Access2000、これはいったい・...
-
単票フォームと帳票フォームを...
-
複数項目でのサブフォームとの...
-
Accessのサブフォームから値を...
-
ACCESSでサブフォームの...
-
サブフォームでのダブルクリッ...
-
ACCSESS2013VBA フォームのレコ...
-
access サブフォームにリストを...
-
Access2000 サブフォームのReco...
-
サブフォームが見えなくなる。
-
レコードセットで得た結果をサ...
-
サブフォームのデータを保存す...
-
Access VBA acCmdSelectRec...
-
(ACCESS)条件に応じて、テキ...
-
Accessでのフォーム表示がうま...
-
Accessでタブの設定
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access サブフォームでの選択行...
-
Access2000、これはいったい・...
-
メインフォームとサブフォーム...
-
Access 複数フォームを...
-
(ACCESS)条件に応じて、テキ...
-
ACCSESS2013VBA フォームのレコ...
-
access サブフォームにリストを...
-
2回目に画面のレコードセットの...
-
Access2000 サブフォームのReco...
-
サブフォームが見えなくなる。
-
Accessのサブフォームから値を...
-
初心者です。accessで請求書を...
-
Accessで、一覧からクリックし...
-
Access VBA acCmdSelectRec...
-
ACCESSでfilterとorderbyについて
-
Accessでのフォーム表示がうま...
-
サブフォームでフィルタしたデ...
-
アクセスでサブフォームのレコ...
-
サブフォームのデータを保存す...
-
AccessのFormのみをスクリーン...
おすすめ情報