工作表引用

适用于:Excel 2013 | Office 2013 | Visual Studio

Microsoft Excel 中的引用是一种数据类型,它引用一个矩形单元格块, (该矩形块可以是) 的一个单元格,或者在某些情况下,可以是许多不连续的单元格块。 在内部,Excel 对当前工作表上的单元格使用一种引用类型,称为内部引用。 当前工作表上不存在的任何单元格都由另一种称为外部引用的引用类型描述。 有关活动定义和当前定义,请参阅下一部分。

活动与当前

在 Excel 中,术语“活动”是指用户正在查看的内容。 活动工作簿和工作表是用户当前正在查看的工作簿和工作表,或者,如果 Excel 失去了对另一个应用程序的焦点,则正在查看 Excel 上次具有焦点的时间。 活动工作表始终位于活动工作簿中。 在活动工作表中选择的一个或多个单元格称为活动单元格。 如果嵌入对象具有焦点,则最后选择的单元格仍处于活动状态。

术语“当前”是指 Excel 正在重新计算的内容。 当前工作簿和工作表是当前正在重新计算的工作簿和工作表。 当前工作表始终位于当前工作簿中。 正在重新计算的单元格称为当前单元格,在重新计算数组公式的情况下,称为当前单元格。

要记住的要点如下:

  • 活动工作簿/工作表/单元格通常不是当前工作簿/工作表/单元格,尽管它可以是。

  • 外接程序函数(无论是在Visual Basic for Applications (VBA) 模块中还是 DLL 或 XLL 中)始终从当前工作表上的当前单元格调用,或者在多线程重新计算 (MTR) 的情况下调用其中一个。

许多 Excel 函数(提供有关工作簿中的单元格、单元格区域或工作表的信息)区分活动工作簿、工作表或单元格与当前工作簿、工作表或单元格。 此差异反映在用于描述对单元格块的引用的数据类型中,如以下部分所述。

内部和外部工作表引用

内部和外部引用之间的主要区别在于,外部引用数据类型包含工作表的 ID,以及引用哪些单元格的说明。 内部引用不包含对工作表的引用 ,它是隐式的,即工作表是当前工作表。

许多 C API 函数返回引用或采用引用参数。 任何采用引用参数的 C API 函数都接受内部或外部引用,但 xlSheetNm 函数除外,该函数需要外部引用。 某些函数仅返回内部或外部引用。 例如,C API 函数 xlfCaller 根据定义返回对当前工作表上调用单元格的引用。 返回的引用始终是内部引用,但函数可以返回非引用类型,其中函数不是从工作表单元格调用的。 C API 函数 xlSheetId 始终返回外部引用数据类型中包含的工作表的 ID。

内部和外部引用类型之间的另一个主要区别在于,外部引用数据类型可以描述同一工作表上的多个不连续单元格块。 内部引用只能描述当前工作表上的单个块。 脱节引用可以传递给任何采用 range 参数的函数。

另请参阅

Excel 编程概念

求值名称和其他工作表公式表达式

Excel 工作表和表达式计算