Maak een macro om het formaat van schetsafbeeldingen te wijzigen

Mijn naam: KT211.bmp

Als ik KT211(.bmp) neem

Mijn Nom_EsquisseAP is gelijk aan KT211 (zie MsgBox)

Maar daar ligt het probleem, de naam van schets verandert niet

boolstatus = Part.Extension.SelectByID2("Sketch1", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, Nom_EsquisseAP)

 

Aan de andere kant, als ik het KT211-punt verlaat, dan werkt het, de schetsnaam is inderdaad gewijzigd.

 

De wijzigingen zijn slechts het dubbele setgedeelte en de "bestanden" die u direct vervangt door folder.files (in plaats van map.bestanden?) om te voorkomen dat u een set bestanden maakt die maar één keer wordt gebruikt. Ik heb geen andere gezien xD

Kunt u mij het onderdeelbestand en de map met enkele afbeeldingen sturen?

Zodat ik kan testen

Dat gaat dus niet lukken xD. Ik ben nucleair ingenieur.

 

Ter informatie: alles is in de staat verwijderd in mijn kamer, dus als er geen kamers zijn, is het hetzelfde.

Maak snel een map aan met 3 afbeeldingen erin en het zal op dezelfde manier werken.

1 like

Het werkt inderdaad door een plan te maken.

Het werkt perfect voor mij. De naam van de schets is van de configuratie hebben niet het punt.

 

De code:

Dim swApp als object
Deel dimmen als object
Dim boolstatus als Booleaanse
Dim longstatus As Long, longwarnings As Long
Dim SkPicture als object
Dim systeem als Scripting.FileSystemObject       'Bestandssysteem
Map dimmen als map                           'Directory'
Dim Bestand Als Bestand                            ' Bestand (Onderdeel van de Bestanden Verzameling)
Dim Nom_Dossier als tekenreeks                      ' Directorynaam
Dim Nom_Fichier als tekenreeks                      ' bestandsnaam
Dim Nom_EsquisseAV als snaar                   ' Voorschets Naam
Zon Nom_EsquisseAP Als String                   ' Schets Naam Na

Sub hoofd()
    Stel swApp = Toepassing.SldWorks in
    Set Part = swApp.OpenDoc6("C:\Users\rmorel\Desktop\Part1.SLDPRT", 1, 0, "", longstatus, longwarnings)

    'Het lezen van de directory
    Nom_Dossier = "C:\Gebruikers\rmorel\Desktop\Test"
    Systeemset = CreateObject("Scripting.FileSystemObject")
    Map instellen = System.GetFolder(Nom_Dossier)

    'Beheer elk bestand in de directory
    k = 2
    Voor elk bestand in map.Files
        Schetsafbeelding maken en afmetingen bijwerken
        Nom_Fichier = Nom_Dossier & "\" & Fichier.Name
        Nom_EsquisseAP = Links(Fichier.Name, Len(Fichier.Name) - 4)
        
        boolstatus = Part.Extension.SelectByID2("Plan tot 4mm", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
        
        Deel.SketchManager.InsertSketch Waar
        Stel SkPicture = Part.SketchManager.InsertSketchPicture(Nom_Fichier) in
        
        SkPicture.SetSize 50 / 1000, 60 / 1000, Onwaar
        SkPicture.SetOrigin -25/1000, -20/1000
        
        Deel.ClearSelection2 Waar
        
        boolstatus = Part.Extension.SelectByID2("Sketch1", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
        boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, Nom_EsquisseAP)
        
        boolstatus = Part.Extension.SelectByID2(Nom_EsquisseAP, "SCHETS", 0, 0, 0, Onwaar, 0, Niets, 0)
        Deel.EditSuppress2
        
        boolstatus = Part.Extension.SelectByID2("AM_P01_HO", "CONFIGURATIES", 0, 0, 0, False, 0, Niets, 0)
        boolstatus = Part.AddConfiguration2("AM_" & Nom_EsquisseAP, "", "", Onwaar, Onwaar, Onwaar, Waar, 256)
        
        Deel.ClearSelection2 Waar
        
    Volgend bestand
Einde Sub

 

Hier heb ik trouwens een bug gevonden.

Het heeft te maken met mijn variabele k om verder te gaan met de andere schets die ik heb opgeheven omdat deze niet langer bruikbaar was.

Het INSECT

- Maakt een schets

- Hernoemd naar de

- Maak een nieuwe schets => deze zal sketch2 heten

 

- Maakt een schets

- Hernoemd naar de

- Maakt een configuratie aan

- Maak een nieuwe schets => het zal schets1 heten

 

Simpel gezegd, de configuratie maakt een update mogelijk, dus voor een geschetste code moet u er rekening mee houden of u configuraties maakt of niet.

Van mijn kant, zonder dat ik een toename k nodig had en om de "schetsen" & k te noemen

Met configuratie hoef ik alleen maar de "sketch1" te bellen

 

Xd

Azrod

Hallo

Dat is een groot ding. Veel succes aan degene die het maakt:)

Ik kan me voorstellen dat niet alle foto's dezelfde afmetingen hebben?

 

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

Vastberaden

1 like

Hoe en met welke middelen???

1 like

Je kunt alle code vinden in de discussies...

Als het gaat om het bespreken van een detail, aarzel dan niet om uw vraag te stellen. Probeer iets preciezer te zijn dan hoe je het deed xD.

 

Ter herinnering:

- Een schetsafbeelding invoegen

- De afmeting van de schetsafbeelding wijzigen na het invoegen

- Dimensionering volgens het type materiaal

- Schetsnaam = Materiaalnaam

- Maak een configuratie aan

- Configuratienaam = Hardwarenaam

- Loop op alle materialen in een bestand