| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| PLM TechnologieForum Bamberg |
Autor
|
Thema: im Makro Dateipfad des Templates Teil einlesen (1456 mal gelesen)
|
HiwiMichi Mitglied Hiwi
Beiträge: 18 Registriert: 24.04.2014
|
erstellt am: 01. Aug. 2014 10:13 <-- editieren / zitieren --> Unities abgeben:
Hallo Leute, ich schreibe gerade ein Makro, unter anderem soll es ein neues Teil erstellen. Dafür wird der Pfad zu dem Template "Teil" gebraucht. Wie er an meinem PC lautet, weiß ich schon.Da ich aber das Programm für andere User schreibe, möchte ich wissen, mit welchem Befehl man den Pfad des Templates einlesen kann? Im Internet konnte ich leider nichts dazu finden Ich bitte um Hilfe.. Nachtrag: manuell kann man bei Optionen->Systemoptionen->Standardvorlagen oder im Feld darunten bei Dateiposition die Pfade ablesen. Durch ein aufgezeichnetes Makro weiß ich jetzt wie man den Ordner der Dateiposition ändern kann, nämlich mit: Set Part = swApp.ActiveDoc boolstatus = swApp.SetUserPreferenceStringValue(swUserPreferenceStringValue_e.swFileLocationsDocumentTemplates, "C:\...") 'bei C:\... kompletten Pfad angeben jedoch weiß ich nicht wie ich den voreingestellten Ordner lesen kann?? [Diese Nachricht wurde von HiwiMichi am 01. Aug. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bk.sc Ehrenmitglied V.I.P. h.c. Konstrukteur Sondermaschinenbau
Beiträge: 2776 Registriert: 18.07.2012 -Solid Works 2019 SP5 -Pro Engineer WF 3
|
erstellt am: 01. Aug. 2014 12:23 <-- editieren / zitieren --> Unities abgeben: Nur für HiwiMichi
Hallo HiwiMichi, einfach mal Get statt Set versuchen Code: templatepfad = swApp.GetUserPreferenceStringValue(swUserPreferenceStringValue_e.swFileLocationsDocumentTemplates)
Gruß Bernd ------------------ --- Man muß nicht alles wissen, man muß nur wissen wo es steht --- Staatlich anerkannte Deutschniete Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HiwiMichi Mitglied Hiwi
Beiträge: 18 Registriert: 24.04.2014
|
erstellt am: 01. Aug. 2014 12:32 <-- editieren / zitieren --> Unities abgeben:
|
Christian_W Ehrenmitglied V.I.P. h.c. Konstrukteur (Dipl-Ing)
Beiträge: 3189 Registriert: 04.04.2001 CSWP 12/2015<P>SWX2021sp5 Win10/11 (SWX2016, SWX2012) proAlpha6.2e00/calinkV9 (Tactonworks) (Medusa7, NesCAD2010, solidEdge19)
|
erstellt am: 01. Aug. 2014 13:22 <-- editieren / zitieren --> Unities abgeben: Nur für HiwiMichi
|
HiwiMichi Mitglied Hiwi
Beiträge: 18 Registriert: 24.04.2014
|
erstellt am: 01. Aug. 2014 14:44 <-- editieren / zitieren --> Unities abgeben:
Hallo Chrisitian, ich verstehe deine Frage nicht ganz, aber ich geb dir einfach mal die Programmcodes die ich habe: Ursprungsmakro zum ändern der Dateiposition: Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Sub main() Set swApp = _ Application.SldWorks Set Part = swApp.ActiveDoc boolstatus = swApp.SetUserPreferenceStringValue(swUserPreferenceStringValue_e.swFileLocationsDocumentTemplates, "C:\Users\Internet\Documents\Arbeit\Hiwi\ohne Events") End Sub Und hier das Makro, wo ich versuch habe einfach das Set.. durch Get.. zu ersetzen, wobei lblpfad ein Label in der Userform ist: Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long Sub main() Set swApp = _ Application.SldWorks Set Part = swApp.ActiveDoc lblpfad.Caption = swApp.GetUserPreferenceStringValue(swUserPreferenceStringValue_e.swFileLocationsDocumentTemplates) End Sub [Diese Nachricht wurde von HiwiMichi am 01. Aug. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bk.sc Ehrenmitglied V.I.P. h.c. Konstrukteur Sondermaschinenbau
Beiträge: 2776 Registriert: 18.07.2012 -Solid Works 2019 SP5 -Pro Engineer WF 3
|
erstellt am: 04. Aug. 2014 07:51 <-- editieren / zitieren --> Unities abgeben: Nur für HiwiMichi
Hallo Michi Code:
Dim swApp As ObjectDim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long
Sub main() Set swApp = Application.SldWorks Set Part = swApp.ActiveDoc lblpfad.Caption = swApp.GetUserPreferenceStringValue(swUserPreferenceStringValue_e.swFileLocationsDocumentTemplates) End Sub
Die Durchgestrichenen Codezeilen brauchst du hier nicht. Bei mir funktioniert es lblpfad.Caption zu setzen wenn ich es z.B. über ein Button_Click Event oder UserForm_Initialize Event dazu auffordere. Wie bzw. durch was soll den lblpfad.Caption bei dir gesetzt werden? Gruß Bernd ------------------ --- Man muß nicht alles wissen, man muß nur wissen wo es steht --- Staatlich anerkannte Deutschniete Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Entwicklungsingenieur (m/w/d) Vorentwicklung | Wir sind ein innovatives, weltweit agierendes Medizintechnik-Unternehmen mit mehr als 100 Jahren Tradition und außergewöhnlichem Know-how in der medizinischen und technischen Endoskopie. In enger Zusammenarbeit mit der medizinischen Wissenschaft entstehen immer neue Produktideen für neue Applikationen. Moderne Fertigungstechnologien und weltweit über 1700 ... | Anzeige ansehen | Entwicklung |
|
HiwiMichi Mitglied Hiwi
Beiträge: 18 Registriert: 24.04.2014
|
erstellt am: 04. Aug. 2014 08:53 <-- editieren / zitieren --> Unities abgeben:
|