我正在使用 Excel 宏进行 Dymola 模拟。它与 Dymola 2020x 或 2022x 配合良好。升级到2024x后,这个excel工具就不能用了。我创建了简单的 dymola 模型和 Excel 宏,如下所示。
//Dymola 模型
model Unnamed2
parameter Real x=1;
Real y;
equation
y=2*x;
annotation (Icon(coordinateSystem(preserveAspectRatio=false)), Diagram(
coordinateSystem(preserveAspectRatio=false)));
end Unnamed2;
//Excel宏
Sub ExcelMacro()
Cells(1, 1) = Application.DDERequest(Application.DDEInitiate("dymola", "xxx"), "ModelicaString:x")
End Sub
如果我在 Dymola 2022x 中模拟 Dymola 模型后运行 excel 宏,则单元格 A1 返回 1。 但它返回#REF!如果我使用 Dymola 2024x。有谁知道解决办法吗
似乎有一些因素阻碍了它在 Dymola 2024x 中的工作;它将在未来版本中得到纠正。解决方法是使用:
Cells(1, 1) = Application.DDERequest(Application.DDEInitiate("dymola", "xxx"), "MatlabString:x")
在这种情况下,矩阵和向量的语法会略有不同,但标量将继续工作。