Witam
Próbuję odzyskać wymiary rysunkowe w celu podstawienia ich w arkuszu exel oraz w tabeli rysunkowej
Ostatecznym celem jest stworzenie arkusza kontrolnego dla części
Domyślam się, że moje liście za każdym razem są inne.
Najlepszą rzeczą, jaką możesz zrobić, to zapoznać się z kursami ;)
Utknąłem w kwestii repatriacji kursów na Exel
..
Tu załączony jest początek kodu, który może być przydatny
anotation_plan_solidworks.txt
Witam
W makrze otwierasz program Excel, ale nic mu nie wysyłasz. Musisz także stworzyć segregator, arkusz i wypełnić komórki. Plik debug.prints służy tylko do wyświetlania wyniku w oknie danych wyjściowych VB. Oto to samo makro, ale z wynikiem wyświetlanym w programie Excel.
Pozdrowienia
anotation_plan_solidworks-2.txt
2 polubienia
Ekstrakcja to przepustka nikel dziękuję
, czy masz rozwiązanie, aby dodać notatkę do rysunku, aby odwołać się do wymiaru w tabeli i rysunku w bardziej przejrzysty sposób
1 polubienie
Witam
Na przykład możesz dodać tekst u dołu numeru telefonu, jeśli nie jest on jeszcze używany. Aby spróbować, możesz dodać linię swDispDim.SetText swDimensionTextCalloutBelow, "(Ref A" & counter & ")" tuż przed wierszem . Zakres("A" i licznik). Value = "Odniesienie poniżej : " & swDispDim.GetText(swDimensionTextCalloutBelow)
Pozdrowienia
Witam
Przede wszystkim chciałbym zaznaczyć, że o makro nie wiem absolutnie nic!
Odkopuję stary temat. Chciałabym wykonać karty kontrolne na warsztaty. Znalazłem ten post z tekstem makra. Kopiuję wklejam i dziwię się, że to nie działa. Po co? Jeśli ktoś da mi swój czas na wyjaśnienie tej tajemnicy.
Niech Moc będzie z tobą

obiwan.swp powiedział:
1 polubienie
Witaj OBI WAN,
Musisz dodać odniesienie do programu Microsoft Excel w swoim makrze, w tym celu przejdź do Narzędzia / Referencje... i dodajesz bibliotekę obiektów programu Microsoft Excel xx.x:

Pozdrowienia
3 polubienia
Witaj @d.roger
Dziękuję za interwencję, a zwłaszcza za skuteczność.
Niech Moc będzie z wami.
1 polubienie
Cześć,@d.roger
Dzięki Państwa pomocy poczyniłem znaczne postępy w temacie arkuszy kontrolnych. ale chciałbym pójść jeszcze dalej z makro. Wyjaśniam, że podczas wykonywania makra otwiera dowolny plik Excela, ale czy można sprawić, by otworzył wstępnie wypełniony plik Excela, który zawierałby makro.
Niech Moc będzie z wami.
FYI możemy zrobić coś bardzo zbliżonego do tego, co chcesz zrobić z narzędziem "tabela tolerancji" MyCADTools, mam wrażenie (utworzenie tabeli pobierającej wymiary + ich lokalizacja)
1 polubienie
Witaj OBI WAN,
Tak, jest to możliwe, zamieniasz linie:
Dim xlApp As Excel.Application
Ustaw xlApp = Nowy Excel.Aplikacja
Dim wbk As Excel.Workbook
Dim sht As Excel.Arkusz roboczy
Z xlApp
. Widoczne = Prawda
Ustaw wbk = . Skoroszyty.Dodaj
Ustaw sht = wbk. Arkusz ActiveSheet
Zakończ się na
Za pośrednictwem tych:
Dim xlApp As Excel.Application
Dim wbk As Excel.Workbook
Dim sht As Excel.Arkusz roboczy
Ustaw xlApp = CreateObject("Excel.application")
xlApp.Visible = Prawda
Ustaw wbk = xlApp.Workbooks.Open("C:\Użytkownicy\XXX\Pulpit\anotation_plan_solidworks-5.xlsx")
Ustaw sht = wbk. Arkusz ActiveSheet
Oczywiście zastępując nazwę pliku swoim plikiem.
Następnie musisz zmienić linie między "Z sht" a "End With", aby umieścić swoje wartości w odpowiednich komórkach.
Pozdrowienia
2 polubienia
Witam
Dziękuję @d.Roger, dzięki tobie działa jak tona.
Finalizuję i udostępniam na Lynkoa.
Jeszcze raz bardzo dziękuję.
Moc jest z tobą.
2 polubienia
@ mdelbecq Nie mam mycadtools sniff.
Witaj @d.roger
Oto makro, a także plik Excel do wykonania arkusza kontrolnego. Jest tylko błąd, jeśli w planie jest tam ocena anioła, to się psuje.
W przeciwnym razie jest to proste na planie, aby ograniczyć sortowanie wymiarów, musisz najpierw umieścić tylko wymiary, które mają być sprawdzane, a następnie uruchomić makro, na otwartym pliku Excela kliknij przycisk, a w drugiej zakładce znajduje się arkusz kontrolny. Jeśli ktoś ma inny pomysł, aby go dostosować, odpuść.
PS: w makrze pamiętaj o zmianie ścieżki do pliku Excel
Niech moc będzie z wami.
obi_wan.zip
Witam
Więc tak, to działa, chyba że wymiar jest kątem, który jest normalny, ponieważ w twoim makrze w Excelu masz wiersz "Temp = Replace(Split(Temp, "(")(1), "mm)", "")" który pozwala na przerobienie wartości pobranej z arkusza utworzonego automatycznie z makra SW, ale ta wartość nie jest w tym samym formacie zapisu, co dla Pozostałe strony to, co widzimy w liniach:
Jeśli swDispDim.GetType = 3, to
. Zakres("A" i licznik). Value = "Wartość : " & swDimension.GetSystemValue2("") * 180 / pi & Chr(176)
Inaczej
. Zakres("A" i licznik). Value = "Wartość: " & swDimension.GetSystemValue2("") * 1000 / 25.4 & """" & " (" & swDimension.GetSystemValue2("") * 1000 & "mm)"
Zakończ jeżeli:
makra programowego.
Te wiersze to tylko styl formatowania zapisu wartości wymiaru dla pliku Excel, który można łatwo zmienić w razie potrzeby.
Trudno mi zrozumieć, dlaczego przechodzisz przez makro w pliku Excel, wszystko, co w nim robisz, można łatwo zrobić w makrze SW.
Ze swojej strony skłaniałbym się do stworzenia standardowego formularza w Excelu, a następnie wypełnienia go z makra SW, co pozwala uniknąć konieczności autoryzacji makr w Excelu i umożliwia również odczyt tego pliku na przykład w LibreOffice.
Wiersze, które mają zostać przerobione w makrze programowym, to wiersze między wierszami "Z sht" i "Zakończ na", aby wyświetlić tylko te wartości, które są uważane za niezbędne i wysłać je do żądanych komórek programu Excel. Mały przykład z pewnością pojawi się w nadchodzących dniach (lub godzinach) po mojej dostępności.
Pozdrowienia
Witam
Oto mały przykład, zgodnie z wcześniejszymi zapowiedziami. Wystarczy zmienić ścieżkę do pliku Excel w makrze, ale pozostawiając nazwę pliku bez zmian, a następnie uruchomić go z SW z załadowanym planem.
Pozdrowienia
fichecontrole.zip
1 polubienie
Witaj @d.roger
Jesteś mistrzem, moim mistrzem. Cóż, jak wspomniano powyżej, nie mam żadnej wiedzy na temat VBA, więc majsterkuję, majsterkuję.
Macor działa dobrze, ale co ciekawe, muszę go uruchomić 2 razy. Za pierwszym razem ryczy przy pierwszych kursach. Zamykam Excela, mam błąd 1004 odpowiadam "koniec" Restartuję makro i cud działa idealnie.
Niech Moc pozostanie z wami.
Witam
Istnieje kilka możliwych przyczyn:
- 1 Proces programu Excel jest już uruchomiony.
- Zbyt szybkie sukcesywne uruchamianie makra (Excel nie zdążył się całkowicie zamknąć).
- ...
Nie poświęciłem czasu na zajęcie się błędami w kodzie...
Pozdrowienia
1 polubienie
Dziękuję
Pewnego dnia będę musiał poświęcić trochę czasu, aby zacząć z VBA.
Niech Moc będzie z wami.
1 polubienie
OBI WAN
"W przeciwnym razie jest to proste: na mapie, aby ograniczyć sortowanie wymiarów, musisz najpierw umieścić tylko wymiary, które mają być sprawdzone, a następnie uruchomić makro, na otwartym pliku Excel, kliknij przycisk, a w drugiej zakładce znajduje się arkusz kontrolny. Jeśli ktoś ma inny pomysł, aby go dostosować, niech odpuści".
Co masz na myśli, mówiąc o stawianiu na pierwszym miejscu?
Ponieważ mam rysunek z około 100 bokami, a w moim panelu sterowania chcę mieć tylko 5 boków
Dziękuję