Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Offset-Oberfläche Makro

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
Autor Thema:   Offset-Oberfläche Makro (307 mal gelesen)
Klopfer195
Mitglied
Konstrukteur

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

Beiträge: 8
Registriert: 05.02.2019

SolidWorks 2018 SP5

erstellt am: 03. Sep. 2019 11:42    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

Guten Morgen an alle

Ich hätte mal eine Bitte an alle die sich ein wenig mit der Makro-Programmierung in SolidWorks auskennen.
Und zwar hab ich mir überlegt ein Makro zu erstellen bei dem man, von bereits ausgewählten Flächen, ein Offset mit 0mm erstellt. Also Vorgehensweise wäre Flächen anwählen dann Makro starten und dann sollte der Offset Befehl fertig ausgeführt sein.

Mit Makro aufzeichnen komme ich leider zu keinem Ergebnis.
Wenn jemand Zeit und Lust hätte mir zu erklären wie ich den Offset Befehl in VBA ansprechen kann und diesem sagen kann das der Wert 0 sein soll wäre ich demjenigen sehr dankbar  .

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2215
Registriert: 18.07.2012

-Solid Works 2019 SP3
-Pro Engineer WF 3

erstellt am: 03. Sep. 2019 13:18    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 Klopfer195 10 Unities + Antwort hilfreich

Hallo,

hast du dir mal das Beispiel "Create and Modify Move Face Feature Example (VBA)" oder die Methode "InsertMoveFace3 Method (IFeatureManager)" in der API-Hilfe angeschaut?

[EDIT] Sorry war beim falschen Befehl, dein Befehl müsste wohl eher "CreateOffsetSurface Method (IBody2/IModeler)" sein[/EDIT]

[EDIT2] Wie es scheint ist das keine so einfache Aufgabenstellung wie ich dachte, hab jetzt schon ewig rumprobiert und irgendwie will das nicht klappen.

Hätte dafür die Holzfällermethode im Angebot 

Code:
Dim swApp As SldWorks.SldWorks

Dim swModel As ModelDoc2

Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc

boolstatus = swApp.RunCommand(105, "") 'Startet den Befehl "Offstet Oberfläche"

SendKeys "{TAB}"
SendKeys "0"
SendKeys "{ENTER}"

boolstatus = swApp.RunCommand(1463, "") 'Command für RMB "OK"

End Sub


Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete   

[Diese Nachricht wurde von bk.sc am 03. Sep. 2019 editiert.]

[Diese Nachricht wurde von bk.sc am 03. Sep. 2019 editiert.]

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

Klopfer195
Mitglied
Konstrukteur

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

Beiträge: 8
Registriert: 05.02.2019

SolidWorks 2018 SP5

erstellt am: 04. Sep. 2019 07:48    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

Ja super vielen Dank schonmal.

Könntest du mir noch kurz erklären was "Dim swApp As SldWorks.SldWorks" und "Dim swModel As ModelDoc2" machen.
Und wie hast du die Nummern herausgefunden die du mit RunCommand aufrufst?

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2215
Registriert: 18.07.2012

-Solid Works 2019 SP3
-Pro Engineer WF 3

erstellt am: 04. Sep. 2019 08:39    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 Klopfer195 10 Unities + Antwort hilfreich


intellisensvba.png


intellisensvba2.png

 
Hallo Klopfer,

mit der "Dim" Anweisungen kannst du eine Variable dimensionieren, also in den zulässigen Werten einschränken (was du wahrscheinlich schon weißt). An stelle von SldWorks.SldWorks / ModelDoc2 könntest du auch allgemein "Object" verwenden, was hier aber dann nicht weiter bestimmt wäre (würde aber auch Funktionieren).
Durch das vorherige Deklarieren des bestimmten Objects funktioniert dann z.B. Intellisens, was dir beim Programmieren dann nur Methoden / Eigenschaften zu diesen speziffischen Object vorschlägt mit den dazugehörigen benötigten Variablen, dass macht es beim Programmieren einfacher da du die Methode / Eigenschaften nicht händisch eintippen musst sondern schön auswählen kannst und die benötigten Variablen angezeigt bekommst (siehe Bilder).
Des Weiteren verwendet man diese Form (early binding) auch um den Code etwas leserlicher zu halten weil man gleich sieht was hier für ein Object erwartet wird.

Für das ermitteln der CommandID hab ich ein Macro das die IDs aufzeichnet, viele stehen auch in der API-Hilfe aber eben nicht alle bzw. manche etwas kryptisch benannt. Die Methode mit RunCommand sollte aber eher vermieden werden, weil es wie oben schon geschrieben eher die Holzhammermethode ist ohne irgendwelche Absicherungen.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete  

[Diese Nachricht wurde von bk.sc am 04. Sep. 2019 editiert.]

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

Klopfer195
Mitglied
Konstrukteur

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

Beiträge: 8
Registriert: 05.02.2019

SolidWorks 2018 SP5

erstellt am: 04. Sep. 2019 09:12    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

Hm ok ich glaube es verstanden zu haben.
Holzhammermethode ist für den Anfang erstmal ok für mich. Hauptsache es tut sich überhaupt etwas  .

Ich beschäftige mich noch nicht wirklich lange mit VBA Programmierung und hatte mir dafür ein Buch gekauft das da heißt "Einstieg in VBA mit Excel", bin mir mittlerweile aber nicht mehr sicher ob das das richtige war um mit dem Thema anzufangen. Wie ist denn deine Meinung dazu? Lieber ein anderes Buch besorgen was Visual Basic außerhalb eines anderen Programmes behandelt oder ist das in Excel gar nicht so verkehrt?

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

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



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

Beiträge: 2215
Registriert: 18.07.2012

-Solid Works 2019 SP3
-Pro Engineer WF 3

erstellt am: 04. Sep. 2019 12:34    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 Klopfer195 10 Unities + Antwort hilfreich

Hallo,

für den Einstieg ist das Buch glaube ich nicht verkehrt, weil hier hoffe ich auch die Grundlagen erklärt werden und diese sind ja auf SWX oder andere Programme dann übertragbar.
Ein anderes Buch was direkt VB.NET behandelt wäre sinnvoll wenn du mal in Richtung Add-Ins gehen möchtest, VB.NET unterscheidet sich schon ein bisschen zu VBA, wenn du VB.NET aber kannst hast du mit VBA keine großen Probleme.

Meine "Programmier"-Skills hab ich mir mit 30% "learning by doing", 50% Beiträge aus dieses Forum und 20% aus dem restliche www angeeignet.

Tipp: Die SWX API-Hilfe mit seinen zahlreichen Beispielen ist dein Freund auch wenn diese ab und an etwas verwirrend sein kann.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete  

[Diese Nachricht wurde von bk.sc am 04. Sep. 2019 editiert.]

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)2019 CAD.de | Impressum | Datenschutz