Hallo Gruppe,
Könnte mir jemand Ratschläge zur Machbarkeit eines Makros geben? Ich arbeite mit den mechanischen Schweißern zusammen und möchte dann eine Fläche auswählen, damit das Makro die folgenden Schritte ausführen kann:
1-Behalten Sie die ausgewählte Oberfläche bei
2- Suchen Sie den Namen meines Verzeichnisses in meiner Liste der mechanischen Schweißer entsprechend der ausgewählten Oberfläche. (Ich denke, ich muss nach dem Körper und dem Namen der Oberfläche suchen, aber kann ich den Körper mit der Oberfläche leicht finden)
3- Exportieren Sie die Oberfläche mit dem Namen meines Verzeichnisses in DXF
Ich denke, es ist möglich, aber ich bin nicht sehr gut im Programmieren, bevor ich anfange, würde ich gerne Ihre Kommentare haben.
Vielen Dank
Hallo.
Zu Punkt 1. Im Folgenden finden Sie einen Code, den ich zum Abrufen einer Komponente verwende, der jedoch diesen Schritt durchläuft.
Public swApp As Object
Public swmodel As SldWorks.ModelDoc2
Public asm As SldWorks.AssemblyDoc
Public composants() As Object
Public Selectmanager As SelectionMgr
Public bool1 As Boolean
Public y As Double
Public face As Face2
Public faceEntity As Entity
Public oss As String
Set swApp = Application.SldWorks
Set frame = swApp.frame
Set swmodel = swApp.ActiveDoc
swmodel.ClearSelection2 True
Set Selectmanager = swmodel.SelectionManager 'recuperer selection
swmodel.ClearSelection2 True ' effacer selection
MsgBox ("Sélectionner la piece ")
' boucle pour attente selection
bool1 = False
Do Until bool1 = True
If Selectmanager.GetSelectedObjectType3(1, -1) = 2 Then
bool1 = True
End If
For y = 1 To 50000
DoEvents
Next y
Loop
'recup le nom de la piece selectionnée
Set face = Selectmanager.GetSelectedObject6(1, -1)
Set faceEntity = face
Dann muss ich für Punkt 2 ein Stück Code haben, wenn nötig, muss ich danach suchen.
Mal sehen, ob Punkt 3 machbar ist, hatte diesen Fall noch nie.
In der Hoffnung, dass dies Ihnen helfen kann.
A. Mendes
1 „Gefällt mir“