Hallo allemaal Ik wil een VBA-macro maken die ' edge-on-edge ' schetsrelaties en wiebelige beperkingen, zoals het converteren van entiteiten, verwijdert, of het nu van een extern onderdeel is of een andere schets van hetzelfde onderdeel
Ik ben in de schets om behandeld te worden Ik voer de macro die elk element moet controleren om het type beperking te zien, als het ' op de rand › verwijderen
Ik weet niet hoe ik elk item 1 voor 1 moet selecteren Ik weet niet hoe ik moet controleren of het gelijk is aan ' op scherp ' of wiebelig Ik weet niet hoe ik de bijbehorende beperking kan verwijderen
Hier is mijn macro start
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swSketchMgr As SldWorks.SketchManager
Dim swSketch As SldWorks.Sketch
Dim swSelMgr As SldWorks.SelectionMgr
Dim swFeat As SldWorks.Feature
Dim nSketchStatus As Long
Dim boolstatus As Boolean
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swSketchMgr = swModel.SketchManager
Set swSketch = swSketchMgr.ActiveSketch
If swSketch Is Nothing Then
MsgBox "Éditer une esquisse et relancer la macro"
Exit Sub
End If
'For i = 1 To Count
'selectionner i element
'if relation existante =sgOFFSETEDGE
'boolstatus = Part.Extension.SelectByID2(xx, , ,, , , )
'swModel.EditDelete
'swModel.SketchManager.SketchConstraintsDel 1, "sgOFFSETEDGE"
'swModel.SketchConstraintsDel i, "sgOFFSETEDGE"
'Next i
swModel.ClearSelection2 True
End Sub
Hallo @Bob_2000 Leg in plaats daarvan uit waar je boos over bent in de code die door @Cyril_f wordt verstrekt en dan kunnen we meer specifieke vragen beantwoorden.
De "SkPoint ID" en "SkSeg ID" zijn geen variabelen maar volledige tekst, om in het debug-venster de punt-ID van de schets (sk → schets) en SkSeg de ID van het segment weer te geven.
Je kunt merken dat ze tussen " ", maar vooral dat deze woorden niet worden uitgesproken (met een dim bijvoorbeeld), dus geen variabelen kunnen zijn.
Hallo Ik had geen tijd om te testen, maar er zijn filtercriteria voor wat deze code moet scannen. Kortom, het is ingesteld op Alles en afhankelijk van het resultaat kun je niet-geïdentificeerde gevallen tegenkomen die wiebelige schetsen of andere kunnen zijn. Je zou het filter moeten instellen op de elementen die wiebelig zijn om een specifieke lus op deze status te maken. Ik heb in ieder geval tot het einde van de week geen toegang tot SW.