xlfCaller

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

返回有关单元格、单元格区域、菜单上的命令、工具栏上的工具或调用当前正在运行的 DLL 命令或函数的对象的信息。

从 调用的代码 返回
Dll
注册 ID。
单个单元格
单单元格引用。
多单元格数组公式
多单元格引用。
条件格式表达式
对应用格式设置条件的单元格的引用。
菜单
四元素单行数组:
条形图 ID。 菜单位置。 子菜单位置。 命令位置。
工具栏
双元素单行数组:
内置工具栏的工具栏编号或自定义工具栏的工具栏名称。 工具栏上的位置。
图形对象
对象标识符 (对象名称) 。
与 xlcOnEnter、ON 关联的命令。ENTER,事件陷阱
对要输入的单元格的引用。
与 xlcOnDoubleclick, ON 关联的命令。DOUBLECLICK,事件陷阱。 双击的单元格 (不一定是活动单元格) 。
Auto_Open、AutoClose、Auto_Activate或Auto_Deactivate宏
调用表的名称。
未列出的其他方法
#REF! 错误。
Excel12(xlfCaller, (LPXLOPER12) pxRes,0);

属性值/返回值

返回值是以下 XLOPER/ XLOPER12 数据类型之一: xltypeRefxltypeSRefxltypeNumxltypeStrxltypeErrxltypeMulti。 由于其中三种类型指向分配的内存,因此在不再需要 xlFree 函数时,应始终在调用 xlFree 函数时释放 xlfCaller 的返回值。

有关 XLOPER/ XLOPER12s 的详细信息,请参阅 Excel 中的内存管理

备注

此函数是唯一可从 DLL/XLL 工作表函数调用的非工作表函数。 其他 XLM 信息函数只能从命令或宏表等效函数调用。

示例

\SAMPLES\EXAMPLE\EXAMPLE.C. 此函数 (xlcSelect) 调用命令宏,并且仅当从宏表调用时才能正常工作。

short WINAPI CallerExample(void)
{
   XLOPER12 xRes;
   Excel12(xlfCaller, &xRes, 0);
   Excel12(xlcSelect, 0, 1, (LPXLOPER12)&xRes);
   Excel12(xlFree, 0, 1, (LPXLOPER12)&xRes);
   return 1;
}

另请参阅

实用的基本 C API XLM 函数