在 for 循环中选择 Catia 零件
Selecting a Catia part in a for loop
我的 For
循环中有一个小错误,因为它不会 select 我想要着色的部分。我用一个变量散列把文档的所有名称都放在那里,然后尝试用 Catia 函数上色,但还是一无所获!
下面是部分代码。
问题区是Select Case
。如果找到,它实际上不会 select 和着色部分。
更新:现在我确切地知道问题出在哪里,它是在 select 零件离子化和着色过程中的内壳。不知何故,它甚至 select 这部分。
For n = 1 To DokAnzahl
Set Dokument = DokumentArray(n)
ReDim DokumentArrayNew(DokAnzahl)
DokumentArrayNew(n) = CStr(Dokument.Name)
For j = 1 To UBound(arrNamen)
If arrNamenNew(j) = Left(DokumentArrayNew(n), Len(arrNamenNew(1))) Then
'MsgBox "They are equal!"
hash = DokumentArrayNew(n)
ColorCode(j) = arrFarben(j)
'MsgBox ColorCode(j) checked
m = j+1
Select Case ColorCode(j)
Case "NEU" 'rot
Set sel = catia.activedocument.selection
sel.search "Name =hash,all"
sel.visproperties.setRealColor 240, 1, 1, 1
Case "entfällt" 'Gelb
Set sel = catia.activedocument.selection
sel.search "Name =hash,all"
sel.visproperties.setRealColor 240, 240, 16, 1
Case "COP" 'Grün
Set sel = catia.activedocument.selection
sel.search "Name =hash,all"
sel.visproperties.setRealColor 30, 240, 60, 1
Case Else
MsgBox "no color info"
End Select
End If
Next
Next
您的 Selection.Search
正在搜索单词 "Hash"
而不是变量 hash
中的内容
将您的 Select Case
语句更改为:
Set sel = catia.activedocument.selection
sel.search "Name =*" & hash & "*,all"
我的 For
循环中有一个小错误,因为它不会 select 我想要着色的部分。我用一个变量散列把文档的所有名称都放在那里,然后尝试用 Catia 函数上色,但还是一无所获!
下面是部分代码。
问题区是Select Case
。如果找到,它实际上不会 select 和着色部分。
更新:现在我确切地知道问题出在哪里,它是在 select 零件离子化和着色过程中的内壳。不知何故,它甚至 select 这部分。
For n = 1 To DokAnzahl
Set Dokument = DokumentArray(n)
ReDim DokumentArrayNew(DokAnzahl)
DokumentArrayNew(n) = CStr(Dokument.Name)
For j = 1 To UBound(arrNamen)
If arrNamenNew(j) = Left(DokumentArrayNew(n), Len(arrNamenNew(1))) Then
'MsgBox "They are equal!"
hash = DokumentArrayNew(n)
ColorCode(j) = arrFarben(j)
'MsgBox ColorCode(j) checked
m = j+1
Select Case ColorCode(j)
Case "NEU" 'rot
Set sel = catia.activedocument.selection
sel.search "Name =hash,all"
sel.visproperties.setRealColor 240, 1, 1, 1
Case "entfällt" 'Gelb
Set sel = catia.activedocument.selection
sel.search "Name =hash,all"
sel.visproperties.setRealColor 240, 240, 16, 1
Case "COP" 'Grün
Set sel = catia.activedocument.selection
sel.search "Name =hash,all"
sel.visproperties.setRealColor 30, 240, 60, 1
Case Else
MsgBox "no color info"
End Select
End If
Next
Next
您的 Selection.Search
正在搜索单词 "Hash"
而不是变量 hash
将您的 Select Case
语句更改为:
Set sel = catia.activedocument.selection
sel.search "Name =*" & hash & "*,all"