Wywoływanie makra za pomocą formularza użytkownika

Witam

Mając kilka makr chciałbym zrobić przejrzysty układ, aby wybrać odpowiednie makra. Stworzyłem więc makro, które otwiera formularz użytkownika zawierający różne przyciski. Chciałbym otworzyć moje różne makra za pomocą tych przycisków. Problem w tym, że nie mam pojęcia, jak z nich korzystać.

Próbowałem z tym:

Prywatny Sub CommandButton2_Click()
Dim swApp jako SldWorks.SldWorks

Ustaw swApp = Application.SldWorks
    
UruchomMakro "\\***-srv-fic-01.******.local\OneDrive$\_Solidworks resources\Templates ******\Macro.swp", "Makro", "main"
    

Sub RunMacro(ścieżka jako ciąg, nazwa_modułu jako ciąg, nazwa_modułu jako ciąg)
swApp.RunMacro2 ścieżka, nazwa_modułu, nazwa_proc, swRunMacroOption_e.swRunMacroUnloadAfterRun, 0
Koniec subwoofera
Koniec subwoofera

Niestety to nie działa. Ktoś ma pomysł? Może z funkcją Call (próbowałem, ale nie zadziałało, być może źle zakodowałem funkcję)

Dziękuję

Pozdrowienia

Aby wywołać makro:

https://www.codestack.net/solidworks-api/application/frame/run-macros-group/

W przeciwnym razie możesz użyć Customtoolbar w narzędziach Visiativ, który pozwala utworzyć menu ze wszystkimi makrami + ikona:

https://help.visiativ.com/mycadtools/2020/fr/CustomToolBar.html

Dziękuję za odpowiedź 

Kod na stosie kodu znam go, to nawet ten, którego użyłem jako przykładu, ale nie działa dla przycisku formularza użytkownika. 

Jeśli chodzi o mycadtools, nie jestem temu przeciwny, ale moja firma nie zamierza inwestować od razu, dlatego opracowałem kilka makr do automatyzacji niektórych procesów. I dlatego chcę zrobić przejrzysty układ, aby był ładny i przejrzysty.

Pozdrowienia

W przypadku narzędzi Mycadtools zwykle masz do nich dostęp, ponieważ w Twoim profilu widzimy, że jesteś subskrybentem Mycadservice.

Czy w przypadku kodu z formularza użytkownika próbowałeś użyć makra przechowywanego z bardziej tradycyjnego dysku? (np. c:\Temp\Makro.swp)

Próbowałem, ale to też nie działa. Wciąż szukam, ale w mózgu zaczynają mi się plątać. Sprawdziłem dwa razy na stosie kodu, ale też nic nie ma.

Rozwiązaniem byłoby zaprogramowanie wszystkich makr w każdym przycisku formularza użytkownika, ale jest to prawie niemożliwe, ponieważ mam nieobliczalną liczbę zmiennych, nie ma nic lepszego niż popełnianie błędów.

Tam właśnie jestem, jeśli ktoś chce dołożyć swój kamień do gmachu, jest mile widziany.

Dziękuję

Pozdrowienia 

Witam

Zobacz załączone makra. Musisz umieścić makro1, makro2 i makro3 w folderze "C:\temp\", a następnie uruchomić makro "MacroLaunchViaUserForm.swp"

Pozdrowienia


macrolaunchingprzezformularz użytkownika.swp
makro1.swp
makro2.swp
makro3.swp
2 polubienia

Witam

Głupie pytanie; Ale dlaczego nie umieścić swoich makr na pasku "makro" z pięknymi ikonami, aby poznać ich zastosowania.

https://www.lynkoa.com/forum/2d/creer-un-bouton-macro

1 polubienie

Lub kliknij prawym przyciskiem myszy na pasku poleceń==>custom==>command==> następnie wpisujesz makro i chwytasz ostatnią ikonę, przeciągasz ją i upuszczasz na pasek i postępujesz  zgodnie z instrukcjami...

1 polubienie

@d.roger To świetnie, dziękuję, byłem przed tym tyle razy, to było takie proste. Działa cudownie, jeszcze raz dziękuję.

@ac kobra 427 Rzeczywiście, taki był pomysł na początku, ale na razie mam 8 makr i może więcej później. Tak więc nadpisywanie paska poleceń również nie jest najlepszą opcją, stąd moje pragnienie stworzenia formularza użytkownika, który grupuje wszystkie przyciski, tak aby prosty przycisk na pasku poleceń był niezbędny.

Jeszcze raz dziękuję i życzę miłego dnia.

Pozdrowienia   

1 polubienie