【发布时间】:2014-06-25 16:38:11
【问题描述】:
有一个用户表单有很多文本框,我需要检测每个文本框的变化。所以我为表单中的每个文本框编写了一个子程序,结果是一大段代码。 由于每个文本框的代码都是相同的,我想对其进行优化。那么是否可以只编写一个子程序来检测表单的任何文本框的变化?
【问题讨论】:
-
是的,有一个类和WithEvent。见VBA: Using WithEvents on UserForms
-
参见控制阵列。从帮助。控件数组是一组具有相同名称和类型的控件。它们还共享相同的事件过程。控制数组至少有一个元素,并且可以增长到系统资源和内存允许的尽可能多的元素;它的大小还取决于每个控件需要多少内存和 Windows 资源。您可以在控件数组中使用的最大索引为 32767。同一控件数组的元素具有自己的属性设置。控件数组的常见用途包括菜单控件和选项按钮分组。
-
谢谢z̫͋。效果很好!