Excel vba修改Catia v5模型属性

时间:2016-09-06 17:25:15

标签: vba excel-vba automation catia excel

对于CATIA,我是新手,但我在excel中有相当多的VBA经验。我正在尝试开发一个excel宏,它遍历catia程序集中的所有部分,通过拼接我想要的文本来重命名它们,然后重新排序它们(字母数字升序)。我相信我可以为实际的拼接,重命名,重新排序位编写算法。我正在努力的实际上是使用excel运营Catia。互联网上没有很多信息。我已经勾选了以CATIA开头的参考部分中的所有框。到目前为止我写过这个:

Dim CATIA as object
Set CATIA = Getobject(,"CATIA.Application")
Dim oMyDoc as Document
Dim oCurrentProd as Product   'I assume the individual parts within CATIA are_
                               referenced as products?
Set oMyDoc = CATIA.ActiveDocument

如果我尝试运行上面的代码,我会收到一条错误消息:“Class不支持Automation'”。这意味着我的基础是错误的。非常感谢帮助我以及任何其他可以让我完成任务的信息。感谢。

1 个答案:

答案 0 :(得分:0)

在VBA中从CATIA运行代码时,某些对象在正确键入时会出错。尝试在没有类型或变体的情况下声明这些对象。

Dim CATIA as 'object
Set CATIA = Getobject(,"CATIA.Application")
Dim oMyDoc as 'Document
Dim oCurrentProd as 'Product   
Set oMyDoc = CATIA.ActiveDocument

Dim CATIA as variant
Set CATIA = Getobject(,"CATIA.Application")
Dim oMyDoc as variant
Dim oCurrentProd as variant   
Set oMyDoc = CATIA.ActiveDocument

我建议您首先声明它们是否正确输入,以便您可以看到对象的方法和属性,然后将其更改为变体