Utwórz makro, aby zmienić rozmiar obrazów szkicu

Nazywam się: KT211.bmp

Jeśli wezmę KT211(.bmp)

Mój Nom_EsquisseAP jest równy KT211 (por. MsgBox)

Ale w tym właśnie tkwi problem, nazwa szkicu się nie zmienia

boolstatus = Part.Extension.SelectByID2("Szkic1", "SZKIC", 0, 0, 0, Fałsz, 0, Nic, 0)
boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, Nom_EsquisseAP)

 

Z drugiej strony, jeśli zostawię punkt KT211, to działa, nazwa szkicu jest rzeczywiście zmodyfikowana.

 

Modyfikacje to tylko część podwójnego zestawu i "pliki", które zastępujesz bezpośrednio folder.files (zamiast folder.files?), aby uniknąć tworzenia zestawu plików, który jest używany tylko raz. Innego nie widziałem xD

Czy możesz przesłać mi plik części, a także folder zawierający kilka obrazów?

Żebym mógł przetestować

Więc to nie będzie możliwe xD. Jestem inżynierem jądrowym.

 

Dla Twojej informacji wszystko jest w stanie usuniętym w moim pokoju, więc jeśli nie ma żadnych pokoi, jest tak samo.

Szybko utwórz folder z 3 obrazami i będzie działać w ten sam sposób.

1 polubienie

Rzeczywiście, działa poprzez stworzenie planu.

U mnie działa idealnie. Nazwa szkicu jest konfiguracją nie ma sensu.

 

Kod:

Dim swApp As Object
Przyciemnij część jako obiekt
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim SkPicture As Obiekt
Dim System As Scripting.FileSystemObject       'System plików
Przyciemnij folder jako folder                           "Katalog"
Dim file As File                            ' file (część kolekcji plików)
dim Nom_Dossier As String                      ' Nazwa katalogu
dim Nom_Fichier As String                      ' Nazwa pliku
Dim Nom_EsquisseAV As String                   ' Nazwa szkicu frontowego
słońce Nom_EsquisseAP jako ciąg                   znaków ' nazwa szkicu po

Sub main()
    Ustaw swApp = Application.SldWorks
    Ustaw część = swApp.OpenDoc6("C:\Users\rmorel\Desktop\Part1.SLDPRT", 1, 0, "", longstatus, longwarnings)

    'Czytanie katalogu
    Nom_Dossier = "C:\Użytkownicy\rmorel\Pulpit\Test"
    Zestaw systemowy = CreateObject("Scripting.FileSystemObject")
    Ustaw folder = System.GetFolder(Nom_Dossier)

    'Kontroluj każdy plik w katalogu
    k = 2
    Dla każdego pliku w folderze Folder.Files
        Tworzenie obrazu szkicu i aktualizowanie wymiarów
        Nom_Fichier = Nom_Dossier & "\" & Fichier.Name
        Nom_EsquisseAP = Lewo(Fichier.Name, Len(Fichier.Name) - 4)
        
        boolstatus = Part.Extension.SelectByID2("Planuj do 4mm", "PŁASZCZYZNA", 0, 0, 0, Fałsz, 0, Nic, 0)
        
        Part.SketchManager.InsertSketch Prawda
        Set SkPicture = Part.SketchManager.InsertSketchPicture(Nom_Fichier)
        
        SkPicture.SetSize 50 / 1000, 60 / 1000, Fałsz
        SkPicture.SetOrigin -25/1000, -20/1000
        
        Part.ClearSelection2 Prawda
        
        boolstatus = Part.Extension.SelectByID2("Szkic1", "SZKIC", 0, 0, 0, Fałsz, 0, Nic, 0)
        boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, Nom_EsquisseAP)
        
        boolstatus = Part.Extension.SelectByID2(Nom_EsquisseAP, "SZKIC", 0, 0, 0, Fałsz, 0, Nic, 0)
        Part.EditSuppress2
        
        boolstatus = Part.Extension.SelectByID2("AM_P01_HO", "KONFIGURACJE", 0, 0, 0, Fałsz, 0, Nic, 0)
        boolstatus = Part.AddConfiguration2("AM_" & Nom_EsquisseAP, "", "", Fałsz, Fałsz, Fałsz, Prawda, 256)
        
        Part.ClearSelection2 Prawda
        
    Następny plik
Koniec subwoofera

 

Nawiasem mówiąc, tutaj znalazłem błąd.

Jest to powiązane z moją zmienną k, aby przejść do innego szkicu, który podniosłem, ponieważ nie był już przydatny.

BŁĄD

- Tworzy szkic

- Zmieniono nazwę na

- Utwórz nowy szkic => będzie się on nazywał sketch2

 

- Tworzy szkic

- Zmieniono nazwę na

- Tworzy konfigurację

- Utwórz nowy szkic => będzie się on nazywał sketch1

 

Mówiąc prościej, konfiguracja pozwala na aktualizację, więc w przypadku szkicowanego kodu będziesz musiał wziąć pod uwagę, czy tworzysz konfiguracje, czy nie.

Ze swojej strony, bez przyrostu k i do nazywania "szkiców" & k

Z konfiguracją muszę tylko wywołać "sketch1"

 

Xd

Azrod

Witam

To wielka rzecz. Powodzenia każdemu, kto to zrobi :)

Wyobrażam sobie, że nie wszystkie zdjęcia mają takie same wymiary?

 

\o/  \o/  \o/   \o/ \o/  \o/ \o/  \o/ \o/  \o/    \o/ \o/   \o/     \o/  

Zdecydowany

1 polubienie

W jaki sposób i w jaki sposób???

1 polubienie

Cały kod można znaleźć w dyskusjach...

Jeśli chodzi o omówienie jakiegoś szczegółu, nie wahaj się zadać pytania. Postaraj się być trochę bardziej precyzyjny niż to zrobiłeś xD.

 

Dla przypomnienia:

- Wstawianie obrazu szkicu

- Zmiana wymiaru obrazu szkicu po jego wstawieniu

- Wymiarowanie w zależności od rodzaju materiału

- Nazwa szkicu = Nazwa materiału

- Tworzenie konfiguracji

- Nazwa konfiguracji = nazwa sprzętu

- Pętla na wszystkich materiałach w pliku