| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Platzhalter zum suchen und aufmachen einer Datei mit bekanntem Anfang (2220 mal gelesen)
|
Enduro Mitglied Wirtschaftsinformatik Studentin
Beiträge: 53 Registriert: 27.07.2012 Hallo Forum :-) Win 7 Office 2007 Autodesk® Inventor® 2012
|
erstellt am: 23. Okt. 2012 08:59 <-- editieren / zitieren --> Unities abgeben:
Hallo, leider finde ich im Internet außer Basics selten etwas brauchbares. Mein Problem: ich möchte eine Baugruppe öffnen. Name dieser Baugruppe besteht aus Bauteilnummer und einem String, der immer anders ist. z. B. <Nummer_BG.iam> oder <Nummer_neu.iam> usw. Ich brauche eine Variable Platzhalter um diesen Datei zu öffnen. So öffne ich eine iam, wenn der Name bekannt ist: (die IDW-Datei dazu ist aktiv) Code: Set oDoc = ThisApplication.ActiveDocument odocname = oDoc.FullFileName Pfad = Left(oDoc.FullFileName, InStrRev(odocname, "\")) DateiName = Mid(odocname, InStrRev(odocname, "\") + 1) DateiName = Left(DateiName, Len(DateiName) - 4) DateiName = Pfad & DateiName & ".iam" Set fs = CreateObject("Scripting.FileSystemObject") If fs.fileexists(DateiName) = True Then ThisApplication.Documents.Open (DateiName)
Hilfe! ------------------ ---------------- Viele Grüße Endu Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 23. Okt. 2012 09:46 <-- editieren / zitieren --> Unities abgeben: Nur für Enduro
Moin Wie soll das mit einem Platzhalter funktionieren? Dein Rechner will explizit den vollständigen und korrekten Namen, sonst passiert da nix. Du kannst nur den Dateinamen inkl. Endung in zwei Strings zerlegen, deinen Suffix bei Bedarf vor jedem Öfnnen-Befehl dazwischen setzen und den String wieder zusammenfügen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Enduro Mitglied Wirtschaftsinformatik Studentin
Beiträge: 53 Registriert: 27.07.2012 Hallo Forum :-) Win 7 Office 2007 Autodesk® Inventor® 2012
|
erstellt am: 23. Okt. 2012 10:04 <-- editieren / zitieren --> Unities abgeben:
Wie meinst du dazwischen setzen? Wie soll ich _BG dazwischensetzen? kann ich nicht nach dem Präfix suchen? Wenn Suffix variabel ist? ------------------ ---------------- Viele Grüße Endu
[Diese Nachricht wurde von Enduro am 23. Okt. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 23. Okt. 2012 10:34 <-- editieren / zitieren --> Unities abgeben: Nur für Enduro
Hi Was genau hast du vor? Willst du in einem vorgegebenen Verzeichnis alle Dateien öffnen, die eine IAM sind und mit "Präfix" beginnen. Welcher "Suffix" enthalten ist spielt dabei keine Rolle. Dann könntest du z.B. mit System.IO.DirectoryInfo.GetFiles eine Liste aller Dateien (hier können Filterkriterien angegeben werden) holen und in einer For Each File in GetFiles Schleife öffnen. GetFiles kann glaub ich sogar rekursiv suchen, wenn es gewünscht ist. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Enduro Mitglied Wirtschaftsinformatik Studentin
Beiträge: 53 Registriert: 27.07.2012 Hallo Forum :-) Win 7 Office 2007 Autodesk® Inventor® 2012
|
erstellt am: 23. Okt. 2012 11:22 <-- editieren / zitieren --> Unities abgeben:
Hi, ich bin immer noch am idw, ipt kopieren Makro schreiben. Hinzu kommt jetzt auch die iam-Datei. Dabei will ich jetzt im vorgegebenen Verzeichnis schauen, ob die Zeichnung auch eine BG referenziert und die auch mitkopieren und Referenz dementsprechend aktualisieren. Es sind aber nicht mehrere Baugruppen sondern in der Regel nur eine Baugruppe die mitkopiert werden muss, weil sie nur noch ein Paar Schrauben enthält. ------------------ ---------------- Viele Grüße Endu [Diese Nachricht wurde von Enduro am 23. Okt. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 23. Okt. 2012 12:22 <-- editieren / zitieren --> Unities abgeben: Nur für Enduro
Hi Dann nimm doch die ReferencedDocuments der Zeichnung. Da steht auch die BG drin (samt Pfad). In den AllReferencedDocuments der BG müßte eine komplette Liste (bin mir mit abgeleiteten Komponenten nicht sicher) der verbauten Bauteile und Unterbaugruppen stehen, die allesamt mitkopiert werden müßten. Bedenke aber, das du dann Duplikate deiner Bauteile erzeugst. Ob das gewollt ist, mußt du entscheiden. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Enduro Mitglied Wirtschaftsinformatik Studentin
Beiträge: 53 Registriert: 27.07.2012 Hallo Forum :-) Win 7 Office 2007 Autodesk® Inventor® 2012
|
erstellt am: 23. Okt. 2012 12:30 <-- editieren / zitieren --> Unities abgeben:
in diese Richtung habe ich grad auch gedacht.. aber wie soll ich in der Zeichnung suchen, welcher Ansicht mit ner BG verknüpft ist? Gibt es da was bestimmtes , das ich bei AllReferencedDocuments angeben muss? ------------------ ---------------- Viele Grüße Endu Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 23. Okt. 2012 13:13 <-- editieren / zitieren --> Unities abgeben: Nur für Enduro
Hi Kleiner Irrtum von mir, AllReferencedDocuments in der IDW liefert schon eine Liste aller Dateien. Das was du vermutlich suchst, findest du unter ReferencedFiles. Dort dürfte, wenn außer der Erstansicht der BG keine weiteren Erstansichten von anderen BG's oder Bauteilen vorhanden sind, nur deine Baugruppe drin stehen. Sollte die Zeichnung z.B. eine Erstansicht einer BG und eine Erstansicht eines Bauteiles enthalten und beide Komponenten sollen kopiert und umreferenziert werden, kannst du nur durch alle Zeichnungsblätter laufen, alle DrawingViews nach Erstansichten absuchen und aus dem ReferencedFile der Ansicht die zu kopierende Komponente (Bauteil / Baugruppe) ermitteln. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |