Re - Kodyfikacja korpusów spawanych

Dla wszystkich naszych mechanicznie spawanych części i części blaszanych systematycznie zmieniamy nazwy spawanych korpusów w SolidWorks.

Kodyfikacja ta jest następująca :   NAZWA FICHIERP00

00 , przy czym ostatnie 2 cyfry to licznik przyrostowy, który pozwala na rozróżnienie każdego z ciał.

Przykłady:

  • Część spawana mechanicznie

  • Część arkusza blachy

Aby to zrobić, jest to dość proste, używamy narzędzia "Smartproperties", działa bardzo dobrze.

(Zauważ, że jestem zainteresowany, mogę zrobić mały TUTORIAL)

Mój problem:

W przypadku, gdy zmieniamy nazwę istniejącej części spawanej mechanicznie lub blaszanej, zmieniam nazwę mojej części i dlatego jesteśmy zobowiązani zrobić to samo z listą części spawanych. Następnie musimy ponownie obsłużyć właściwości Smartproperties dla obiektów spawanych.

W tym konkretnym przypadku (gdy część o zmienionej nazwie ewoluuje pod względem rozmiaru, ale kształt się nie zmienia), szukamy szybszego i prostszego rozwiązania polegającego na zmianie nazw spawanych korpusów.

W praktyce zauważamy, że niektórzy rysownicy nie myślą o zmianie nazw spawanych korpusów.....

Pomysł (tu zwracam się do !! ekspertów od makr) polegałby na stworzeniu makra, które automatycznie zmienia nazwę (za pomocą prostego kliknięcia....)  całej listy spawanych obiektów.

Czy ktoś jest w stanie mi pomóc z tym problemem?

Ciekawi mnie oczywiście, czy ktoś ma inny pomysł.

 

Witam

Przykład można zobaczyć w Pomocy SolidWorks:

http://help.solidworks.com/2012/English/api/sldworksapi/Get_Solid_Bodies_from_Cut-list_Folders_and_Get_Custom_Properties_Example_VB.htm

Ciekawa część:

   Jeśli nie IsEmpty(vCustomPropNames) to

        Dim NameFmt As Ciąg

        NazwaFmt = "!" & Ciąg(30, "@")

 

Makro w tym samym stylu jest dostępne tutaj:

https://forum.solidworks.com/thread/55341

 

Lub w pomocy, ale bardziej syntetycznej:

http://help.solidworks.com/2014/English/api/sldworksapi/Get_Custom_Properties_for_Cut-list_Item_Example_VB.htm

 

names = swCustPropMgr. GetNames (DostaćNazwy)

Dla każdej nazwy W nazwach

    swCustPropMgr. Get2 nazwa, textexp, evalval

    Nazwa Debug.Print, textexp, evalval, swCustPropMgr. GetType(nazwa)

Następne imię

 

Do dostosowania...

I kolejne makro (a priori, które zmienia nazwę tego):

https://forum.solidworks.com/thread/47038

 

Dziękujemy you@lucas

ale to wszystko jest dla mnie "chińskie"!!!

Nigdy nie robiłeś makra w VBA?

Niestety nie,

Powtarzam sobie, że muszę się tym zainteresować!!

ale nie znalazłem czasu.

Aby wypróbować 1. link, daje makro, które powinno być funkcjonalne, aby uzyskać nazwy.

Ale musimy nad tym popracować, aby móc zmienić nazwy.

Jeśli chcesz nauczyć się VBA, sprawdź moje samouczki, są one komentowane w każdej linii:

http://www.lynkoa.com/tutos/3d/macro-enregistrer-sous-avec-solidworks

http://www.lynkoa.com/tutos/3d/macro-solidworks-retirer-lecture-seule-pour-fichiers-de-bibliotheque

 

A w tym makrze może być kilka ciekawych informacji:

http://www.leguide3d.com/profiles/blogs/api-solidworks-traversal-liste-des-pi-ces-soud-es

 

2 polubienia

Na razie odłożyłem ten "problem" na później.

Liczę na dobrą wolę rysowników, aby nie zapomnieli o manipulacji, która jako Smarproperties jest bardzo prosta (trzeba tylko pamiętać, aby zrobić to !!) ......