mein erster Ansatz ist das Makro aus
http://forum.cad.de/foren/ubb/Forum137/HTML/001807.shtml:Sub traverse(Prod, origstr, newstr)
set refp = Prod.ReferenceProduct
if instr(refp.Name, origstr) then
newpname = Replace(refp.Name, origstr, newstr)
refp.Name = newpname
end if
if instr(refp.PartNumber, origstr) then
newpnum = Replace(refp.PartNumber, origstr, newstr)
refp.PartNumber = newpnum
end if
Set prods = Prod.Products
pc = prods.Count
If pc > 0 then
For i = 1 to pc
traverse prods.Item(i), origstr, newstr
Next
End If
End Sub
Sub CATMain()
Set actProd = CATIA.ActiveDocument.Product
origstr = Inputbox ("Eingeben welcher Name oder Nummer ersetzt werden soll!!! ", "Suche und Ersetze (Suche)")
newstr = Inputbox ("Zu ersetzenden Namen oder Nummer eingeben", "Suche und Ersetze (Ersetze)")
traverse actProd, origstr, newstr
End Sub
... ist allerdings aus der V5
mit "Set actProd = CATIA.ActiveEditor.Selection" anstatt "Set actProd = CATIA.ActiveDocument.Product" hab ich den "Sub CATMain()" schon mal zum laufen gebracht, allerdings stehe ich "Sub traverse" total an, da die V6 die Bezeichnungen aus der V5 anscheinend nicht mehr akzeptieren will, den einzigen Hinweis den ich bis jetzt gefunden habe ist auf: http://www.scripting4v5.com/additional-articles/catia-v6-macro-programming/
Jedoch lässt sich das Makro mit den Begriffen "CATIAShape", "CATIAShape3D", "3D-Part" etc. nicht kompilieren...
Hat hier evtl. jemand mehr Einblick??
Würd mich über jede Hilfe freuen!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP