Hallo
Ik wil via een macro een notitie toevoegen die betrekking heeft op de eigenschap van het onderdeel waaraan het is gekoppeld in een SolidWorks-tekening.
Ik heb geprobeerd de SolidWorks-registratiemethode te gebruiken, maar de gegenereerde code werkt niet voor mij. Dit komt omdat het onderdeel wordt geselecteerd op basis van zijn coördinaten en als ik deze macro wil toepassen op een andere tekening waar het onderdeel zich bevindt, werkt het niet als het onderdeel niet op dezelfde manier op het vel wordt geplaatst.
Hier is de code gegenereerd door SolidWorks:
Dim swApp als object
Deel dimmen als object
Dim boolstatus als Booleaanse
Dim longstatus As Long, longwarnings As Long
Sub hoofd()
Stel swApp in = _
Toepassing.SldWorks
Deel instellen = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("", "EDGE", 0.418950851731392, 0.261697604464967, -499.977072134691, Onwaar, 0, Niets, 0)
MyNote dimmen als object
MyAnnotation dimmen als object
myTextFormat dimmen als object
Set myNote = Part.InsertNote("$PRPMODEL:""Oriëntatiepunt""")
Zo niet, dan is myNote niets
myNote.LockPosition = Onwaar
myNote.Hoek = 0
boolstatus = myNote.SetBalloon(0, 0)
Stel myAnnotation in = myNote.GetAnnotation()
Zo niet, dan is myAnnotation niets
longstatus = myAnnotation.SetLeader3(swLeaderStyle_e.swSTRAIGHT, 0, Waar, Onwaar, Onwaar, Onwaar)
boolstatus = myAnnotation.SetPosition(0.304559076486096, 0.311886588479215, 0)
boolstatus = myAnnotation.SetTextFormat(0, True, myTextFormat)
Einde als
Einde als
Deel.ClearSelection2 Waar
Deel.VensterHertekenen
Einde Sub
Ik heb geprobeerd boolstatus te vervangen = Part.Extension.SelectByID2("", "EDGE", 0.418950851731392, 0.261697604464967, -499.977072134691, False, 0, Nothing, 0)
bij
boolstatus = Part.Extension.SelectByID2("Part2-1", "COMPONENT", 0.418950851731392, 0.261697604464967, -499.977072134691, Onwaar, 0, Niets, 0)
Maar het werkt niet.
Weet iemand een oplossing?
Bedankt