2016-06-17 30 views
0

我在Access中有一個帶有文本框和組合框的表單,並且需要使用文本框中的值來過濾組合框下拉選項。該文本框包含一個Category供選擇。在Access 2013中使用文本框值過濾組合框下拉選項

我做這個使用

SELECT Options.Choice 
FROM Options 
WHERE (((Options.Category)=[forms]![FormName]![Text10].Value)); 

有沒有辦法來引用值Text10沒有明確提及FormName

我需要在相同的Access文件中複製此表單,並且爲新表單更改所有組合框行源不可行。我無法對每個組合框的類別值進行硬編碼,因爲每個表單有許多組合框,並且文本框中的值在每個表單上都會有所不同。任何幫助表示讚賞。

回答

2

您可以使用Screen.ActiveForm來引用您目前在Access中的任何形式。所以在你的情況下,你會有:

SELECT Options.Choice 
FROM Options 
WHERE (((Options.Category)=[Screen].[ActiveForm]![Text10].Value)); 

只要字段名稱保持不變,這應該工作。

+1

該死的MSDN沒有提到它適用於SQL。好多了! – MoondogsMaDawg

+0

@ JJ32謝謝,它工作! – jjjjjjjjjjj