Access) (Form.InputParameters 屬性
使用 InputParameters 屬性來指定或決定在表單或報表的 RecordSource 屬性中傳遞至 SQL 語句的輸入參數,或在做為 Microsoft Access 專案內記錄來源時的預存程式, (.adp) 。 讀取/寫入的 String。
語法
運算式。InputParameters
expression 代表 Form 物件的變數。
註解
搭配 RecordSource 屬性使用時
在 RecordSource 屬性中與 SQL 陳述式搭配使用的 InputParameters 屬性字串範例會使用下列語法。
state char=[Forms]![formname]![StateList], salesyear smallint=[Forms]![formname]![Enter year of interest]
這會導致 狀態 參數設定為 StateList 控制項的目前值,並提示使用者輸入 salesyear 參數。 如果有任何不在本清單中的其他參數,將會被指派預設值。
查詢應該針對 InputParameters 清單中的每個非預設參數使用一個標記來執行。
透過 Access 中) 功能表、鍵盤或導覽列 (重新整理或重新查詢命令,應該會觸發查詢的重新執行。 使用者可以在程式碼中呼叫標準 Requery 方法來執行此動作。 如果參數值結合到表單上的控制項,則在重新查詢期間會使用控制項的目前值。 當控制項的值變更時,查詢並不會自動重新執行。
與預存程式搭配使用時
搭配預存程式使用的範例 InputParameters 屬性字串會使用下列語法。
@state char=[Forms]![formname]![StateList], @salesyear smallint=[Forms]![formname]![Enter year of interest]
這會導致 @state 參數設定為 StateList 控制項的目前值,並提示使用者輸入 @salesyear 參數。 如果預存程式的任何其他參數不在此清單中,則會指派預設值。
預存程式應該使用包含 {call } 語法的命令字串來執行,並在 InputParameters 清單中針對每個非預設參數使用一個標記。
透過 Access 中的功能表、鍵盤或導覽列) (重新整理或重新查詢命令,應該會觸發預存程式的重新執行。 使用者可以在程式碼中呼叫標準 Requery 方法來執行此動作。 如果參數值結合到表單上的控制項,則在重新查詢時會使用控制項的目前值。 當控制項的值變更時,預存程序並不會自動重新執行。
如果預存程序具有任何參數,則當預存程序首次被選為表單的記錄來源時,將顯示該建立器對話方塊。 在最初建立 InputParameters 字串之後,同一對話方塊也將用於變更字串的建立器。 不過,在此情況下,參數清單來自字串中已存在的參數。
使用 ActiveX Data 物件的 (ADO) Command 和 Parameter 物件,也可以在程式碼中設定參數值。 如果結果傳回結果集,則可以藉由設定表單的 Recordset 屬性,將表單系結至該表單。 ADO 程式碼撰寫是處理不會傳回結果集之預存程式的唯一方式,例如動作查詢、傳回輸出參數的預存程式,或傳回多個結果集的預存程式。
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。