对于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'”。这意味着我的基础是错误的。非常感谢帮助我以及任何其他可以让我完成任务的信息。感谢。
答案 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
我建议您首先声明它们是否正确输入,以便您可以看到对象的方法和属性,然后将其更改为变体