在不使用INDIRECT的情况下使用表进行数据验证的非易失性方法

时间:2015-04-18 21:39:13

标签: excel excel-formula

我经常使用INDIRECT函数的地方是数据验证。如果我有一个名为tabColor的表格,其中包含一个名为Color的列,并且我想将其用于数据验证,那么您认为可以将数据验证设置为使用以下公式列出:

=tabColor[Color]

但是,这会导致错误。如果用INDIRECT包装公式,它可以工作:

=INDIRECT("tabColor[Color]")

所以,我有两个问题:

  1. 在数据验证中使用INDIRECT会导致单元格被标记为易失性吗?
  2. 是否存在使用表格进行数据验证的非易失方法?
  3. 顺便说一下,如果你想了解更多有关易失性功能的信息,可以在这里找到一个很好的写作 chandoo.org

1 个答案:

答案 0 :(得分:3)

  1. 是。只要工作簿中的任何计算周期运行,就会刷新数据验证列表。当在数据验证,命名范围,条件格式规则等中使用易失性公式时,这是一种不可见寄生计算滞后的形式。
  2. 创建一个命名范围引用:=tabColor[color],然后使用命名范围的名称作为数据验证列表&#39; s < EM>来源:。遗憾的是,表命名约定还没有赶上它们应该能够直接使用的所有功能。