Hallo
Ik heb een macro van 98% en ik droog een beetje voor de andere 2%.
Deze macro voegt automatisch markeringen toe aan het einde van de buiglijn, op een markeringslaag en in geel.
Het probleem komt van een onderdeel, wanneer de grootte van het onderdeel wordt verkleind, komt de markering uit het onderdeel.
Door de macro opnieuw te starten, wordt verondersteld de markeringslijnen te wissen, buiten de tijd (zelden) wordt de markering niet gewist.
En er verschijnt een bericht in de foutopsporingsmodus bovenaan het venster:
" Geen van deze entiteiten kan worden verwijderd "
Hier is het deel van mijn code om de opmaak te verwijderen:
Sub suppressMarquage()
Dim swModel As Object
Dim vSkSegArr As Variant
Dim vSkSeg As Variant
Dim swSkSeg As SldWorks.SketchSegment
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim Numberline As Integer
Dim lNumSegments As Long
Dim myModelView As Object
'On supprime le marquage existant
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swDraw = swModel
Set myModelView = swModel.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
Set swView = swDraw.GetFirstView.GetNextView
lNumSegments = swView.GetLineCount2(1)
If lNumSegments > 0 Then
Set swSketch = swView.GetSketch
vSkSegArr = swSketch.GetSketchSegments
For Each vSkSeg In vSkSegArr
Set swSkSeg = vSkSeg
boolstatus = swModel.Extension.SelectByID2(swSkSeg.GetName, "SKETCHSEGMENT", 0, 0, 0, False, 0, Nothing, 0)
swModel.EditDelete
Next vSkSeg
End If
'On supprime l'annotation marquage
Dim bFind As Boolean
Dim swNote As SldWorks.Note
Dim swAnn As SldWorks.Annotation
Dim bret As Boolean
Set swNote = swView.GetFirstNote
Do While Not swNote Is Nothing
bFind = False
Debug.Print "Note:" & swNote.GetText
If swNote.GetText Like "*Marquage laser*" Then
bFind = True
Debug.Print "bFind:" & bFind
Set swAnn = swNote.GetAnnotation
bret = swAnn.Select2(True, 0)
Set swNote = swNote.GetNext
swModel.EditDelete
End If
If Not bFind Then Set swNote = swNote.GetNext
Loop
End Sub
En desnoods een voorbeeld van MEP die niet goed werkt (sw 2020)
Als iemand een voorsprong heeft, ben ik al te lang aan het opdrogen over het onderwerp!
PI_200416-toets. SLDPRT (580.9 KB)
PI_200416-test. SLDDRW (287.8 KB)