Poprawić zapisywanie makr X_T w podfolderze?

W nawiązaniu do mojego starego pytania, chciałbym ulepszyć moje makro, aby zapisać moje X_T w podfolderze lokalizacji pokoju?

Mielibyśmy plik części lub złożenia w folderze, a w tym folderze podfolder o nazwie "FILES X_T" lub nasze makro zapisałoby mój wyeksportowany plik.

W jaki sposób wprowadzasz te zmiany?

 

Aktualny program:

 

Sub Sauvegarde_X_T()

 

   
Dim swApp As Object
Przyciemnij część jako obiekt
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim Locatie Jako Ciąg
Dim Locatie_aangepast As String
Przyciemnij OpenDoc jako obiekt
Dim Extensie_nieuw As String
Dim Extensie_oud As String
Dim retval As String
Dim Naam As String
Dim Naam_aangepast As String

 

Ustaw swApp = CreateObject("SldWorks.Application")
Ustaw swModel = swApp.ActiveDoc
Ustaw OpenDoc = swApp.ActiveDoc()

Extensie_oud = ". SLDASM"
Extensie_nieuw = ". X_T"
Locatie = OpenDoc.GetPathName
Locatie_aangepast = Lewo(Locatie, Len(Lokatie) - 7)
retval = Dir$(Locatie_aangepast & Extensie_oud)
Naam = Dir$(Locatie)
Naam_aangepast = Lewo(Naam, Len(Naam) - 7)
Titel = OpenDoc.GetTitle
Titel = Lewo(Tytuł, (Len(Tytuł)))


' Jeśli retval = Naam Then
'nRetval = swApp.SendMsgToUser2(Naam_aangepast & " DXF utworzony !!", swMbWarning, swMbOk)
' Koniec, jeśli
    
    
Ustaw część = swApp.ActiveDoc
longstatus = Part.SaveAs3(Naam_aangepast & Extensie_nieuw, 0, 0)

Koniec subwoofera


save_x_t.swp

Spróbuj zastąpić

longstatus = Part.SaveAs3(Naam_aangepast & Extensie_nieuw, 0, 0)

W ten sposób:

FilePath = Left(NazwaŚcieżki, InStrRev(NazwaŚcieżki, "\"))
NazwaPliku = Right(NazwaŚcieżki, Len(NazwaŚcieżki) - InStrRev(NazwaŚcieżki, "\"))
longstatus = Part.SaveAs3(ŚcieżkaPliku & "\Fichier_XT\" & Extensie_nieuw, 0, 0)

----------------------

Nawiasem mówiąc, skorzystaj z okazji, aby usunąć:

  ' Jeśli retval = Naam Then
        'nRetval = swApp.SendMsgToUser2(Naam_aangepast & " DXF utworzony !! ", swMbWarning, swMbOk)
   ' Koniec, jeśli

 

2 polubienia

ok, przetestuję :) Dziękuję, będę Cię informować na bieżąco.

OSTROŻNY:

Popełniłem przeoczenie!

Przyciemnij ścieżkę pliku jako ciąg, nazwę pliku jako ciąg

FilePath = Left(Locatie, InStrRev(Locatie, "\"))
MsgBox FilePath & "Fichiers_XT" & Naam_aangepast & Extensie_nieuw
longstatus = Part.SaveAs3(ŚcieżkaPliku & "Fichiers_XT\" & Naam_aangepast & Extensie_nieuw, 0, 0)

1 polubienie

ok, obejrzę dziś wieczorem lub jutro i tak ...

Właśnie próbowałem, jest idealny, z wyjątkiem nazwy mojego folderu, który nazwałem: "X_T PLIKI"

Daje to:

 

Sub Sauvegarde_X_T()


Dim swApp As Object
Przyciemnij część jako obiekt
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim Locatie Jako Ciąg
Dim Locatie_aangepast As String
Przyciemnij OpenDoc jako obiekt
Dim Extensie_nieuw As String
Dim Extensie_oud As String
Dim retval As String
Dim Naam As String
Dim Naam_aangepast As String

 

Ustaw swApp = CreateObject("SldWorks.Application")
Ustaw swModel = swApp.ActiveDoc
Ustaw OpenDoc = swApp.ActiveDoc()

Extensie_oud = ". SLDASM"
Extensie_nieuw = ". X_T"
Locatie = OpenDoc.GetPathName
Locatie_aangepast = Lewo(Locatie, Len(Lokatie) - 7)
retval = Dir$(Locatie_aangepast & Extensie_oud)
Naam = Dir$(Locatie)
Naam_aangepast = Lewo(Naam, Len(Naam) - 7)
Titel = OpenDoc.GetTitle
Titel = Lewo(Tytuł, (Len(Tytuł)))


    
Ustaw część = swApp.ActiveDoc

Przyciemnij ścieżkę pliku jako ciąg, nazwę pliku jako ciąg

FilePath = Left(Locatie, InStrRev(Locatie, "\"))
MsgBox FilePath & "X_T FILES" & Naam_aangepast & Extensie_nieuw
longstatus = Part.SaveAs3(Ścieżka Pliku & "PLIKI X_T\" & Naam_aangepast & Extensie_nieuw, 0, 0)

Koniec subwoofera


save_x_t_-_fichiers_x_t.zip

Daj spokój, jeśli chcę, że gdy folder "X_T FILES" nie istnieje, że może go utworzyć, aby wstawić do niego wyeksportowany plik, jak powinniśmy to zaprogramować?

Tworzenie folderów lub podfolderów jest dobre w trybie automatycznym, jest lepsze

jedynym problemem moim zdaniem jest to, że w twoich częściach pliki, jeśli skończysz z X w folderach

Parasolid, iges, sat itp.....

Myślę, że manipulacja będzie trudniejsza, aby wiedzieć, czy przekonwertowałeś ten lub inny plik

Będziesz zmuszony otworzyć te podfoldery, aby dowiedzieć się, czy tam są i czy odpowiadają twojej części lub montażowi

Automatyzm jest dobry, ale moim zdaniem może być niebezpieczny, aby je sprawdzać  , więc w końcu strata czasu

@+;-))

Już tak pracuję z moim pdf i dxf dla moich planów i bardzo mi to odpowiada. W każdym razie jest jak BatchConverter, z wyjątkiem patrzenia na datę i jeśli został utworzony, nie ma prawdziwego sposobu, aby sprawdzić, czy jest w porządku.

Więc czy ktoś ma propozycję?

1 polubienie

Z drugiej strony uważam, że nic nie stoi na przeszkodzie, aby zapisać różne wersje w plikach części 

i zrobić ich kopię w osobnym folderze (dobrym dla FAB lub innym) na różne sposoby  

Rozszerzenia po jednym pliku na rozszerzenie i na cel

@+ ;-))

Nowe pytanie?

Cóż, celem jest zrobienie tego w trybie automatycznym za pomocą makra.

Naprawdę nie widzę problemu...

Już tak pracuję przy planach 2D. Nigdy nie miałem problemu, w każdym razie sprawdzam co robię bardzo regularnie.

W końcu każdy ma swoją własną metodę pracy. Jestem mój :)

Więc czy ktoś ma propozycję?

1 polubienie