从Qt调用Excel中的用户定义的VBA函数

时间:2017-12-30 01:05:49

标签: excel-vba qt activex vba excel

众所周知,在Qt(或其他C ++环境)中,我们可以使用QActiveX来操作Excel。但是,如果工作簿中有一些用户定义的VBA函数,可以通过任何方式将参数传递给它们并调用它们吗?

1 个答案:

答案 0 :(得分:1)

您可以使用方法名称和参数调用QAxObject :: dynamicCall。

Worksheet.Evaluate和Application.Evaluate易于使用。它们采用一个字符串参数,因此您需要以UDFName(parameter1,parameter2,...)的形式编写脚本。并且因为字符串到UDF参数类型转换,它们比Application.Run慢。

Application.Run也可用于调用UDF。第一个参数是UDF名称,其余参数按位置传递给UDF。