Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  VBA in Solidworks... Anfängerfrage

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
Wechsel von CATIA V5 auf 3DEXPERIENCE CATIA - Warum es sich lohnt, ein Fachartikel
Autor Thema:  VBA in Solidworks... Anfängerfrage (1136 mal gelesen)
Thorondor
Mitglied
Industriemechaniker


Sehen Sie sich das Profil von Thorondor an!   Senden Sie eine Private Message an Thorondor  Schreiben Sie einen Gästebucheintrag für Thorondor

Beiträge: 12
Registriert: 01.10.2009

Core i7 920
Quadro 1800
6 GB Ram
Windows Vista 64 Bit

erstellt am: 17. Dez. 2009 13:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Solidworksler,
möchte ein kleine Makro schreiben um mir etwas die Arbeit zu erleichtern.
Ich möchte ein Makro welches nacheinander bestimmte Behfehle ausführt, damit das später auch funktioniert wollte ich am Anfang, eine Ausgewählte Skizze in "Makrozeichnung" umbenennen... dann im Makro mit "Makrozeichnung" arbeiten... und am Ende die Datei wieder zurück umbenenen.
Bevor das Makro ausgeführt wird makiere ich die Zielzeichnung... jetzt läuft das Makro... es soll die Eigenschafften öffnen (ist ja kein problem) und dann den bereits makierten namen Kopieren, damit ich ihn am Ende wieder einfügen kann.
Allerdings habei ich keinen funktionierende Copy Anweisung gefunden. Habe schon SelectionCopy usw. probiert, ohne erfolg.
Also gebe ich das problem an Euch weiter 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

nahe
Ehrenmitglied



Sehen Sie sich das Profil von nahe an!   Senden Sie eine Private Message an nahe  Schreiben Sie einen Gästebucheintrag für nahe

Beiträge: 1764
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 17. Dez. 2009 14:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thorondor 10 Unities + Antwort hilfreich

Hallo Thorondor

ich würde Dir ja gern helfen, aber im Moment steh ich komplett daneben
und hab, nach Deiner Beschreibung, keine Ahnung was das Makro machen soll.

------------------
Grüße
Heinz

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thorondor
Mitglied
Industriemechaniker


Sehen Sie sich das Profil von Thorondor an!   Senden Sie eine Private Message an Thorondor  Schreiben Sie einen Gästebucheintrag für Thorondor

Beiträge: 12
Registriert: 01.10.2009

Core i7 920
Quadro 1800
6 GB Ram
Windows Vista 64 Bit

erstellt am: 17. Dez. 2009 14:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

also schritt für schritt...

Ausgangssituation : Skizze ist Makiert

1. Das Makro geht in die Eigenschaften der Skizze
2. Kopiert den ursprünglichen Namen
3. Bennent die Skize in "Makroskizze" um
.
. es folgen diverse Solidworksfunktionen die mit "Makroskizze" Arbeiten
.
X. Bennent die Skizze wieder in ihren alten Namen um

Ziel ist es das Makro auf jede Skizze anwenden zu können. Die diversen Arbeitsschritte beziehn sich von daher immer auf die "Makroskizze".
Ich habe sonst das Problem das im Makro ja die namen der Objekte stehen müssen mit der es Arbeite, deshalb benenne ich die Skizze bevor das Makro abläuft um.
Das Umbenennen soll aber auch automatisch Ablaufen.

grüße aus Hamburg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Baumjäger
Mitglied
CAD/PDM Administrator


Sehen Sie sich das Profil von Baumjäger an!   Senden Sie eine Private Message an Baumjäger  Schreiben Sie einen Gästebucheintrag für Baumjäger

Beiträge: 339
Registriert: 21.06.2006

SW2017 - S5.0
AutoCAD Mechanical 2018
Win10
Intel Xeon E3-1240 V2 3,4GHz
16GB RAM
NVIDIA Quadro 4000

erstellt am: 17. Dez. 2009 15:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thorondor 10 Unities + Antwort hilfreich

HI,
Du kannst dir das umbennenen der Skizze sparen.
Man kann das so machen: Skizze anwählen mit linksklick. Dann Makro starten.
Man kann ein Makro dazu bringne auzulesen was gerade markiert ist.
Schau dir mal in der Hilfe z.b. das an:

Get Selected Objects and Types Example (VB)

Es gibt einen Haufen Beispiele in der HIlfe die dir bei sowas sicherlich weiterhelfen!

viele Grüße
Andy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



Sehen Sie sich das Profil von StefanBerlitz an!   Senden Sie eine Private Message an StefanBerlitz  Schreiben Sie einen Gästebucheintrag für StefanBerlitz

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: 17. Dez. 2009 15:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thorondor 10 Unities + Antwort hilfreich

Hallo Thorondor,

ich bin mir auch noch nicht so sicher, was du eigentlich machst und wo das Problem nun ist. Aber das kann daran liegen, dass ich dirkt eine bestimmte Vorstellung davon habe, wie ich die Aufgabe angehen würde und mir nicht vorstellen kann, wie es anders gehen sollte 

Zitat:
Original erstellt von Thorondor:
Ich habe sonst das Problem das im Makro ja die namen der Objekte stehen müssen mit der es Arbeite, deshalb benenne ich die Skizze bevor das Makro abläuft um.


Das wäre aber übel, wenn ich für Makros immer die echten Namen der Objekte kennen müsste, dann könnte ich praktisch nie allgemein gültige Makros schreiben.

Vielleicht wäre es einfacher du lädst mal deinen Code hoch oder kopierst den gesamten Quelltext hier rein und schreibst dazu, was das Makro machen soll (also die Funktion als solches), vielleicht gibt es eine andere Herangehensweise für deine Aufgabe, die ohne hart verdrahtete Bezeichnungen auskommt.

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

Thorondor
Mitglied
Industriemechaniker


Sehen Sie sich das Profil von Thorondor an!   Senden Sie eine Private Message an Thorondor  Schreiben Sie einen Gästebucheintrag für Thorondor

Beiträge: 12
Registriert: 01.10.2009

Core i7 920
Quadro 1800
6 GB Ram
Windows Vista 64 Bit

erstellt am: 18. Dez. 2009 08:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

ich gebe euch mal die Liste die ich Ausführen wollte.
Hatte erst geplannt es mit Makro Aufzeichnen zu machen, und mir Klick für Klick aufgeschrieben.

Makro
1. Skizze ist ausgewählt !
2. "Planare Oberfläche" erstellen
3. die gerade erstellte "Oberfläche Ebene" anwählen
4. "Verbiegen"
-Triade Koordinatensystem 1
-keine harten Kanten
-Trimmebene 1 von Skizze Austragungsgrenzen
-Trimmebene 2 von Skizze Austragungsgrenzen
-Radius 100
-Maximale Genauigkeit
5. doppleklick des erstellten "Verbiegen"
6. Gleichung bei Winkelbemassung Hinzufügen
7. Verknüpfung zum Grundmaß (D4@Skizze1) herstellen
8. Alle gerade verbogenen Flächen anwählen
9. "Verbiegen"
-Triade Koordinatensystem 2
-keine harten Kanten
-Trimmebene 1 von Skizze Austragungsgrenzen
-Trimmebene 2 von Skizze Austragungsgrenzen
-Winkel 360
-Maximale Genauigkeit
11. Ordner Anlegen mit Namen "Fläche Umwickeln" mit steigender Nummer
    Also Fläche Umwickeln 1, Fläche Umwickeln 2 usw


ich hoffe Ihr könnt mir helfen. Werde mir wohl auch ein gutes Buch über VBA besorgen müssen. Meine Programmierzeit ist einige Jaher her. versteh nur die hälfte des VBA Codes.

grüße aus hamburg und ein schönes Wochenende !

[Diese Nachricht wurde von Thorondor am 18. Dez. 2009 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



Sehen Sie sich das Profil von StefanBerlitz an!   Senden Sie eine Private Message an StefanBerlitz  Schreiben Sie einen Gästebucheintrag für StefanBerlitz

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: 18. Dez. 2009 09:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thorondor 10 Unities + Antwort hilfreich

Hallo Thorondor,

Zitat:
Original erstellt von Thorondor:
[B]Hatte erst geplannt es mit Makro Aufzeichnen zu machen, und mir Klick für Klick aufgeschrieben.

Kannst du versuchen, aber ist in den meisten Fällen nicht von Erfolg gekrönt. Manchmal hat man Glück und kann ein paar API Calls aus dem generierten Makro lesen, die man dann selbst nachschlägt und versucht in sein Makro einzubinden.

Das was du da vorhast ist schon etwas anspruchsvollere Programmierung, selbst die Stichworte dazu rauszusuchen, die du dann nachschlagen und zusammenfügen musst dürfte schnell ein paar Viertelstunden kosten. Von daher übersteigt das bei weitem das, was zumindest ich hier im Brett dazu helfen kann.

Zitat:
Original erstellt von Thorondor:
Werde mir wohl auch ein gutes Buch über VBA besorgen müssen. Meine Programmierzeit ist einige Jaher her. versteh nur die hälfte des VBA Codes.

Wenn du da Einsteigen willst unbedingt. Und am Besten einen VBA und einen SolidWorks API Kurs gleich noch dazu. Oder einige (Frei)zeit und Spaß am Selbstlernen 

Bei deinem Vertriebspartner solltest du ein API Buch bekommen können, das Trainingsmanual zum "normalen" API Kurs. Ggf. haben die auch was eigenes. Dann kannst du hier im Brett, auf meiner Hilfeseite in der MakroMania und Makrotauschbörse und natürlich auf http://www.mysldworks.de  jede Menge Beispielcode für alles mögliche finden, vielleicht reicht das ja auch schon als Anfang zum Lernen.

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

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz