| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| 3DEXPERIENCE Conference 2024 | München |
Autor
|
Thema: Vorlage verschieben und Layer aus-/einblenden per Makro ! (599 mal gelesen)
|
Christian Sei Mitglied
Beiträge: 3 Registriert: 01.08.2001
|
erstellt am: 01. Aug. 2001 08:28 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe Vorlagen so parametrisiert, daß alle Vorlagen aus einer Datei generiert werden können. Damit möchte ich Änderungen in den Griff bekommen. Jetzt meine Probleme: Ich muß momentan - Maße von Hand Ändern - Layer ausblenden/einblenden/löschen von Hand - Die Zeichnung verschieben von Hand - Die Blattgröße ebenso von Hand ändern. Die Maße habe ich bisher in einfachen Klick-MAkros ändern lassen, die man mit der Makroaufzeichnung erstellen kann. In der Makroprogrammierung bin ich blutiger Anfänger. Wichtig ist die Möglichkeit der Einblendung eines bestimmten Layers (A0,A1,A2,A3,A4), sowie das Verschieben meiner Vorlage in horizontaler Richtung um bestimmte Koordinaten. Wie kann ich das in ein Makro packen. Danke für die Bemühungen! Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Baltenweck Mitglied Konstrukteur
Beiträge: 170 Registriert: 13.03.2001 Früher brauche man 3 Comodore, um zum Mond zu fliegen - heute braucht man 1 Ghz um Windows zu starten...
|
erstellt am: 01. Aug. 2001 16:50 <-- editieren / zitieren --> Unities abgeben: Nur für Christian Sei
Hallo Christian, so was hätte ich auch gerne. Wenn Du eine Lösung hast gib mir bitte Bescheid . Ich kann Dir nicht weiterhelfen weil ich 0,001 Ahnung von Makroprogrammierung habe. Gruß Patrick 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: 02. Aug. 2001 07:49 <-- editieren / zitieren --> Unities abgeben: Nur für Christian Sei
Hallo Christian, hab mal eben was gestrickt, was dir vielleicht einen Ansatz gibt, wie man per Makro Layer ein und ausblenden kann: Code:
Dim swApp As Object Dim ModelDoc As Object Dim LayerMgr As Object Dim Layer As Object Dim LayerNames As Variant Dim i As Long Dim msg As String ' an SolidWorks anhängen Set swApp = CreateObject("SldWorks.Application") Set ModelDoc = swApp.ActiveDoc ' der LayerManager ist der zentrale Knoten für alles ' was mit Layern zu tun hat Set LayerMgr = ModelDoc.GetLayerManager ' gezielt den Layer "Blau" einblenden Set Layer = LayerMgr.GetLayer("Blau") Layer.Visible = False ' nur zum spielen: alle Layer raussuchen LayerNames = LayerMgr.GetLayerList msg = "Folgende Layer gibts im aktiven Dokument" & vbCrLf For i = 0 To UBound(LayerNames) msg = msg & LayerNames(i) & vbCrLf Next i MsgBox msg ' jeden zweiten Layer ausblenden For i = 0 To UBound(LayerNames) Step 2 Set Layer = LayerMgr.GetLayer(LayerNames(i)) Layer.Visible = False Next i
(Es war (ist) wirklich blöde, dass die Einrückungen nicht beibehalten werden, ist immer so schwer zu lesen. Update Andreas (Admin-CAD.DE) war wieder megaschnell und hat das sofort gelöst, also jetzt doch richtige Einrückungen) Damit als Basis kommst du hoffentlich etwas weiter. Wegen dem Veschieben schau dir mal den Beitrag Blattvorlagen ( http://www.cad.de/foren/ubb/Forum2/HTML/000550.shtml ) an, da steht der händische Weg, hab's nicht probiert, was passiert, wenn man das als Makro aufzeichent. Mich würde noch eins wirklich interessieren: wofür machst du das? Vielleicht arbeiten wir hier total anders, aber wird ändern die Vorlagen verhältnismäßig selten, da würde sich solch ein Aufwand nie lohnen ... Ciao, Stefan ------------------ -- Inoffizielle Solidworks Hilfeseite http://solidworks.cad.de EMail: Stefan.Berlitz@solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Baltenweck Mitglied Konstrukteur
Beiträge: 170 Registriert: 13.03.2001 Früher brauche man 3 Comodore, um zum Mond zu fliegen - heute braucht man 1 Ghz um Windows zu starten...
|
erstellt am: 02. Aug. 2001 08:13 <-- editieren / zitieren --> Unities abgeben: Nur für Christian Sei
Hallo Stefan, zu dem Thema: "Mich würde noch eins wirklich interessieren: wofür machst du das? Vielleicht arbeiten wir hier total anders, aber wird ändern die Vorlagen verhältnismäßig selten, da würde sich solch ein Aufwand nie lohnen ..." ... da verstehe ich den Christian schon. Heutzutage wird mehr und mehr vom Kunden verlangt eine Konstruktion abzugeben mit einem kundenspezifischen Zeichnungskopf (mit Firmenlogos und und und). Wenn man viele Kunden hat kann das schon mal ausarten. Diese Fälle kann man natürlich mit der Lupe suchen, wird aber denke ich immer mehr kommen. Schönen Tag noch Gruß Patrick Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ralf Blokscha Mitglied Konstrukteur
Beiträge: 175 Registriert: 10.07.2000
|
erstellt am: 02. Aug. 2001 09:24 <-- editieren / zitieren --> Unities abgeben: Nur für Christian Sei
Hallo, habt ihr von der Möglichkeit nichts gelesen das man z.B. für jeden Kunden ein extra Ordner für Vorlagen(*.drwdot) anlegen kann ? Und wenn man die Original Blattvorlagen benötigt diese über eine einfache Batchdatei vom Speicher-Ordner in den SWX-DATA Ordner kopieren lässt. Gruß Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Christian Sei Mitglied
Beiträge: 3 Registriert: 01.08.2001
|
erstellt am: 03. Aug. 2001 08:33 <-- editieren / zitieren --> Unities abgeben:
Danke für Eure Hilfe! Leider springt mir das Makro immer ab, zumindest beim ansteuern des Verschiebens. Weswegen mache ich die Vorlage so?! Wir führen ein PDB-System ein und da sich bis zur Einführung noch einige Änderungen im Zeichnungskopf ergeben (und um "uptodate" zu sein) gehen wir diesen Weg. Ciao, Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |