誰かが私の問題を解決するなら、非常に感謝します。 私はMs Accessで働いていて新しく、基本機能についてはまだ経験があります。ms-accessで長いテキストを使用するためのベストプラクティス
私はテーブルMyItemsを持っています。フィールドの2つは、ItemCodeとItemNameです。 ItemNameは非常に長いテキストです(メモ型)。私はまた、多くのフィールドを持つクエリとフォームを持っています。フォームのレコードソースも多くのフィールドで構成されています。これらのすべてのもの(1つのフィールドに関連付けられている)は、同じ名前または類似の名前を持つため、私はそれらをかなりよく区別できません。
私が欲しいのは、ItemCodeの値(ItemCodeという名前のバインドされていないComboboxまたはListboxで)の値を、コントロールに表示されるItemNameの値(TextBoxなど)に設定する場合です。
(行ソースのSQLクエリによって)ListBoxにその値を表示できますが、これに問題はありません。イベントの管理に問題はありませんが、テキストは非常に長く、切り詰められます。残念ながらListBoxには複数行のプロパティはありません。だから、最も適切なコントロールはTextBoxです。そして、値を表示する最も適切な方法は、TextBoxのコントロールソースでDLookUp関数を使用することです。しかし、同じ名前の同名のアイテムの海では、私はその構文を扱うことができません。私は何度も何度も何度も試していました。だから私は2つの質問がある:
は、TextBoxコントロールとのDLookup関数は、コントロールソースに結合することなく、テーブルから長いテキストを抽出するための最良の方法はありますか(直接SQLクエリで動作)より適切なコントロールがあります?
DLookUpの正しい構文は何ですか? - どこに正確に ''、 ''、[]、.Value、=、&がありますか?ここで、テーブルやフォームへのパスと、それが間違っている場所を記述する必要がありますか?私が[ItemCode]と書いたのは、フォームレコードソース、テーブル、フォームコントロール、または何か他のものと関連付けられるものです。私のケースで正しい構文を書いている人、またはDLookUpを使ってたくさんの例を持つリンクを共有している人に感謝します。私が見つけたものは私を満足させなかった。
ありがとうございました!今は物事がはっきりと分かりやすくなります。コードが機能しました。私は "'"で試したことはありません。しかし、私は、おそらくmsアクセス版、私のデフォルトまたはVBA /デザインモードを使用しているかのいずれかで修正する必要があります - 関数内の区切り記号は ";"です。 - not "、" – Peter
@Peter:はい、ドイツ語のアクセスでは、引数の区切り記号は;代わりに、フォームまたはクエリで関数を使用する場合。しかし、VBAではありません。 – Andre