
こんにちは。度々質問させていただき、いつもお世話になっております。
今作成しているものの流れを下に書きます。
テーブル:
「社員マスタ」、「社員マスタ_抜粋」
※「社員マスタ_抜粋」は「社員マスタ」から最低限必要な項目だけをクエリで抜き取ったテーブルです(例えば、社員ID、氏名、所属部署など)
フォーム:
「社員マスタ」(表形式)、「社員マスタ_抜粋」(表形式)、「社員マスタ_詳細」(単票形式)
※「社員マスタ_詳細」は「社員マスタ」テーブルのレコードを一件一件単票形式で見れるフォームです
●実現させたいこと
1、「社員マスタ_抜粋」フォームの中に作成した「詳細」ボタンをクリック
2、「社員マスタ_抜粋」のカレントレコードの社員CDと同じ社員CDのレコードを
「社員マスタ」から探し、「社員マスタ_詳細」フォームにて表示
●手順2を行うプログラム手順として(自分の頭の中で)
1、「社員マスタ_抜粋」フォームよりカレントレコードの社員CDを引数として、
「社員マスタ_詳細」フォームに渡す(Docmd.OpenArgs 使用)
2、「社員マスタ_詳細」フォームロード時に引数の社員CDと同じ社員CDをもつレコードを
「社員マスタ」テーブルから検索(FindRecord?)
3、発見したレコード内容を「社員マスタ_詳細」フォームに表示
自分で言うのもなんですが、上で書いたプログラム手順はものすごく
効率が悪いのではないかと思います。
またFindRecordでの検索も、このケースに適しているのかわかりません。
プログラム作成の流れ、この部分にはこんな関数がいいんじゃないか?
等、何でも構いませんのでどなたかいいアドバイスをお願いします。
No.4
- 回答日時:
今考えてあおられる手順でもかまわないと思いますが
難しいことをしなくとも
詳細フォームのソースをクエリにし、社員CDの抽出条件欄に
=Froms!社員マスタ_抜粋!社員CD
と書くだけでいいいのでは
詳細フォームを開くボタンは社員マスタ_抜粋の詳細セクションに置きます
これで全てのレコードにボタンが表示されるようになり
詳細を見たい社員のボタンを押せばそのレコードがカレントになりますから
詳細フォームはその社員のものが開きます
No.3
- 回答日時:
パラメータの一字一句は、あくまでも例示です。
・コマンドボタンウィザードを起動。
・[フォームの操作]-[フォームを開く]を選択。
・該当するフォームを選択。
・[特定のレコードを表示する]を選択。
・関連付けるフォールドを選ぶ。
・最後まで進む。
Private Sub コマンド74_Click()
On Error GoTo Err_コマンド74_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "売上伝票"
stLinkCriteria = "[ID]=" & Me![売上伝票ID]
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_コマンド74_Click:
Exit Sub
Err_コマンド74_Click:
MsgBox Err.Description
Resume Exit_コマンド74_Click
End Sub
で、このようなコードが生成されます。
冗長ですので、次のように修正します。
Private Sub コマンド74_Click()
On Error Resume Next
DoCmd.OpenForm "売上伝票", , , "[ID]=" & Me![売上伝票ID]
End Sub
との手順を試して下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- SQL Server AccessのInsertクエリのあとつづけてDeleteクエリを行いたいがSQLでどう書いたらいい 3 2023/05/27 14:12
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- Excel(エクセル) VBA でvlookup エラーなどは削除したい 8 2022/12/30 04:03
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Excel(エクセル) IFERROR、SMALL関数について 2 2022/08/22 23:40
- Excel(エクセル) エクセル関数の詳しい方に質問です 2 2023/01/12 12:48
- その他(データベース) accessでの請求管理について 2 2022/06/13 21:51
- Excel(エクセル) Excel関数 情報引用する方法 4 2022/07/31 20:59
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS ツリービューの作り方
-
EXISTSを使ったDELETE文
-
【SQL】あるマスタのレコードに...
-
AS400にてサブファイルレコード...
-
無駄に見える結合の回数を減ら...
-
SQL2005 クエリ文について
-
Accessの実行時エラーについて
-
ACCESSでクエリ作成時複数のフ...
-
AccessVBA データの受け渡し、...
-
テーブルの正規化について
-
フィルターかけた後、重複を除...
-
差し込み後、元データを変更し...
-
SQLで特定の項目の重複のみを排...
-
SELECT 文 GROUP での1件目を...
-
エクセルで最後の文字だけ置き...
-
Outlook 送受信エラー
-
for whichの使い方
-
外部参照してるキーを主キーに...
-
イェイイェイイェイ イェイイェ...
-
1日に1人がこなせるプログラム...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXISTSを使ったDELETE文
-
SQL文で、合計が0のレコードを...
-
Accessの実行時エラーについて
-
ACCESS ツリービューの作り方
-
ACCESS 商品毎の最新の単価を設...
-
日付により変動する「単価」を...
-
アクセス フィールド名に変数...
-
ACCESSでDLookUpすると、不正な...
-
Excel VBA ADODB
-
ACCESSでクエリ作成時複数のフ...
-
異なるデータベース間のテーブ...
-
ACCESSのマスタの変更について
-
Access2013で商品に複数の単価...
-
前月の取得について
-
日付の範囲検索で
-
アクセス★非課税、課税の合計金...
-
SQL2005 クエリ文について
-
AS400にてサブファイルレコード...
-
自己結合について
-
ビューの更新タイミング
おすすめ情報