如何向xlam文件传递用户定义类型(UDT)变量?
解决XLSM调用XLAM宏时传递UDT的编译错误问题
当将宏保存为XLAM加载项文件,在XLSM文件中引用该加载项并调用宏,尝试传递XLSM中定义的公共用户定义类型(UDT)变量时,XLAM文件会出现编译错误:未定义用户定义类型的问题。
解决方案
将用户定义类型(UDT)的声明移至XLAM加载项中,而非在XLSM文件内定义,即可解决该编译错误。
XLAM加载项中的代码
在XLAM中声明公共UDT,并编写接收该类型参数的宏:
Public Type chartType chartObject As Variant ' 可添加其他成员定义 End Type Public Sub formatting_chart(cht As chartType) ' 此处编写图表格式化的具体代码逻辑 End Sub
XLSM文件中的代码
在XLSM中直接声明该UDT类型的变量,然后调用XLAM中的宏:
Public cht As chartType Call lib01.formatting_chart(cht)
内容的提问来源于stack exchange,提问作者andreamordini
相关产品推荐
相关产品推荐

