1

私は table を持っていますxx.b主キーは次のとおりです。

+-----+-----+
|  a  |  b  |
+-----+-----+
| xyz | 123 |
| abc | 456 |
| abc | 999 |
+-----+-----+

テーブルy、ここでy.bは の外部キーx.b:

+----+-----+-------+
| ID |  b  |   c   |
+----+-----+-------+
|  1 | 123 | x105  |
|  2 | 123 | a309  |
|  3 | 456 | b123  |
|  4 | 999 | q234  |
|  5 | 999 | z525  |
+----+-----+-------+

for eachの最高値を検索する にyQuery基づくクエリ。結果は次のようになります。ycIDb

+----+-----+-------+
| ID |  b  |   c   |
+----+-----+-------+
|  2 | 123 | a309  |
|  3 | 456 | b123  |
|  5 | 999 | z525  |
+----+-----+-------+

xForm現在 table を表示しているフォームがありますxcからの結果を表示する列を追加したいyQueryので、次のようにxFormなります。

+----+-----+-------+
| ID |  b  |   c   |
+----+-----+-------+
|  2 | 123 | a309  |
|  3 | 456 | b123  |
|  5 | 999 | z525  |
+----+-----+-------+

テキストボックスのコントロールソースがある場所にテキストボックスを追加しようとしましたxForm:

=[yQuery]![c]

しかし、それは私に#Nameの列を与えましたか? エラー。xForm!IDソースがフィールドになるようにテキストボックスを設定する方法がわかりません。

4

2 に答える 2

1

1 つのオプションは、[ID] のクエリ [yQuery] と結合されたテーブル [x] から情報を取得するクエリにフォームをバインドすることです。ただし、[yQuery] にGROUP BY句がある場合、[yQuery] を組み込んだクエリは、更新できないレコードセットを生成する可能性があります。

別のオプションはDLookup()、問題のテキストボックスのコントロールソースとして a を使用することです。

=DLookup("c","yQuery","ID=" & [ID])
于 2013-06-28T20:37:07.423 に答える
1

代わりにこの dlookup を使用できます。

=DLookup("[c]","yQuery","[b] = " & [フォーム内の B のコントロール名])

または多分

=DLookup("[c]","yQuery","[b] = """ & [フォーム内の B のコントロール名] & """")

b が数値でない場合

于 2013-06-28T20:37:17.490 に答える