使いやすいように設計された Microsoft リレーショナル データベース管理システムのファミリ。
おかげさまでうまくいきました!
ありがとうございます!!
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
現在、Access上でフォーム+サブフォーム構成の台帳を作って運用しています。
フォーム上の情報はテーブルA、サブフォーム上の情報はテーブルBに保存される形式です。
今回、フォーム上に1クリックでテーブルB→テーブルAの情報を移動するマクロボタンを作ろうとして行き詰っています。
具体的にはテーブルAの「台帳番号A」、「項目A」、テーブルBの「年度B」、「台帳番号B」、「項目B」というフィールドを使って次のようなマクロを組みたいです。
①テーブルBの全レコードのうち「年度B」が"H27"のものを探す。
②「年度B」が"H27"のレコードの台帳番号を「台帳番号B」、項目を「項目B」とする。
「台帳番号B」とおなじ台帳番号を持つテーブルAのレコードを探す(そのレコードの台帳番号を「台帳番号A」とする)
③「台帳番号A」のレコードの「項目A」に「項目B」の値を代入する。
Excelだとif関数とfor~next関数で簡単に書けそうなのですがAccessだとうまくいきません。
お手数ですがご教授の方をよろしくお願いします。
使いやすいように設計された Microsoft リレーショナル データベース管理システムのファミリ。
ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。
おかげさまでうまくいきました!
ありがとうございます!!
台帳番号Aおよび台帳番号Bの一意性が保証されていて、且つ、年度Bのデータ型が「短いテキスト」であるという仮定の下で
DoCmd.RunSQL "UPDATE テーブルA INNER JOIN テーブルB ON テーブルA.台帳番号A=テーブルB.台帳番号B SET テーブルA.項目A=テーブルB.項目B WHERE テーブルB.年度B='H27'"
なるVBAのコードで当該操作を実現できませんでしょうか?
参考にしたウェブサイト(英語)