Macro solidworks moje pierwsze początki

Witaj społeczność.

 

Jestem na wczesnym etapie pracy z makrami SW.

 

Chcę utworzyć makro, które pobiera nazwę pliku (bez rozszerzenia) i rejestruje ten ciąg we właściwości osobistej.

Spotykam się z pbs na temat podziału rozszerzenia nazwy pliku, który udało mi się odzyskać.

Poniżej znajduje się kod, który napisałem. Co robię źle, bo naprawdę nie rozumiem...

Dim swApp As Object
Sub main()

Ustaw swApp = Application.SldWorks
    
Ustaw swModel = swApp.ActiveDoc

Dim swBodies jako wariant
Dim swBody jako SldWorks.Body2
Ustaw część = swModel
            
Dim b As Ciąg
Przyciemniona nazwa

b = swModel.GetTitle
Debug.Print b

nazwa = Split(b, ".", -1)

Nazwa Debug.Print

Koniec subwoofera

 

 

Z góry dziękuję

Witam

Na czym polega błąd?

Linia musi zostać wymieniona:

nazwa = Split(b, ".", -1)

Przez:

Nazwa = Lewo(b, (InStrRev(b, ".", -1, vbTextCompare) - 1))

 

Ponieważ Split nie może być używany w ten sposób.

 

Ups, odebrana wiadomość to: 

Błąd wykonania 13

Niezgodność typów

1 polubienie

Tak, testowałem i widziałem.

Dla Twojej informacji konieczne jest wskazanie, która linia jest również błędna :)

Z moją poprzednią wiadomością teraz to działa.

Dziękuję bardzo, ale co oznacza ta linijka kodu???

1 polubienie

Aby uzyskać informacje na temat podziału, zobacz tutaj:

http://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-I

Po lewej stronie zobacz tutaj:

http://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-B

W przypadku instrrev zobacz tutaj (różnica w stosunku do instr polega na tym, że zaczyna się na końcu ciągu):

http://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-E

 

W przeciwnym razie, aby uzyskać informacje o funkcjach na ciągach, zobacz również:

http://boisgontierjacques.free.fr/pages_site/chainesvba.htm