Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Benutzerdefinierte Eigenschaften per Makro/Textbox ändern

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
  
Bechtle Competence Days | Online
Autor Thema:  Benutzerdefinierte Eigenschaften per Makro/Textbox ändern (13774 mal gelesen)
Kurty
Mitglied
Konstruktionsingenieur


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

Beiträge: 21
Registriert: 27.09.2010

erstellt am: 23. Feb. 2011 15: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

ich versuch derzeit eine Eingabe Maske in VBA zu schreiben um die Benutzerdefinierten Eigenschaften zu ändern.
Ich hab auch bereits probiert mich mittels des Demo Makros der MakroMania durchzuhangeln aber finde das dort zu kompliziert gleichzeitig auf mehrere Probleme eingegangen wird. Auch Forumsuche hat mich nicht zum Ziel gebracht.

Also was ich derzeit versuche - Userform Aufrufen - Textbox eingabe - und mit Schließen knopf diesen Wert in Benutzerdefinierte variable zu schreiben
Bzw. alternativ den Wert in neue Eigenschaft zu schreiben.

Folgend der VBA Code innerhalb der Userform (UF1)
------------------------------
Dim swApp As Object
Dim Part As Object
Dim glbconfname As String

Sub UF1()

Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc

End Sub

Private Sub CommandButton1_Click()

Part.CustomInfo2(glbconfname, "Description") = TextBox1.Text

'dummy = Part.AddCustomInfo3(glbconfname, "Humbug", swCustomInfoText, TextBox1.Text)

Hide
End Sub
------------------------------------------------

Ich wäre sehr dankbar, wenn mir einer den Fehler in diesem simplen Programm aufzeigen kann, da mir bisher die VBA Grundlagen in SWXSolidWorks fehlen (Bisher nur Excel VBA erfahrung)


Also vorab Danke für jede hilfreiche Antwort
mfg
Christoph

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

dopplerm
Ehrenmitglied V.I.P. h.c.
Konstrukteur


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

Beiträge: 3592
Registriert: 11.02.2005

Win 10
SWX 2019 SP 5.0

erstellt am: 23. Feb. 2011 15: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 Nur für Kurty 10 Unities + Antwort hilfreich

seit einiger zeit gibz es auch den:
property tab builder (bestandteil von solidworks)
damit erstellt man eine eingabemaske für die dateieigenschaften,
denke, diese funktion deckt schon den bedarf von 80% der user ab,
nur ist dieser nicht sehr bekannt
man kann auch festlegen, ob werte in benutzerdeffinierte oder konfigurations spezifische eigenschaften geschrieben werden sollen

aber wie gesagt, die restlichen 20% deckt dieses tool/funktion nicht ab

lg martin

------------------
Bin jetzt auch unter Skype erreichbar  , einfach nach Martin Doppler in Wien suchen.

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

GDawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 24. Feb. 2011 07:17    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 Kurty 10 Unities + Antwort hilfreich

Hier ist ein denkbar einfaches Makro das genau das macht was du möchtest.
Nur dass ich kein Formular sondern eine Inputbox benutze.

Code:

Public swApp                          As SldWorks.SldWorks
Public swModel                        As SldWorks.ModelDoc2


Sub main()

    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
   
    Dim MATERIAL As String
    Dim tmpMATERIAL As String
    Dim dummy  As Boolean
    Dim MATERIAL_var  As String
    Dim typ As Integer
   
    typ = swModel.GetType() 'Prüfen, ob ein Teil geöffnet ist
    If typ <> swDocPART Then
        GoTo EXITHERE
    End If

    ' Hier wird der Eigenschaftsname für das Material bestimmt.
    ' Siehe in SolidWorks für genaue Schreibweise
    MATERIAL_var = "Mat-SAP"
   
   
    MATERIAL = swModel.GetCustomInfoValue("", MATERIAL_var)
    tmpMATERIAL = InputBox("Bitte neues Material eingeben", "Material", MATERIAL)
   
    If tmpMATERIAL <> MATERIAL Then
        dummy = swModel.DeleteCustomInfo2("", MATERIAL_var)
        dummy = swModel.AddCustomInfo3("", MATERIAL_var, swCustomInfoText, tmpMATERIAL)
    Else
        MsgBox ("Es wurde keine Änderung vorgenommen.")
    End If
   
   
EXITHERE:

   
End Sub


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

Kurty
Mitglied
Konstruktionsingenieur


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

Beiträge: 21
Registriert: 27.09.2010

erstellt am: 24. Feb. 2011 07:58    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

Zitat:
Original erstellt von dopplerm:

aber wie gesagt, die restlichen 20% deckt dieses tool/funktion nicht ab


Leider bin ich genau diese 20% 
Ich hab mir den Tab-Builder vorher schon angesehen gehabt und für die Endgültige Funktion reicht er nicht aus - Sprich Drop-Down liste mit Art des Teils auswahl und dementsprechend anderes Fenster zu Eingabe.


Danke Gdawg, das schonmal super anfang, aus dem ich alles rausziehen kann, was ich brauche. Muß jetzt nur noch schauen, wie ich in die Konfigurationsspezifische Liste statt in Benutzerspezifisch schreibe, aber da hab ich bereits eine Idee.

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

MWN
Mitglied
Dipl.-Ing.


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

Beiträge: 492
Registriert: 14.02.2007

erstellt am: 24. Feb. 2011 08: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 Kurty 10 Unities + Antwort hilfreich

Guten Morgen,

in die konfigurationsspezifischen Dateieigenschaften zu schreiben ist rel. einfach.
Du änderst folgenden Teil

Code:
dummy = swModel.AddCustomInfo3("", MATERIAL_var, swCustomInfoText, tmpMATERIAL)

in
Code:
dummy = swModel.AddCustomInfo3("DeinKonfigurationsname", MATERIAL_var, swCustomInfoText, tmpMATERIAL)

Analog funktioniert es, um im vorherigen Schritt die entspr. Eintragung zu löschen
Code:
dummy = swModel.DeleteCustomInfo2("DeinKonfigurationsname", MATERIAL_var)

und die Variable MATERIAL
Code:
MATERIAL = swModel.GetCustomInfoValue("DeinKonfigurationsname", MATERIAL_var)

zu füllen.
Grüße

Tobias

------------------
Besucht mich doch mal in meiner Tischlerei

"...Kommunikation ist nur so gut wie ihr Ergebnis..." - frei nach Richard Bandler / John Grinder

"...Wenn du das tust, was du schon immer tust, wirst du auch nur das erhalten, was du schon immer erhalten hast..."

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

Kurty
Mitglied
Konstruktionsingenieur


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

Beiträge: 21
Registriert: 27.09.2010

erstellt am: 24. Feb. 2011 10:16    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 Schonmal, was ich nun noch brauche, wäre ein Auslesen der gerade Aktuel aktiven Konfiguration.
Da ich später teile habe mit verschiedenen Varianten, und bei uns alle Eigenschaften somit Konfigurationsbezogen sind.

Code:
confname = swModel.GetActiveConfiguration

ich hab versucht über diesen Befehl den Konfigurationsnamen auszulesen mit und ohne SET vorneweg aber kriege je nach variante Fehlermeldung.

Später soll dann

Code:
dummy = swModel.AddCustomInfo3(confname, MATERIAL_var, swCustomInfoText, tmpMATERIAL)

die Variable schreiben

wäre wieder mal für jede Hilfe Dankbar.

mfg
Christoph

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

GDawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 24. Feb. 2011 10:26    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 Kurty 10 Unities + Antwort hilfreich

SET brauchst Du nur in VBA. In .net kannst Du SET weglassen; das nur zur Info.

Um den Namen der aktuellen Konfiguration herauszufinden brauchst Du den Konfigurationsmanager:

Zitat aus der API-Hilfe "Are the Assembly Configurations Loaded Example (VB.NET)"

Code:

Dim swConfigurationMgr As ConfigurationManager
Dim swConfiguration As Configuration

Set swConfigurationMgr = swModel.ConfigurationManager
Set swConfiguration = swConfigurationMgr.ActiveConfiguration

Debug.Print ("  Name of configuration: " & swConfiguration.Name)


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

Kurty
Mitglied
Konstruktionsingenieur


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

Beiträge: 21
Registriert: 27.09.2010

erstellt am: 24. Feb. 2011 12:27    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

Zitat:
Original erstellt von GDawg:
SET brauchst Du nur in VBA. In .net kannst Du SET weglassen; das nur zur Info.

Vorneweg, ich will in VBA arbeiten, da ich nur in VBA einige Erfahrung habe.

Danke für deine Antwort aber funktioniert leider genauso wenig wie vorher - die Set befehlsleiste wird mit folgendem Fehler abgebrochen:
Run-time error '91':
Object variable or With block variable not set


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: 24. Feb. 2011 13:04    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 Kurty 10 Unities + Antwort hilfreich

Hallo Kurty,

Set brauchst du nur, wenn du eine Objektvariable belegen willst, das sollte eigentlich nichts mit probieren zu tun haben.

Leider zeigst du deinen Code nicht, zu dem du den Fehler bekommst, da ist es etwas dunkel in der Glaskugel.  Leider sagst du, dass das Beispiel SolidWorks MakroMania - Schriftfeld ausfüllen
mit den vielen Kommentaren für dich zu schwierig und kompliziert ist, da steht nämlich alles drin, was du brauchst, du müsstest dich nur mal eine Stunde hinsetzen und das durchgehen, die Kommentare lesen und ggf. mal quer in die API Hilfe schauen, dann hättest du alles, was du brauchst.

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

GDawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 24. Feb. 2011 13: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 Nur für Kurty 10 Unities + Antwort hilfreich

Ok .. hast Du alle Verweise einmal kontrolliert?

Das ist so plusminus die Minimalst-Einstellung.

Danke "nahe"! für das Bild 
BILD mit SolidWorks-Verweise

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

Kurty
Mitglied
Konstruktionsingenieur


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

Beiträge: 21
Registriert: 27.09.2010

erstellt am: 24. Feb. 2011 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

Zitat:
Original erstellt von StefanBerlitz:
Leider zeigst du deinen Code nicht, zu dem du den Fehler bekommst, da ist es etwas dunkel in der Glaskugel. 

Öhm den code habe ich gleich im ersten Posting gezeigt und habe dann den von GDawg übernommen da dieser Wunderbar auf die Basics eingeht. Diesen wollte ich nun einfach erweitern um nicht in die Benutzerspezifische sondern in die Konfigurationsspezifische Eigenschaften schreiben.

Zitat:

Leider sagst du, dass das Beispiel SolidWorks MakroMania - Schriftfeld ausfüllen
mit den vielen Kommentaren für dich zu schwierig und kompliziert ist, da steht nämlich alles drin, was du brauchst,, du müsstest dich nur mal eine Stunde hinsetzen und das durchgehen, die Kommentare lesen und ggf. mal quer in die API Hilfe schauen, dann hättest du alles, was du brauchst.

Bitte ein sachlicher Kommentar oder sogar eine simple Antwort hätte hier viel mehr gebracht - dein Programm ist in sich schön, aber um zu verstehen wie die einzelnen Befehle funktionieren erfüllt es viel zu viele Aufgaben. Ich hab sogar nen Ausdruck hier vor mir liegen, da du aber Grundsätzlich mit jedem Subprogramm 2-3 Aufgaben erledigst die miteinander verschmelzen ist dies ein schlechtes Tutorial Program leider. Und dir sollte auffallen das bestimmte von mir verwendete Befehle aus deinem programm kommen aber die korrekte Zusätze fehlen-


Also meine Aktuelle Frage ist doch recht simpel - wie ermitel ich die aktuell verwendete Konfiguration im sie im Befehle Eigenschaft setzen einzutragen.

Code:
dummy = swModel.AddCustomInfo3(CONFIGNAME, MATERIAL_var, swCustomInfoText, tmpMATERIAL)

Also wie setze ich Configname korrekt, auf die Aktuell verwendete Konfiguration.

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

GDawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 24. Feb. 2011 13: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 Kurty 10 Unities + Antwort hilfreich


MaterialUndKonfigurationen.zip

 
So, hier, das komplette Ding!
Bei mir funktioniert das ein-wand-frei! Also, bitte, kein "es geht nicht"!   

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

MWN
Mitglied
Dipl.-Ing.


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

Beiträge: 492
Registriert: 14.02.2007

erstellt am: 24. Feb. 2011 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 Nur für Kurty 10 Unities + Antwort hilfreich

mit dem Beispiel von GDawg

  

Zitat:
Code:
Dim swConfigurationMgr As ConfigurationManager
Dim swConfiguration As Configuration

Set swConfigurationMgr = swModel.ConfigurationManager
Set swConfiguration = swConfigurationMgr.ActiveConfiguration

Debug.Print ("  Name of configuration: " & swConfiguration.Name)


und der Verwendung von

Code:
swConfiguration.Name

Wobei in meinem Beispiel "DeineKonfiguration" durch swConfiguration.Name zu ersetzen ist.

Grüße

Tobias

PS: so langsam glaube ich, dass es einfacher gewesen wäre, bzw. auch schneller gegangen, wenn du einfach gepostet hättest, was du haben möchtest und dann hätte sich schon jemand um das Schreiben des Macros gekümmert.  

------------------
Besucht mich doch mal in meiner Tischlerei

"...Kommunikation ist nur so gut wie ihr Ergebnis..." - frei nach Richard Bandler / John Grinder

"...Wenn du das tust, was du schon immer tust, wirst du auch nur das erhalten, was du schon immer erhalten hast..."

[Diese Nachricht wurde von MWN am 24. Feb. 2011 editiert.]

[Diese Nachricht wurde von MWN am 24. Feb. 2011 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: 24. Feb. 2011 13: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 Nur für Kurty 10 Unities + Antwort hilfreich

Hallo Kurty,

Zitat:
Original erstellt von Kurty:
Bitte ein sachlicher Kommentar oder sogar eine simple Antwort hätte hier viel mehr gebracht

Ich hatte schon das Gefühl, das meine Antwort sachlich war. Eine simplere Antwort konnte ich dir zumindest nicht geben, da ich wohl zu viel Grundwissen und Wille zum Verstehen voraussetze.

Zitat:
Original erstellt von Kurty:
Also meine Aktuelle Frage ist doch recht simpel - wie ermitel ich die aktuell verwendete Konfiguration im sie im Befehle Eigenschaft setzen einzutragen.

Code:
dummy = swModel.AddCustomInfo3(CONFIGNAME, MATERIAL_var, swCustomInfoText, tmpMATERIAL)

Also wie setze ich Configname korrekt, auf die Aktuell verwendete Konfiguration.[/B]



Die wurde dir mehrfach beantwortet, aber du wolltest keine Antwort, sondern ein fertiges Programm. Aber das hat dir GDawg ja jetzt geliefert.

Selbstverständlich wäre es für dich und für mich und wahrscheinlich auch für die anderen einfacher und schneller gewesen, du hättest einfach nur gesagt was du willst und hier hätte irgendjemand "geliefert", aber das ist zumindest nicht das Verständnis von "Hilfe zur Selbsthilfe", die ich für dieses Forum habe. Fertige Scripte und Makros kannst du bei kostenpflichtig erwerben, manchmal mach ich auch gegen eine Spende an die Tafel. Aber einfach so - nein,danke.

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

GDawg
Ehrenmitglied V.I.P. h.c.
Teamleiter FEM Simulation



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

Beiträge: 2622
Registriert: 12.07.2004

SolidWorks_2o2o SP3.o
Win10_x64, Quadro_P2ooo.
VisualStudio_2o19_Pro.
FEM: Forge_NxT_HPC, ANSYS_WB.
3D-Printer: Ultimaker_2, Tinker_Gnome.

erstellt am: 24. Feb. 2011 14:01    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 Kurty 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von StefanBerlitz:
Die wurde dir mehrfach beantwortet, aber du wolltest keine Antwort, sondern ein fertiges Programm. Aber das hat dir GDawg ja jetzt geliefert.

Selbstverständlich wäre es für dich und für mich und wahrscheinlich auch für die anderen einfacher und schneller gewesen, du hättest einfach nur gesagt was du willst und hier hätte irgendjemand "geliefert", aber das ist zumindest nicht das Verständnis von "Hilfe zur Selbsthilfe", die ich für dieses Forum habe. Fertige Scripte und Makros kannst du bei kostenpflichtig erwerben, manchmal mach ich auch gegen eine Spende an die Tafel. Aber einfach so - nein,danke.


Sorry, Stefan! Du hast natürlich recht! Aber das hier würde ewigs so weitergehen...
"Hilfe zur Selbsthilfe" geht eben nicht bei allen (sicherlich auch eine Einstellunsfrage). Und wenn man neu ist, ist das sicher auch nicht immer einfach.


Ich hoffe, @Kurty, dass Du jetzt etwas gelernt hast.
Sieh dir bitte das Makro von Stefan ganz genau an! Gehe es auch mal mit der F8 Taste durch und siehe Dir den Inhalt der Variablen und Objekte an!
Mach das selbe mit meinem Makro. Dann kannst Du auch sehen, wo was passiert oder eben nicht.
Mit etwas Training kannst Du Dich auch in der API-Hilfe zurechfinden - die ist manchmal nicht sehr einfach zu verstehen, aber versuche es.

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

Kurty
Mitglied
Konstruktionsingenieur


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

Beiträge: 21
Registriert: 27.09.2010

erstellt am: 24. Feb. 2011 15:38    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

Vorneweg danke allen, ich hab die Lösung gefunden. Folgend nur die erklärung worum es ging und was ich gesucht habe

Zitat:

Wobei in meinem Beispiel "DeineKonfiguration" durch swConfiguration.Name zu ersetzen ist.
----
PS: so langsam glaube ich, dass es einfacher gewesen wäre, bzw. auch schneller gegangen, wenn du einfach gepostet hättest, was du haben möchtest und dann hätte sich schon jemand um das Schreiben des Macros gekümmert.   

[/B]


Danke Tobias, fürs letzte Problem war dein Kommentar knackpunkt und hab den Fehler gefunden.
Was nicht Auffiel und mir nicht klar war, daß der Anhang xxx(.Name) wichtig hierfür war.
Dummerweise gibt es nirgends eine eingebaute API Hilfe in VBA die diese spezifischen Befehle erläutert.

Und nein, ich bezweifel das irgendwer hier im Forum die lust hätte, die gesamt Arbeit zu machen, die mir noch bevorsteht.
Ich brauchte einfach die korrekte Syntax der schnittstellen Befehle und kein fertiges Programm wo die einzelnen Befehle in der gesamt Aufgabe untergehen und vermischt sind.


And die anderen - kommt wieder runter, nicht jeder arbeitet seit Monaten/Jahren mit VBA in SWXSolidWorks - die hierzu benötigte Syntax ist alles andere als selbsterklärend und entgegen VBA in MSOffice zum teil sogar vollständig anders aufgebaut. Ihr habt grundsätzlich zu kompliziert erklärt wo ich eine vollkommen Basis antwort wollte.

Nur um ein Beispiel zu geben was ich gesucht habe:

Code:

Public swApp                          As SldWorks.SldWorks
Public swModel                        As SldWorks.ModelDoc2

Sub main()

    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swConfigurationMgr = swModel.ConfigurationManager
    Set swConfiguration = swConfigurationMgr.ActiveConfiguration
   
 
    Dim Property As String
    Dim dummy  As Boolean
 
    Property = InputBox("Eingabe")

    swModel.CustomInfo2(swConfiguration.Name, "Description") = Property
 
End Sub


Ohne ausschmückung oder sonstwas.
Ich bin trotzdem allen Dankbar für Ihre Hilfe.

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

gleichi86
Mitglied
Konstrukteur

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

Beiträge: 3
Registriert: 20.11.2018

Solidworks Premium 2017 x64 - Edition Sp 5.0

erstellt am: 31. Jan. 2019 15: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 Kurty 10 Unities + Antwort hilfreich

Hallo, ich muss diesen Beitrag wieder aktivieren, da ich nichts passendes auf mein Anliegen finde.

Ich ändere benutzerdefinierte Eigenschaften per Makro.
Das funktioniert soweit auch, nur wie gehe ich bei dropdown Listen vor.

Diese Vorgehensweise funktioniert hier wohl nicht!?  >

swModel.AddCustomInfo3("", MATERIAL_var, swCustomInfoText, tmpMATERIAL)

Danke im Voraus


##################

Ich sollte vielleicht dazu sagen, dass mit dem Property Manager eine Eigenschaftsliste erstellt wurde.
Bei der Eigenschaft "Fertigungstyp" steht eine Drop Down Liste zur Auswahl bereit. Diese kann ich wie hier beschrieben nicht ändern.
Textfelder jedoch sind kein Problem.

LG Stefan

[Diese Nachricht wurde von gleichi86 am 01. Feb. 2019 editiert.]

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: 2776
Registriert: 18.07.2012

-Solid Works 2019 SP5
-Pro Engineer WF 3

erstellt am: 06. Feb. 2019 15: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 Nur für Kurty 10 Unities + Antwort hilfreich

Hallo Stefan,

die Liste hast du doch nur in der "Registerkarte für Benutzerdefinierte Eigenschftaen" und nicht im eigentlichen Eigenschaften Fenster. Hinter deiner Auswahl in der Liste steckt trotzdem ein Text als Wert.

Was ist dein genaues Problem, trägt er dir in die Eigenschaft nicht den neuen gewünschten Wert ein oder willst du selber eine Auswahllister?

Gruß
Bernd

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

Staatlich anerkannte Deutschniete 

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