Access (的 TextBox.Change 事件)
Change 事件發生於指定控制項的內容變更時。
語法
運算式。改變
表達 代表 TextBox 物件的變數。
註解
此事件的範例包括直接在文字方塊或下拉式方塊中輸入字元,或來使用巨集或 Visual Basic 變更控制項的 Text 屬性設定。
注意事項
[!注意事項] 使用巨集或 Visual Basic 設定控制項的值不會觸發此事件的控制項。 您必須直接將資料輸入控制項,或設定控制項的 Text 屬性。
若要在此事件發生時執行宏或事件程序,請將 OnChange 屬性設定為宏的名稱或 [事件程序]。
藉由在 Change 事件發生時執行宏或事件程序,您可以協調控制項之間的資料顯示。 您也可以在某個控制項中顯示資料或公式,同時又在另一控制項之中顯示結果。
當計算控制項中的值變更時,不會發生 Change 事件。
Change事件可能會導致串聯事件。 當執行以回應控制項之 Change 事件的宏或事件程序改變控制項的內容時,就會發生這種情況;例如,藉由變更決定控制項值的屬性設定,例如文字方塊的 Text 屬性。 若要防止在階層式事件:
- 如果可能的話,避免將 Change 巨集或事件程序附加於會改變控制項內容的控制項。
- 避免建立兩個或多個控制項,其中具有彼此影響的 Change 事件;例如,會彼此更新的兩個文字方塊。
使用鍵盤變更文字方塊或下拉式方塊中的資料,會造成鍵盤事件發生,以及 Change 事件等控制事件。 例如,如果您移到一筆新的記錄並在該記錄的文字方塊中輸入一個 ANSI 字元,下列事件便會依序發生:
KeyDown → KeyPress → BeforeInsert → 變更 → KeyUp
文字方塊或下拉式方塊控制項的BeforeUpdate和AfterUpdate事件發生于您在控制項中輸入新的或變更的資料,並移至另一個控制項 (或按一下 [記錄] 功能表上的 [儲存記錄]) ,因此在控制項的所有變更事件之後。
在下拉式方塊的 LimitToList 屬性設為 [是], NotInList 事件發生於您輸入的清單中的值並嘗試移至另一個控制項或儲存記錄之後。 它會在下拉式方塊的所有 Change 事件之後發生。 在此情況下,不會發生下拉式方塊的 BeforeUpdate 和 AfterUpdate 事件,因為 Microsoft Access 不接受不在清單中的值。
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。