Makro-Bauteilfamilie für einen Ordner

Hallo

Ich bin auf der Suche nach einem Makro, mit dem ich die Bauteilfamilie aus einer Bauteildatei extrahieren kann.

Und dass dieses Makro für einen ganzen Ordner (mit der Datei X-Teil) ausgeführt wird

Ich gebe an, dass die Teile nicht über das zu erstellende Familienbauteil verfügen.

Was mich interessiert, ist, EINE Eigenschaft abzurufen, die allen meinen Teilen in einer Excel-Datei gemeinsam ist.

Ideen sind willkommen.

Vielen Dank

1 „Gefällt mir“

Hallo

Ich teile ein Makro, das ich erstellt habe und das die meisten Funktionen enthält, die Sie benötigen (Suche in einem Ordner und Unterordner von SW-Teilen ; Lesen und Ändern von benutzerdefinierten Eigenschaften; Ausfüllen einer Textdatei)

Seien Sie vorsichtig, es ist ein bisschen chaotisch, weil es nicht abgeschlossen wird


macrorecusive.txt

Hallo slauzeral,

Aber Ihr Makro hilft mir nicht viel.

Danke für Ihre Hilfe!

1 „Gefällt mir“

Hallo

Um sicher zu verstehen. Sie möchten ein Makro, das:

  1. Schleifen von .sldprt- und .sldasm-Dateien aus einem Ordner
  2. Stellt eine Eigenschaft jeder der Dateien wieder her
  3. Fügt den Wert der Eigenschaft einer Excel-Tabelle hinzu.

 

2 „Gefällt mir“

Hallo remrem,

Wenn Sie "Loop-Dateien" sagen, was meinen Sie damit?

Andernfalls ja, ich gebe an, dass es nur .sldprt-Dateien gibt

Für den Rest war's,

  1. Stellt eine Eigenschaft jeder der Dateien wieder her
  2. Fügt den Wert der Eigenschaft zu einer Excel-Tabelle hinzu
1 „Gefällt mir“

 Deshalb

  1. Sucht nach .sldprt-Dateien in einem Ordner
  2. Stellt eine Eigenschaft jeder der Dateien wieder her
  3. Fügt den Wert der Eigenschaft einer Excel-Tabelle hinzu.

Wie lautet der Name der Immobilie?

Muss ich zu den Arbeitsmappeninformationen zu jeder der Dateien zurückkehren: Name, Pfad usw.?

Sollten wir auch in den Unterordnern suchen?

Haben Sie jemals andere Makros erstellt?

Ist es möglich, einen Ordner mit konsistenten Dateien zum Testen zu haben?

Ich weiß, das sind viele Fragen, aber es ist wichtig, bevor man etwas programmiert. ;-)

 

2 „Gefällt mir“

Ja, genau das ist es:

"Sucht nach .sldprt-Dateien in einem Ordner

Stellt eine Eigenschaft jeder der Dateien wieder her

Fügt den Wert der Immobilie zu einer Excel-Tabelle hinzu."

Für Ihre Fragen:

Wie lautet der Name der Immobilie? $PROPRIETE@Anzahl der Löcher.

Muss ich zu den Arbeitsmappeninformationen zu jeder der Dateien zurückkehren: Name, Pfad usw.? Nein, nur im Bereich der Immobilie.

Sollten wir auch in den Unterordnern suchen? Nein, die Dokumente befinden sich direkt in einer Akte.

Haben Sie jemals andere Makros erstellt? Bei den Makros kam ich "durch Tasten" an, indem ich rechts und links Stücke aufhob...

Ich hänge eine Datei mit 5 Teilen zum Testen an.


lynkoa.zip

Hallo

 

Sie sollten mit dieser Formel suchen:

Sub parametre()

Dim retVal als boolescher Wert
Dim-Eigenschaft als Zeichenfolge
Stück = Blätter("Chemin_pièce"). Bereich("A1") Öffnet Dateiverknüpfungen

Set swApp = CreateObject("SldWorks.Application")

       
        Set Part = swApp.OpenDoc6(piece, 1, 0, "", longstatus, longwarnings)

    Festlegen von swModel = swApp.ActiveDoc
    Festlegen von swConfigMgr = swModel.ConfigurationManager
    Legen Sie swConfig = swConfigMgr.ActiveConfiguration fest
    Z=swConfig.Name                                                 'Ruft den Namen der Konfiguration ab
               
        Eigenschaft = swModel.GetCustomInfoValue(Z, "Gewicht")
        Blätter("Sheet1"). Bereich ("A1"). Value = ' Eigenschaft            'kopiert' den Wert der 'weight'-Eigenschaft in die Excel-Tabelle

Ende Sub

 

Du solltest es damit versuchen, dann musst du die Schleife erstellen, die es dir ermöglicht, es zu umgehen.

 

Viel Glück

1 „Gefällt mir“

Hallo PierrotDls,

Danke für das Makro, 

Es ist ein sehr guter Start !!

Es ermöglicht mir, die Eigenschaft für das definierte Teil abzurufen.

Jetzt muss ich finden:

- Wie man die ".sldprt"-Dateien eines Ordners und nicht einer bestimmten Datei öffnet.

- Erhöhen Sie die Zelle "A1" so, dass die Eigenschaften untereinander ausgefüllt werden.

Vielen Dank!

Guten Abend

Im Anhang befindet sich ein Codeausschnitt zum Scannen der Datei.

Fügen Sie einfach die Funktionen hinzu, um die gesuchte Eigenschaft abzurufen, und es sollte funktionieren.


scan_dossier.txt
1 „Gefällt mir“

 Hallo Cyril.f

Danke für das Makro,

Aber wenn ich die Wiederherstellungszeilen meiner Eigenschaft hinzufüge, habe ich einen direkten Kompilierungsfehler.

Dim fso As FileSystemObject 

Ein benutzerdefinierter Typ, der nicht definiert ist.

Wenn du mir helfen kannst... Vielen Dank

Hallo

Folgende Referenzen müssen Sie im VBA-Editor aktivieren (Tools> Referenzen):

Microsoft Scripting Runtime

Solidworks 20xx Typenbibliothek

1 „Gefällt mir“

Ja, das ist es, was ich gerade gesehen habe.

Also perfekt (naja, das Makro ist wahrscheinlich nicht das sauberste und einfachste, aber es funktioniert)

Vielen Dank!