Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13 / 2244 ツリー ←次へ | 前へ→

【13099】サブフォームについて まゆ 16/10/28(金) 11:39 質問[未読]
【13101】Re:サブフォームについて hatena 16/10/28(金) 13:43 回答[未読]
【13103】Re:サブフォームについて まゆ 16/10/28(金) 14:34 質問[未読]
【13105】Re:サブフォームについて 亀マスター 16/10/28(金) 18:51 回答[未読]
【13107】Re:サブフォームについて まゆ 16/10/31(月) 13:12 お礼[未読]

【13099】サブフォームについて
質問  まゆ  - 16/10/28(金) 11:39 -

引用なし
パスワード
   フォーム内に
・顧客No.
・企業名
・サブフォームが複数
があり

レコードごとに
「顧客No.」が同じデータが紐づいて表示されるようにしているのですが、
新規入力するときに
顧客No.を入力した値を同じレコードのサブフォームにも認識させ、入力することはできないでしょうか。

現在は
顧客No.、企業名を入力し
サブフォーム内の入力するとエラーになり、
データベースを確認すると
顧客No.が0でサブフォームの値が保存されてしまっています。

宜しくお願い致します。

【13101】Re:サブフォームについて
回答  hatena  - 16/10/28(金) 13:43 -

引用なし
パスワード
   >レコードごとに
>「顧客No.」が同じデータが紐づいて表示されるようにしているのですが、

この紐付けは、サブフォームコントロールの「リンク親フィールド」「リンク子フィールド」にリンクするフィールド名を設定しているのですか。

もし、クエリの抽出条件かフィルターで設定しているなら、それはやめて、上記の方法に変更してください。

>新規入力するときに
>顧客No.を入力した値を同じレコードのサブフォームにも認識させ、入力することはできないでしょうか。

そうすれば、これは自動でAccess君がやってくれます。

【13103】Re:サブフォームについて
質問  まゆ  - 16/10/28(金) 14:34 -

引用なし
パスワード
   ▼hatena さん:
>>レコードごとに
>>「顧客No.」が同じデータが紐づいて表示されるようにしているのですが、
>
>この紐付けは、サブフォームコントロールの「リンク親フィールド」「リンク子フィールド」にリンクするフィールド名を設定しているのですか。
>
>もし、クエリの抽出条件かフィルターで設定しているなら、それはやめて、上記の方法に変更してください。

現在クエリの結合でテーブルを繋げている状態です。

テーブルA
・顧客No.
・顧客名

テーブルB
・顧客No.
・担当者
・電話番号

テーブルC
・顧客No.
・営業担当
・契約日

クエリ1
テーブルAとBを顧客No.で結合し
・顧客No.(A)
・担当者
・電話番号

クエリ2
テーブルAとCを顧客No.で結合し
・顧客No.(A)
・営業担当
・契約日

フォーム
テーブルAを元に
・顧客No.
・顧客名
サブフォーム1
クエリ1
・担当者
・電話番号
サブフォーム2
クエリ2
・営業担当
・契約日

としています。

どう直せば(つくり直しかもしれませんが。。。)いいか教えていただけないでしょうか。。。

【13105】Re:サブフォームについて
回答  亀マスター  - 16/10/28(金) 18:51 -

引用なし
パスワード
   ▼まゆ さん:
>▼hatena さん:
>>>レコードごとに
>>>「顧客No.」が同じデータが紐づいて表示されるようにしているのですが、
>>
>>この紐付けは、サブフォームコントロールの「リンク親フィールド」「リンク子フィールド」にリンクするフィールド名を設定しているのですか。
>>
>>もし、クエリの抽出条件かフィルターで設定しているなら、それはやめて、上記の方法に変更してください。

私が以前に紹介したやり方をご覧になり、フィルターで設定されたようですね。
私の責任ですが、hatenaさんがおっしゃるとおり、この場合はサブフォームのリンク親フィールドとリンク子フィールドを設定した方がいいですね。

hatenaさんの回答に横出しする形になってしまいますが、以下の通りにすればいいかと思います。

・サブフォームはクエリではなくテーブルBとテーブルCを元に作成(クエリでもいいですが、この場合あまり意味がないので。クエリのまま使うのであれば、フィールドにテーブルB・テーブルC由来の「顧客No」を追加してください。)
・サブフォームのフィルターの設定を削除
・メインフォームに埋め込まれたサブフォームを一度クリックしてサブフォームの周囲がオレンジ色(?)で選択された状態にし、その状態でプロパティの「データ」→「リンク親フィールド」を選択するとサブフォームフィールドリンクビルダーというのが出るので、親フィールドと子フィールドのそれぞれに「顧客No」(上記のクエリを使っているなら、テーブルB・テーブルC由来の方)を設定。

これでいけると思います。

【13107】Re:サブフォームについて
お礼  まゆ  - 16/10/31(月) 13:12 -

引用なし
パスワード
   ▼亀マスター さん:
▼hatena さん:

一から「リンク親フィールド」「リンク子フィールド」で作成しなおしてみます。

細かい設定などはまだ出来ていませんがうまくいきそうです。
また詰まる部分があれば改めて投稿させていただきます。

ありがとうございましたm(_ _)m

13 / 2244 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
969293
(SS)C-BOARD v3.8 is Free