我的Excel工作簿中有一个通过COM向VBA宏公开的dll。在dll中,主函数从工作表中的不同单元格中获取一组数据作为输入,并生成一个输出表,将其显示在同一个excel工作表的其他位置。我正试图找出如何在输入单元格中的一个发生更改时调用此函数,同时填充所有输出单元格。
我注意到 VBA UDF cannot write to the speadsheet calling it (没有副作用)。。。它只能从电子表格中读取并通过函数primary return value返回值。
有没有一种好方法可以将一个大的输入集映射到一个大的输出集,而不必分别为表中的每个条目调用dll?
对。如果函数返回一个数组,则可以选择所有未来的结果单元格,输入一次公式,
=TheFunction(a1,b2,c3)
和媒体 Ctrl键 + 移位 + 进入 .