Witam
Pozwalam sobie prosić Pana/Panią o pomoc w związku z bardzo irytującym problemem, w którym utknąłem.
Próbuję wyeksportować wartości z SolidWorks za pomocą makra, a makro działa poprawnie, Excel otwiera się poprawnie (poprawnie nazywa plik) i tam. Brak danych w pliku Excel! I to niezależnie od makr, których używam (próbowałem z kilkoma funkcjonalnymi makrami znalezionymi w sieci, aby mieć pewność, że nie jest to związane z makrem). Ale ostatnio pracowałem na nowej stacji roboczej, więc musi ona pochodzić z jakiejś konfiguracji oprogramowania.
Moja konfiguracja oprogramowania: Solidworks 2017 / Excel Office365
Podsumowanie: Uruchomienie makra z poziomu oprogramowania (na przykład Eksportuj właściwości niestandardowe do pliku Excel.swp) / Program Excel otwiera i tworzy plik "Szczegóły właściwości" / Makro kończy się bez wyświetlania błędu / Brak danych w pliku w pliku
Jakieś pomysły, skąd może wynikać problem?
Z góry dzięki,
François Cavin
Witam
Opublikuj swój kod, abyśmy mogli Ci pomóc.
2 polubienia
Witam
Oto przykład makra, za pomocą którego mam całkowicie pusty plik Excela.
(dla przypomnienia zdarza mi się to ze wszystkimi makrami, które wypróbowałem)
Miłego dnia
Francuski
export_custom_properties_to_excel.swp_.zip
Witam
Błąd pochodzi z tego wiersza:
Set xlWs = xlWb.Worksheets("Sheet1")
Służy do pobierania arkusza o nazwie "Arkusz1" w skoroszycie. Nie ma jednak arkusza "Arkusz1", ponieważ w języku francuskim domyślna nazwa to "Feuil1".
Radzę więc zmodyfikować linię w następujący sposób:
Set xlWs = xlWb.Worksheets(1)
Spowoduje to pobranie pierwszego arkusza skoroszytu, niezależnie od tego, jak się nazywa.
Twoje makro wtedy działa.
Aby zobaczyć Twój problem, uruchomiłem makro wiersz po wierszu z [F8]. Dzięki temu możesz zobaczyć szczegóły i zobaczyć, jak zmienne ewoluowały. W tym przypadku zmienna "xlWs" pozostała pusta.
Kolejna rada, unikaj kolejki:
On Error Resume Next
Pozwala to na wyświetlanie błędów.
2 polubienia
Witam
Bardzo dziękuję za odpowiedź, to rzeczywiście był problem.
A także dziękuję za radę.
Miłego dnia
Franciszek