Rodzina części makr dla folderu

Witam

Szukam makra, które pozwoli mi wyodrębnić rodzinę części z pliku części.

I że to makro jest przeprowadzane dla całego folderu (zawierającego plik części X)

Zaznaczam, że elementy nie mają do stworzenia części rodzinnej.

To, co mnie interesuje, to pobranie JEDNEJ właściwości wspólnej dla wszystkich moich części w pliku Excel.

Pomysły są mile widziane.

Dziękuję

1 polubienie

Witam

Udostępniam stworzone przeze mnie makro, które ma większość potrzebnych funkcji (wyszukiwanie w folderze i podfolderze części oprogramowania ; odczytywanie i modyfikowanie niestandardowych właściwości; wypełnianie pliku tekstowego)

Uważaj, to trochę bałagan, bo się nie finalizuje


macrorecusive.txt

Witaj slauzeralu,

Ale twoje makro niewiele mi pomaga.

Dziękuję za pomoc!

1 polubienie

Witam

Aby mieć pewność, że zrozumiesz. Potrzebujesz makra, które:

  1. Zapętla pliki .sldprt i .sldasm z folderu
  2. Odzyskuje właściwość każdego z plików
  3. Dodaje wartość właściwości do tabeli programu Excel.

 

2 polubienia

Cześć remrem,

Kiedy mówisz "zapętlone pliki", co masz na myśli?

W przeciwnym razie tak, określam, że są tylko pliki .sldprt

Co do reszty, to wszystko,

  1. Odzyskuje właściwość każdego z plików
  2. Dodaje wartość właściwości do tabeli programu Excel
1 polubienie

 Więc

  1. Wyszukuje pliki .sldprt w folderze
  2. Odzyskuje właściwość każdego z plików
  3. Dodaje wartość właściwości do tabeli programu Excel.

Jak nazywa się ta nieruchomość?

Czy muszę wracać do informacji o każdym z plików w skoroszycie: nazwa, ścieżka itp.?

Czy powinniśmy również szukać w podfolderach?

Czy kiedykolwiek tworzyłeś inne makra?

Czy możliwe jest posiadanie folderu ze spójnymi plikami do przetestowania?

Wiem, że to wiele pytań, ale jest to niezbędne przed kodowaniem czegokolwiek. ;-)

 

2 polubienia

Tak, to dokładnie to:

"Wyszukuje pliki .sldprt w folderze

Odzyskuje właściwość każdego z plików

Dodaje wartość właściwości do arkusza kalkulacyjnego programu Excel."

W przypadku pytań:

Jak nazywa się ta nieruchomość? $PROPRIETE@Liczba otworów.

Czy muszę wracać do informacji o każdym z plików w skoroszycie: nazwa, ścieżka itp.? Nie, tylko pole nieruchomości.

Czy powinniśmy również szukać w podfolderach? Nie, dokumenty znajdują się bezpośrednio w pliku.

Czy kiedykolwiek tworzyłeś inne makra? W przypadku makro dotarłem "po omacku", zbierając kawałki na prawo i lewo...

Załączam plik z 5 sztukami do przetestowania.


lynkoa.zip

Witam

 

Powinieneś spojrzeć z tą formułą:

Sub parametre()

Dim retVal As Boolean
Właściwość Dim jako ciąg
kawałek = Arkusze("Chemin_pièce"). Range("A1") Otwiera łącza do plików

Ustaw swApp = CreateObject("SldWorks.Application")

       
        Ustaw część = swApp.OpenDoc6(element, 1, 0, "", longstatus, longwarnings)

    Ustaw swModel = swApp.ActiveDoc
    Ustaw swConfigMgr = swModel.ConfigurationManager
    Ustaw swConfig = swConfigMgr.ActiveConfiguration
    Z=swConfig.Name                                                 'Pobiera nazwę konfiguracji
               
        właściwość = swModel.GetCustomInfoValue(Z, "Waga")
        Arkusze("Arkusz1"). Zakres("A1"). Wartość = ' właściwość            'kopiuje' wartość właściwości 'waga' do arkusza Excela

Koniec subwoofera

 

Powinieneś spróbować z tym, a następnie musisz stworzyć pętlę, która pozwoli Ci to obejść.

 

Powodzenia

1 polubienie

Cześć PierrotDls,

Dzięki za makro, 

To bardzo dobry początek !!

Pozwala mi to na pobranie właściwości dla zdefiniowanej części.

Teraz muszę znaleźć:

- Jak otworzyć pliki ".sldprt" folderu, a nie konkretnego pliku.

- Zwiększ komórkę "A1" tak, aby właściwości wypełniały się jedna pod drugą.

Dziękuję!

Dobry wieczór

W załączeniu znajduje się fragment kodu do skanowania pliku.

Po prostu dodaj funkcje, aby pobrać właściwość, której szukasz i powinno działać.


scan_dossier.txt
1 polubienie

 Cześć Cyril.f

Dzięki za makro,

Ale kiedy dodaję linie odzyskiwania mojej nieruchomości, mam bezpośredni błąd kompilacji.

Dim fso As FileSystemObject 

Typ zdefiniowany przez użytkownika nie został zdefiniowany.

Jeśli możesz mi pomóc... Dziękuję

Witam

W edytorze vba (narzędzia> Odwołania należy aktywować następujące odwołania:

Środowisko uruchomieniowe skryptów firmy Microsoft

Biblioteka typów Solidworks 20xx

1 polubienie

Tak, rzeczywiście, to właśnie zobaczyłem.

Tak idealnie (no cóż, makro nie jest chyba najczystsze i najprostsze, ale działa)

Dziękuję!