众所周知,在Qt(或其他C ++环境)中,我们可以使用QActiveX来操作Excel。但是,如果工作簿中有一些用户定义的VBA函数,可以通过任何方式将参数传递给它们并调用它们吗?
答案 0 :(得分:1)
您可以使用方法名称和参数调用QAxObject :: dynamicCall。
Worksheet.Evaluate和Application.Evaluate易于使用。它们采用一个字符串参数,因此您需要以UDFName(parameter1,parameter2,...)的形式编写脚本。并且因为字符串到UDF参数类型转换,它们比Application.Run慢。
Application.Run也可用于调用UDF。第一个参数是UDF名称,其余参数按位置传递给UDF。