| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS | | | | Innovationstag mit SolidCAM und Plogmann bei HEDELIUS in Meppen |
Autor
|
Thema: Benutzerdefinierte Eigenschaft Number mit Macro bearbeiten (801 mal gelesen)
|
Andi Beck Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2572 Registriert: 02.10.2006 Firma: SW 2023-4.0 + PDM Prof. Windows 10 Pro 64bit, i9-11900 32 GbRAM, Quadro P2200 Home: SW 2022-5.0 Passungstabelle von Heinz Windows 11 Pro 64bit, i7-12700K, 32 GbRAM, GeForce GTX 1050Ti Samsung C34H892, 3440x1440 Pixel
|
erstellt am: 01. Mai. 2009 07:19 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe ein bestehendes Macro dass mir bei Zeichnungen sowohl die Zeichnungsvorlage als auch die Revisionstabelle tauscht. Dieses Macro möchte ich über meine tausenden Zeichnungen laufen lassen. Bei dieser Gelegenheit möchte ich gerne eine zusätzliche Aufgabe einbauen. Und zwar soll gezielt in den Benutzerdefinierten Eigenschaften die Zeile mit "Number" editiert werden. Der Eintrag sollte wie folgt aussehen: Number Text $PRP:"SW-File Name"
Momentan ist dort ein Schreibfehler enthalten (ein Apostroph fehlt) und deshalb die Auswertung falsch. Wie muß nun in dem Macro genau die Programmzeile(n) geschrieben sein, dass diese Aufgabe erfüllt? Bitte genau beschreiben, da ich nur geringe Macroerfahrung habe. Besten Dank schon mal im Vorraus, Grüße, Andi ------------------ Hast du kein Problem? Such dir eins. ( Und löse es ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 04. Mai. 2009 08:14 <-- editieren / zitieren --> Unities abgeben: Nur für Andi Beck
Hallo Andi, wenn du das ModelDoc schon hast und die (globale) Dateieigenschaft Number sicher existiert sollte es mit dieser Zeile gehen:
Code: ModelDoc.CustomInfo2("", "Number") = "$PRP:" & Chr$(34) & "SW-File Name" & Chr$(34)
Das Zusammensetzen des Strings mit den Gänsefüßchen geht am einfachsten über diese Chr$(34) Funktion, die nichts anders ist als eben ein Gänsefüßchen.Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Stefans SolidWorks Blog Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andi Beck Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2572 Registriert: 02.10.2006 Firma: SW 2023-4.0 + PDM Prof. Windows 10 Pro 64bit, i9-11900 32 GbRAM, Quadro P2200 Home: SW 2022-5.0 Passungstabelle von Heinz Windows 11 Pro 64bit, i7-12700K, 32 GbRAM, GeForce GTX 1050Ti Samsung C34H892, 3440x1440 Pixel
|
erstellt am: 04. Mai. 2009 11:37 <-- editieren / zitieren --> Unities abgeben:
Hallo Stefan, mal wieder du und wie es der Zufall will, soll diese Ergänzung in dein von mir modifiziertes Macro reload_sheetformat.swp eingefügt werden. Das ModelDoc existiert in diesem Macro noch nicht, habe es aber eingefügt. Wie es geht, habe ich aus deinem schriftfeld-konf.swp entnommen. (Wieder von dir) Deine Zeile musste ich nur noch kopieren und einfügen und siehe da, es funktioniert, Klasse. Es gibt zwar Zeichnungen in denen Number noch nicht existiert, die werden dann aber korrekt durch das eigentliche reload_sheetformat.swp eingefügt. Nur wurde leider hierüber eine bestehende falschgeschriebene Dateieigenschaft nicht überschrieben, der Fehler blieb bestehen. Also besten Dank Stefan, 100 U´s für dich Grüße, Andi ------------------ Hast du kein Problem? Such dir eins. ( Und löse es ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andi Beck Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2572 Registriert: 02.10.2006 Firma: SW 2023-4.0 + PDM Prof. Windows 10 Pro 64bit, i9-11900 32 GbRAM, Quadro P2200 Home: SW 2022-5.0 Passungstabelle von Heinz Windows 11 Pro 64bit, i7-12700K, 32 GbRAM, GeForce GTX 1050Ti Samsung C34H892, 3440x1440 Pixel
|
erstellt am: 04. Mai. 2009 12:40 <-- editieren / zitieren --> Unities abgeben:
Hallo, jetzt habe ich doch noch ein Problem. In diesem Macro habe ich den Austausch der Revisionstabelle eingefügt. Es funktioniert auch ohne Probleme, es sei denn, in der Zeichnung existiert auch eine Stückliste. In diesem Fall wird komischerweise die Stückliste gelöscht und nicht die Revisionstabelle. Folglich auch nicht die neue Revisiontabelle eingesetzt. Die betreffenden Programmzeilen wurden per Macrorecorder aufgenommen. Set swApp2 = Application.SldWorks Set Part2 = swApp2.ActiveDoc Set SelMgr2 = Part2.SelectionManager swApp2.ActiveDoc.ActiveView.FrameState = 1 boolstatus2 = Part2.Extension.SelectByID2("Detailelement1@Blatt1", "REVISIONTABLE", 0.4562708412711, 0.06257698685168, 0, False, 0, Nothing, 0) boolstatus2 = Part2.Extension.SelectByID2("Detailelement1@Blatt1", "REVISIONTABLE", 0.4534007712047, 0.06524205191331, 0, False, 0, Nothing, 0) Part2.EditDelete Dim RevTable2 As Object Set RevTable2 = Part2.GetCurrentSheet.InsertRevisionTable(True, 0.5833077887431, 0.06061722475209, 4, "S:\Vorlagen\Tabellen\revisionstabelle-06.sldrevtbt") Was kann ich ändern, dass die Stückliste in Ruhe gelassen wird, und wirklich nur die Revisionstabelle gelöscht wird?
Grüße, Andi ------------------ Hast du kein Problem? Such dir eins. ( Und löse es ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
u.clemens Mitglied Konstrukteur
Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 04. Mai. 2009 16:51 <-- editieren / zitieren --> Unities abgeben: Nur für Andi Beck
Zitat: Original erstellt von Andi Beck: Was kann ich ändern, dass die Stückliste in Ruhe gelassen wird, und wirklich nur die Revisionstabelle gelöscht wird?
probier's hiermit:
Code:
Sub main() Dim swApp As SldWorks.SldWorks Dim swModel As SldWorks.ModelDoc2 Dim swDraw As SldWorks.DrawingDoc Dim swSheet As SldWorks.Sheet Dim swRevTable As SldWorks.RevisionTableAnnotation Dim bRet As Boolean Set swApp = Application.SldWorks Set swModel = swApp.ActiveDoc Set SelMgr2 = swModel.SelectionManager Set swDraw = swModel Set swSheet = swDraw.GetCurrentSheet Set swRevTable = swSheet.RevisionTable RevTableName = swRevTable.RevisionTableFeature.GetFeature.Name bRet = swModel.Extension.SelectByID2(RevTableName, "REVISIONTABLEFEAT", 0, 0, 0, False, 0, Nothing, 0) swModel.EditDelete End Sub
------------------ mfg uc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Andi Beck Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2572 Registriert: 02.10.2006 Firma: SW 2023-4.0 + PDM Prof. Windows 10 Pro 64bit, i9-11900 32 GbRAM, Quadro P2200 Home: SW 2022-5.0 Passungstabelle von Heinz Windows 11 Pro 64bit, i7-12700K, 32 GbRAM, GeForce GTX 1050Ti Samsung C34H892, 3440x1440 Pixel
|
erstellt am: 04. Mai. 2009 19:11 <-- editieren / zitieren --> Unities abgeben:
Hallo uc, juchhu, Besten Dank auch dir. Ich habe deine Zeilen in das Multi-Macro einfügen können, und nun lässt es die Stückliste in Ruhe. Für den Moment funktioniert alles wie gewünscht. Das Forum ist einfach Spitze. Auch dir 100 U´s von mir. Grüße, Andi ------------------ Hast du kein Problem? Such dir eins. ( Und löse es ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|