Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Bemassungs Problem bei 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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
Im Fokus: CAD Automation & CPQE
Autor Thema:  Bemassungs Problem bei Makro (223 mal gelesen)
Hans Meiser
Mitglied
CAD/PLM-Supporter / CSWP


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

Beiträge: 84
Registriert: 09.05.2003

SolidWorks 2009 SP5.1 (produktiv)
Aigle 5.1 (PLM)
proAlpha (ERP)
WinXP x64 Prof. SP.2.0
HP XW 4400 8GB RAM
FX 3500 Treiber 6.14.10.9136

erstellt am: 04. Jul. 2006 12:30    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

Hallo zusammen,

ich habe hier ein Makro das soweit einwandfrei funktioniert. Es ist nur eine kleine Sache, welches mir eine Platte in immer derselben Ausrichtung erzeugt. Dabei gebe ich vorab bei Ausführen des Makros in drei Fenstern Länge/Breite/Dicke der Platte ein. Soweit sogut. Nun erstellt SolidWorks eine Skizze und trägt mir in den Bemassungsfenstern die eingegebenen Werte ein. (Option: Bemassungswert einsetzten). Dadurch bleibt das Fenster stehen und ich muss die richtigen Werte quittieren.

Nun meine Frage:
Kann ich in das Makro die "Automatische Quittierung" einbauen, oder kann ich zum Start des Makros diese Option: "Bemassungswert einsetzten" irgendwie ausschalten und am Ende wieder einschalten.

Danke für eure Hilfe, da ich mit Makros nicht gerade der Platzhirsch bin.

------------------
Bis demnächst!

Hans Meiser

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

Ralf Tide
Moderator
-




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

Beiträge: 4978
Registriert: 06.08.2001

Sehr seltsame Dinge passiern <Klaus Lage - Toy Story>
.-)

erstellt am: 04. Jul. 2006 12:56    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 Hans Meiser 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Hans Meiser:
...oder kann ich zum Start des Makros diese Option: "Bemassungswert einsetzten" irgendwie ausschalten und am Ende wieder einschalten...
Hallo Hans  ,

ich würde sagen oder 

mit

Code:
swApp.SetUserPreferenceToggle swInputDimValOnCreate, False
ausschalten und mit
Code:
swApp.SetUserPreferenceToggle swInputDimValOnCreate, True
wieder einschalten. Läßt sich wunderbar mit dem MacroRecorder aufzeichnen 

Beste Grüße,
Ralf

------------------

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

Hans Meiser
Mitglied
CAD/PLM-Supporter / CSWP


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

Beiträge: 84
Registriert: 09.05.2003

SolidWorks 2009 SP5.1 (produktiv)
Aigle 5.1 (PLM)
proAlpha (ERP)
WinXP x64 Prof. SP.2.0
HP XW 4400 8GB RAM
FX 3500 Treiber 6.14.10.9136

erstellt am: 04. Jul. 2006 14:09    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

Hallo Ralf,

Auf die Idee kam ich auch schon und habe mir das mal angeschaut. Allerdings funktioniert das auf meiner SW2005 einfach nicht.
Hier mein Makro-Text:

Dim swApp As Object
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim FeatureData As Object
Dim Feature As Object
Dim Component As Object
Sub main()

Set swApp = Application.SldWorks

X = InputBox("Länge", "Bemassung")
Y = InputBox("Breite", "Bemassung")
Z = InputBox("Dicke", "Bemassung")

Set Part = swApp.ActiveDoc
swApp.SetUserPreferenceToggle swInputDimValOnCreate, False
boolstatus = Part.Extension.SelectByID2("Oben", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.InsertSketch2 True
Part.ClearSelection2 True
Part.SketchRectangle -X / 2000, Y / 2000, 0, X / 2000, -Y / 2000, 0, 1
Part.SetPickMode
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Line2", "SKETCHSEGMENT", -0.05440947368421, 0, -0.001470526315789, False, 0, Nothing, 0)
Part.SelectMidpoint
boolstatus = Part.Extension.SelectByID2("Punkt1@Ursprung", "EXTSKETCHPOINT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgHORIZPOINTS"
boolstatus = Part.Extension.SelectByID2("Line3", "SKETCHSEGMENT", 0.005882105263158, 0, 0.02709969924812, False, 0, Nothing, 0)
Part.SelectMidpoint
boolstatus = Part.Extension.SelectByID2("Punkt1@Ursprung", "EXTSKETCHPOINT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgVERTPOINTS"
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Line2", "SKETCHSEGMENT", -0.0537792481203, 0, -0.01302466165414, False, 0, Nothing, 0)
Set Annotation = Part.AddDimension2(-0.078148, 0, -0.00966346)
Part.ClearSelection2 True
Part.Parameter("D1@Skizze1").SystemValue = Y / 1000
boolstatus = Part.Extension.SelectByID2("Line1", "SKETCHSEGMENT", -0.0342422556391, 0, -0.02499894736842, False, 0, Nothing, 0)
Set Annotation = Part.AddDimension2(-0.0331919, 0, -0.039074)
Part.Parameter("D2@Skizze1").SystemValue = X / 1000
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("D1@Skizze1@Teil9.SLDPRT", "DIMENSION", 0, 0, 0, False, 0, Nothing, 0)
Part.ClearSelection2 True
Part.ShowNamedView2 "*Trimetrisch", 8
Part.ClearSelection2 True
Part.SelectByID "D3@Skizze1@Teil19.SLDPRT", "DIMENSION", 0, 0, 0
Part.FeatureExtrusion3 1, 0, 0, 0, 0, Z / 1000, 0.01, 0, 0, 0, 0, 0.01745329251994, 0.01745329251994, 0, 0, 0, 0, 1
boolstatus = Part.SetUserPreferenceToggle(6, False)
swApp.SetUserPreferenceToggle swInputDimValOnCreate, True
End Sub

Siehst du etwas was falsch ist?

Das Makro funktioniert soweit, aber es muss halt einfach 2x das Mass bestätigt werden. Und genau dies möchte ich ausschalten. Sorry wenn es ein DAU-Fehler ist, aber ich arbeite eigentlich sonst nicht wirklich mit Makros.

Danke

------------------
Bis demnächst!

Hans Meiser

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

mkkk
Mitglied



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

Beiträge: 105
Registriert: 04.03.2005

erstellt am: 04. Jul. 2006 15:11    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 Hans Meiser 10 Unities + Antwort hilfreich

Hallo Hans,

am Programmanfang solltest Du noch folgendes angeben:

Option Explicit
Dim Annotation as Object

Sonst konnte ich keinen Fehler entdecken.
Gruß,Markus

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

weinel
Mitglied



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

Beiträge: 464
Registriert: 04.09.2002

SolidWorks 2016 SP4.0
M6800 K3100 Win7 64bit
Eplan P8 2.5
ARAS

erstellt am: 04. Jul. 2006 15:36    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 Hans Meiser 10 Unities + Antwort hilfreich

Hallo Hans,

dein Problem ist, dass swInputDimValOnCreate nicht definiert ist.
Wenn du die Konstantendatei mit einbindest funktioniert es.

Oder du definiert es mit:

Public Const swInputDimValOnCreate = 10

Dann sollte es funktionieren!

------------------
Gruß weinel

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



Konstrukteur (m/w/d) im Bereich Sondermaschinenbau Mikromontageanlagen

Über uns

Die ficonTEC Service GmbH ist ein innovatives High-Tech-Unternehmen, dass sich seit 2001 schnell in einem hochspezialisierten Markt etabliert hat. Durch kontinuierliches Wachstum und innovative Entwicklungen sind wir ein anerkannter Marktführer in der automatisierten Montage und Prüfung von optoelektronischen Komponenten und (hybriden) photonischen Geräten. Unser ...
Anzeige ansehenKonstruktion, Visualisierung
Hans Meiser
Mitglied
CAD/PLM-Supporter / CSWP


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

Beiträge: 84
Registriert: 09.05.2003

SolidWorks 2009 SP5.1 (produktiv)
Aigle 5.1 (PLM)
proAlpha (ERP)
WinXP x64 Prof. SP.2.0
HP XW 4400 8GB RAM
FX 3500 Treiber 6.14.10.9136

erstellt am: 05. Jul. 2006 07:51    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

Danke an alle die geholfen haben.

Jetzt funktioniert es prima.

------------------
Bis demnächst!

Hans Meiser

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