Chuck可以轻松地在工作簿中设置命名范围,而Excel允许他指定该命名范围是应用于整个工作簿还是应用于单个工作表。但是,他想知道将命名范围的范围限制为单个工作表的优缺点。这就带来了一个问题,那就是它是否比将范围设置为整个工作簿更好。

正如Chuck所暗示的,命名范围的默认值是它适用于整个工作簿。对于大多数人来说,这很好,它反映了大多数人使用命名范围的方式。没有与工作簿范围或工作表范围相关联的“性能提升”,因此(幸运的是)不会进入等式。

因此,何时应该偏离默认值,而是选择使命名范围仅适用于工作表?显而易见的答案是,当您有一个工作表要在工作簿中复制时,该工作表包含引用该工作表上范围的命名范围,并且该工作表包含使用这些命名范围的公式。当您复制工作表时,您希望多个工作表上的这些公式相对于他们的工作表仍然有效。如果命名范围的范围仅限于工作表,则所有内容均应按预期工作。

如果复制包含使用“工作簿”范围的命名范围的工作表,并且该副本位于同一工作簿内,则Excel会在复制的工作表中进行更改。具体来说,为防止工作簿名称空间混乱,Excel会自动将副本中的命名范围转换为具有工作表范围。原始工作表中的命名范围保持不变,因此,保留了工作簿范围。

如果复制包含使用“工作簿”范围的命名范围的工作表,并且该副本放置在其他工作簿中,则Excel仅在保留原始范围会引起与任何已命名范围冲突的情况下才修改这些范围的范围存在于目标工作簿中。

在所有情况下,您都需要仔细检查工作表中的所有公式,以确保它们引用您期望它们引用的内容。相反,您可以将命名范围范围更改为“工作表”

在进行工作表复制之前,这样可以减少与重复或复制的工作表混淆的机会。

但是,当使用作用于特定工作表的命名范围时,应注意两个潜在的陷阱。首先,当您开始复制工作表时,由于不同工作表上具有相同名称的范围,使用户难以发现潜在的问题。 (用户将头缠绕在有限的范围内会花费更多。)

其次,如果这些宏访问命名范围,则可使这些宏更加复杂。如果您有这样的宏,则需要对其进行彻底的测试,以确保它们引用了预期的范围。如果您不这样做,则宏可能会弄乱您的工作表数据或完全崩溃。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(4633)适用于Microsoft Excel 2007、2010、2013和2016。