Nagrywanie makr PDF z odzyskiwaniem właściwości?

Cze wszystkim

Tworzę makro, które pozwala mi zapisać rysunek jako plik PDF w określonym folderze. Jak na razie wszystko działa poprawnie (co za oszczędność czasu).

Ale chciałbym dodać do niego zmianę:

Chciałbym, aby nazwa pliku PDF była zgodna z właściwością "reference", próbowałem różnych rozwiązań, ale nie mogę tego zrobić.

Czy ktoś ma rozwiązanie???

W załączeniu znajduje się moje makro.

Z góry dziękuję.

 


macro_pdf.swp

Witam

Czy mógłbyś zamieścić kod swojego makra w pliku TXT?

Proszę bardzo...


macro1.txt
1 polubienie

Slt

Oto moje makro w formacie TXT.

Mam nadzieję, że znajdę rozwiązanie, dziękuję.

 

 


macro_pdf.txt
1 polubienie

Jak stwierdzono w pytaniu:

http://www.lynkoa.com/forum/3d/macro-d-enregistrement-en-pdf

Musisz przejść do 3D, aby odzyskać nieruchomość.

Przetestuj makro w PJ.


macro_pdf_reference.txt
1 polubienie

Widziałem już to pytanie i próbowałem kilka razy, ale to nie zadziałało.

Kiedy uruchamiam makro, dałeś mi jego zablokowane na tym poziomie:

Ustaw swView = swDraw.GetFirstView

Dziękuję


bloquage_macro.jpg

Czy jest to plan, który jest otwarty w SolidWorks? Co to jest komunikat o błędzie?

Tak, to plan, który jest otwarty.

Błąd wykonania 91

Nie ustawiono zmiennej obiektowej lub zmiennej blokowej

 


bloquage_macro_2.jpg
1 polubienie

Dobry wieczór

Problem polega na tym, że w wierszu Set swDraw = swModel.

Ponieważ swModel nie istnieje, jest to Set swDraw = Part

Z drugiej strony, jeśli kod jest kompletny, dobrze byłoby usunąć deklaracje zmiennych, które nie są używane i zadeklarować te, które nie są używane (np. Dim swDraw As SldWorks.DrawingDoc)

 

1 polubienie

Spróbuj z załączonym plikiem.

Rzeczywiście, zgodnie z zaleceniami @liryc , jeśli Twój kod jest ograniczony do tego makra, wyczyściłem również zmienne.

 


macro_pdf_reference.txt

Witam

Po teście z makrem .PL nie ma już błędów wykonania, ale nic się nie dzieje.

Widzimy, że jego praca nie jest tworzona, ale nie jest tworzony żaden dokument PDF.

To proste makro sprawia mi wiele kłopotów.

Dziękuję.

Po bliższym przyjrzeniu się, te wiersze są dla mnie dziwne:

swPath = Left(swPathName, InStrRev(swPathName, "PLANS_PDF_SYLOB", , 1))
swPath = swPath & "T:\PLANS_PDF_SYLOB\"

Dla Ciebie też?

Witam

Potwierdzam uwagę .PL.

Biorąc pod uwagę, jak jest zakodowany, jest to ścieżka taka jak xxxT:\PLANS_PDF_SYLOB\ więc oczywiście niewiele się dzieje.

Umieść debug.print swPath i zobacz, jak jest sformatowany.

Również przyglądając się bliżej mam wrażenie, że kod jest bardzo skomplikowany jak na coś bardzo prostego.

 

Witam

Po wielu próbach bez rezultatów porzucam moje makro, co jest dość proste.

Makro ==> Zapisz jako PDF w ustalonym konkretnym pliku o nazwie pliku = właściwość Punkt odniesienia.

Dziękuję wszystkim, którzy starali się mi pomóc.

 

Szkoda pozostać przy porażce, byłeś naprawdę blisko celu.

Spojrzałeś na trop, który podałem Ci w mojej ostatniej wiadomości i ten liryc również się potwierdził.

Chcesz opublikować ostatni kod, który posiadasz, a ja sprawdzę się, kiedy będę miał czas?

Szkoda pozostać przy porażce, byłeś naprawdę blisko celu.

Spojrzałeś na trop, który podałem Ci w mojej ostatniej wiadomości i ten liryc również się potwierdził.

Chcesz opublikować ostatni kod, który posiadasz, a ja sprawdzę się, kiedy będę miał czas?

Witam

Szukając makro tego typu przyznaję się do rozczarowania, że ten nie jest skończony.

Ale dzięki Wam udało mi się to sfinalizować.

Wada, którą znalazłem, polega na tym, że nazwa dżemu, który miał być przesłuchiwany, brzmiała "" !!

referenc = swRefDoc.GetCustomInfoValue("", "referenc")

Po modyfikacji:

cfgName = swRefDoc.GetActiveConfiguration.Name
referenc = swRefDoc.GetCustomInfoValue(cfgName, "referenc")

Dodałem również funkcję kontrolną, jeśli plik jest już otwarty, aby mieć pewność, że coś zapiszesz.

Mam nadzieję, że mogę być przydatny dla innych.


slddrw_vers_pdf_avec_proprietes.txt
5 polubień