Witaj grupo,
Czy ktoś mógłby mi doradzić w sprawie wykonalności makra. Współpracuję ze spawaczami mechanicznymi i chciałbym wybrać powierzchnię, a następnie, aby makro mogło wykonać następujące kroki:
1-Zachowaj wybraną powierzchnię
2- Znajdź nazwę mojego katalogu na mojej liście spawaczy mechaników zgodnie z wybraną powierzchnią. (Myślę, że muszę szukać po ciele i nazwie powierzchni, ale czy mogę łatwo znaleźć ciało z powierzchnią)
3- Eksportuj powierzchnię z nazwą mojego katalogu w DXF
Myślę , że jest to możliwe, ale nie jestem zbyt dobry w programowaniu, zanim zacznę, chciałbym poznać wasze komentarze.
Dziękuję
Witam.
W odniesieniu do pkt 1. Poniżej znajduje się kod, którego używam do pobrania komponentu, ale który przechodzi przez ten krok.
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
Następnie dla punktu 2 muszę mieć kawałek kodu, w razie potrzeby muszę go poszukać.
Zobaczmy, czy punkt 3 jest wykonalny, nigdy nie mieliśmy takiego przypadku.
Mam nadzieję, że to ci pomoże.
A. Mendes
1 polubienie