システムwiki

フォーム内のリンクテーブルを使用したトラブル

Chad810 受付中 最終更新日:2021-06-14 03:40

リンクされているtableから作成しようとしている新しいフォームにフィールドを追加するのに問題があります.tableは、ユーティリティデータベースからエクスポートされるExcelスプレッドシートにリンクします.データが非常に頻繁に変更されて更新されるため、リンクtableを使用しています.
リンクtableはコピーや貼り付けよりも簡単になります.問題は、フォームを作成しながらリンクtableを使用するときに、リンクされているtableが完全に異なるものを変更し、リンクされたtableからフィールドを追加できません.なんでこんなことが起こっているの?
ローカルtableでは発生しません.同様の問題を持つ人がいないようです.

返信リスト(回答:5)

1 #
KenSher

バインドフォームを作成するときは、最初にRecordSourceプロパティを設定する必要があります.これは単一のtable、単一のtable上のクエリ、またはフォームが複数のtableからデータを使用したい場合は、関連するプライマリ/外国のtableに結合するクエリです.
キー.
フィールドリストで、'現在のレコードソースのフィールドのみを表示し、それらをフォームのデザイン領域にドラッグします.
スコットが指摘しているので、通常、複数のtableをフォーム内に試して編集しないほうがよいが、参照tableのデータのみを編集できるように、参照tableを含めることに異議はない.例えば、フォームをベースにすることができます
このようなtableを結合するクエリで:


のお客様 -<都市
-<これにより、2つのことができるようになります.
1.都市と状態tableからの値は、フォーム内の読み取り専用のバウンドコントロールに表示されます.これは他の方法で行うことができます.CITYID列にバインドされているコンボボックスの列プロパティを参照して、バインドされていないコントロール内の値を表示する
顧客ですが、まだ完全に有効なデザインです.
2.クエリ、したがってフォーム内のレコードは、州で順序付けられてから、たとえば都市で注文できます.これは、上記のような他の方法ではできません.これは、RecordSourceの都市と状態tableを含みません.
RecordSourceプロパティがリンクされたExceltableまたは2つ以上のリンクされたExceltableを結合するクエリの場合、レコードセットはもちろん更新可能ではないので、参照tableからデータの編集に関する警告、上記の顧客
例ではありません.

2 #
JohnW.V

他の提案に加えて、リンクされたtableマネージャは(ただしいつも)リンクtableの構造の変更を反映できないことがわかりました.リンクを削除するには、それは簡単で、もっと信頼できるIMEだけです.
外部データへの新しいリンクを作成するためのtableと外部データ...リンク(またはVBAコード)を使用します.

もちろん、外部データセットがその構造を変更し続けると、フォームやレポートを維持しようとしている手間がかかります. しかし、それはアクセスではなくOffice Poriticsの問題になります.:-{(

3 #
Scottge

こんにちはチャド、
まず、Excelにリンクされたtableは一つです.フォーム内のデータに書き込むことはできません.だから私があなたがすることをお勧めするのは、フォームのフィールドを追加するだけではありません.フォームのRecordSourceに複数のtableを使用しないことが一般的に優れています.だから私はサブフォームを作成します
リンクされたExceltableにバインドします.次に、そのサブフォームをメインフォームに配置します.

4 #
JasleS

データベースを圧縮して修復してみてください.ここに指示があります:
support.office.com/ja-JP/article...

5 #
dhookom

こんにちはチャド、
リンクされたtableマネージャを使用してリンクを更新しましたか?これにより、新しいフィールドを使用可能にする必要があります.