在Excel中创建下拉列表

时间:2011-11-21 09:48:16

标签: excel excel-vba excel-2010 vba

我正在更改旧的Excel电子表格,并且有一个用户请求将下拉列表添加到日期选择字段。

已为相关单元格打开了数据验证,其中包含“< = TODAY()”子句(该表格包含有关生产效率的信息,由于数据不存在,因此无法继续进行)。

用户请求过去七天的下拉列表。我可以在VBA中列出并枚举它,但是我很难想出一种方法,可以在不使用验证的情况下将下拉列表应用于单元格。

这可能吗?

2 个答案:

答案 0 :(得分:4)

您可以尝试以下方法:

  1. 向单元格添加 datepicker (并保留您放置的公式验证)
    一个。在MSDN上查看一些标准方式 湾或this blog
  2. 上的插件
  3. 在打开工作簿或使用event procedure激活工作表时,将您的验证更改为下拉列表,并添加另一个事件过程OnChange以检查输入的值是之前的

答案 1 :(得分:1)

为什么不用列表规则替换现有的数据验证规则?只需创建一个新工作表并输入A1:A7

=TODAY()
=A1-1
...
=A1-6

然后将数据验证规则设置为“列表”,并在新工作表上将源设置为A1:A7。然后隐藏工作表以保持它不受影响。这应该保留旧的验证要求。