使用选择根据实例更改 CATIA 用户定义的特性
Changing CATIA User Defined Properties based on the instance using selection
我遇到了麻烦,我已经处理了一个星期了,但仍然遇到同样的问题。
我正在使用 CATIA V5R26,我试图通过在 CATIA 中选择 product/part 和 运行 宏来更改用户定义的属性(定义其他属性)。
目前,这就是我所拥有的
Set Pull_document2 = CATIA.ActiveDocument.Selection
Part_Number_Name = Pull_document2.Item(1).LeafProduct.ReferenceProduct.Name
CATIA.ActiveDocument.Selection.Item(1).LeafProduct.ReferenceProduct.UserRefProperties.Item(Part_Number_Name & "\Properties\DESIGNER").Value = "Yeet"
这会产生 2 个问题,我仍然无法更改 2 级或更多属性。这仅适用于顶层。此外,我尝试操作 11 个用户定义的属性,而代码只会做 3 个。我尝试了很多不同的路线,也使用了他们使用的其他人的代码,但由于某种原因它不起作用。
需要做些什么才能让它在多个层面发挥作用?
为什么这只能更改 11 个用户定义属性中的 3 个?
一个问题是你是基于一个选择。如果用户选择了错误类型的对象,它将引发错误。
也就是说,试试这个:
Set Pull_document2 = CATIA.ActiveDocument.Selection
Set ProducRef = Pull_document2.Item(1).LeafProduct.ReferenceProduct
With ProducRef.UserRefProperties
.Item("DESIGNER").Value = "Yeet" ' This is how I think it should work
.Item(.Name & "\Properties\DESIGNER").Value = "Yeet" ' This is based on the code you had
End With
在 With 块中,您应该能够列出所有要更改的属性。
我遇到了麻烦,我已经处理了一个星期了,但仍然遇到同样的问题。 我正在使用 CATIA V5R26,我试图通过在 CATIA 中选择 product/part 和 运行 宏来更改用户定义的属性(定义其他属性)。
目前,这就是我所拥有的
Set Pull_document2 = CATIA.ActiveDocument.Selection
Part_Number_Name = Pull_document2.Item(1).LeafProduct.ReferenceProduct.Name
CATIA.ActiveDocument.Selection.Item(1).LeafProduct.ReferenceProduct.UserRefProperties.Item(Part_Number_Name & "\Properties\DESIGNER").Value = "Yeet"
这会产生 2 个问题,我仍然无法更改 2 级或更多属性。这仅适用于顶层。此外,我尝试操作 11 个用户定义的属性,而代码只会做 3 个。我尝试了很多不同的路线,也使用了他们使用的其他人的代码,但由于某种原因它不起作用。
需要做些什么才能让它在多个层面发挥作用? 为什么这只能更改 11 个用户定义属性中的 3 个?
一个问题是你是基于一个选择。如果用户选择了错误类型的对象,它将引发错误。
也就是说,试试这个:
Set Pull_document2 = CATIA.ActiveDocument.Selection
Set ProducRef = Pull_document2.Item(1).LeafProduct.ReferenceProduct
With ProducRef.UserRefProperties
.Item("DESIGNER").Value = "Yeet" ' This is how I think it should work
.Item(.Name & "\Properties\DESIGNER").Value = "Yeet" ' This is based on the code you had
End With
在 With 块中,您应该能够列出所有要更改的属性。