プロが教える店舗&オフィスのセキュリティ対策術

access について教えてください

いま画像のようにコードを入力し、フォーム上に検索した顧客CDの内容を表示させることに成功しました。
しかし、表示された内容を変更したい、または新たに内容の更新をしていきたいときにはどのようにコードを追加すればいいのでしょうか?
それか更新ボタンを作成し、新たにコードを追加するべきなのでしょうか?(コードわかりません…)
登録ボタンは作成してあり、押すと新規のレコードの時は何もエラーも出ず、登録されるのですが、一度登録した内容を検索し、変更しようとするとコード上の
DoCmd.RunCommand acCmdSaveRecord
の部分が黄色に表示されエラーが発生してしまいます。
どなたか解決策がありましたら教えてください。
よろしくお願いします。。

「access について教えてください い」の質問画像

質問者からの補足コメント

  • レコードがうまく移動していないということに気づきました。しかし、検索を押しても思ったようにレコードが移動しません。
    検索ボタンを押したら同時にレコードも移動するようにはできるのでしょうか?
    どなたかお力をお貸しください。
    宜しくお願い致します。

      補足日時:2017/06/20 17:03

A 回答 (1件)

フォームにある顧客CDとか顧客名とかは非連結のテキストボックスですよね?


非連結ですと、そのテキストボックスに表示されている内容は、ただ単にそこに表示されているだけで
どのテーブルのどのレコードなのかに関連つけられていません。

この場合、レコードを一意に識別するフィールド(ここでは顧客CDかな?)で必要なテーブルを検索し、
そのレコードのフィールドを書き換える必要があります。

Q_顧客マスタはクエリでしょうか?
クエリの内容が不明ですが、元になるテーブルがリンクテーブルではない、複数のテーブルを連結していない
というのであれば、フォームのコントロールソースをQ_顧客マスタにして、テキストボックスの
コントロールソースをクエリのフィールドにすれば、内容を変更してレコードの保存を実行すれば
書き換えができると思います。

>レコードがうまく移動していないということに気づきました。

このコードでは検索ボタンをクリックすると常にQ_顧客マスタの先頭から検索して、最初に見つかった
レコードをフォームに代入していますので、レコードの移動というのは出来ないと思います。

クエリまたはテーブルをコントロールソースにした連結されたテキストボックスで
フォームを作った方が良いように思うのですが。
    • good
    • 0
この回答へのお礼

回答ありがとうございます!
少しずつ理解してやっていきたいと思います!!

お礼日時:2017/06/20 22:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!