如何在Excel中创建动态验证控件

匡嘉灵
导读 Excel的数据验证功能允许在工作表中嵌入下拉列表。您可以用许多方式填充这个列表,但是静态列表可能是最简单的。如果列表更新频繁,这个功

Excel的数据验证功能允许在工作表中嵌入下拉列表。您可以用许多方式填充这个列表,但是静态列表可能是最简单的。如果列表更新频繁,这个功能的列表就不够用了。而是使用Excel的表格(。xlsx格式)对象。如果验证控件引用一个表格,您可以更新列表(在工作表中),验证控件将自动更新!

简而言之,您将在工作表中输入列表项,并将列表转换为表格。然后,您将为该表指定一个已定义的(范围)名称。创建验证控件时,将引用定义的名称(引用表)。在本文中,我们将使用。xlsx表格对象。您可以使用任何简单的列表或下载。xlsx演示文件。这种技术不能轻易转换成Excel以前的。xls格式。如果有足够的请求,我将介绍Excel。后续列中的xls格式。

首先,你需要一份清单3354。我们将使用图a中所示的列表。您会注意到该列表是按字母顺序排列的。维护一个按字母顺序排列的列表会给这项技术增加一个新的问题,但是我们将在后面讨论这个问题。现在,你所需要的是一个列表3354,不管是否按字母顺序排列。

图一

下一步是将列表转换为表格(Excel 2007、2010和2013) 3360。

得到的表有很多优点,也有一些缺点。你可以通过阅读“使用Excel表格对象的10个理由”来了解更多关于表格的知识。对于我们的目的来说,这个特性消除了大量的工作,并且它固有的限制是无关紧要的。

一旦表就位,为它指定一个定义的(范围)名称。将已定义的名称(排序)分配给Excel表格对象,但不能在数据有效性控件中直接引用它。

虽然没有必要使用这种技术,但我建议给表对象起一个有意义的名字,因为它们更容易使用。要命名新表格,请单击表格中的任意位置,然后单击上下文设计表格。在属性组中,您将看到Excel ——表1、表2等的默认名称。在控件内部单击并输入新名称,如图b所示。

图b

现在,您已经准备好为表分配一个已定义的名称,如下所示:

图C

图D显示了工作表的两个定义名称:——listofnative表和本机表。这看起来有点多余,但是很有必要,因为不能使用验证特性直接引用表(至少,我还没有找到方法)。

图d

现在可以添加验证控件了。这个功能有很多东西可以提供,但是我们现在只关注最基础的3360。

若要更新验证控件中的列表,请向本机表中添加(或删除)一项。当您这样做时,Excel将自动更新验证控件,如图g所示。

图g

要更新表格,请将光标放在表格的最后一个单元格中,然后按[Tab]。Excel将自动向表格中添加新行。或者,您可以在表格中的任何位置插入新行3354。如果您想维护一个按字母顺序排列的列表,这很有帮助。如果您想按字母顺序自动排序,可以使用清单a中显示的宏。在向表的底部添加一个新项目后,在使用验证下拉菜单之前执行宏。

标签:

免责声明:本文由用户上传,如有侵权请联系删除!