Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Einstig in VBA

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
  
AMB
Autor Thema:  Einstig in VBA (2350 mal gelesen)
Teddibaer
Ehrenmitglied V.I.P. h.c.
Struktur-Experte



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

Beiträge: 2125
Registriert: 09.02.2004

erstellt am: 29. Jun. 2004 16:35    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 würde gern folgende Probleme mittels Makro/UserForm erledigen.

1) Ich möchte den Wert der benutzerdefinierten Eigenschaft "benennung1" in eine Variable "vbenennung1" auslesen.

    Dim benennung1 As String
    vbenennung1 = Part.GetCustomInfoNames2("benennung1", "")
    TextBox4.Text = vbenennung1

2) In einem Listenfeld sollen z.B. Standards eingetragen sein, und die eben ausgelesene Eigenschaft.

Private Sub ComboBox1_Click()
    rh1 = ComboBox1.text
End Sub

Private Sub UserForm_Layout()

    'Anbindung ComboBox1
    ComboBox1.AddItem "Benennung Hallo"
    ComboBox1.AddItem "Benennung Hallo2"
    ComboBox1.AddItem vbenennung1            <---???????????

End Sub


Wer verdient sich 10Points? (Für die *****s wohl ein Klacks)

------------------
Gruß, der Teddibaer
---------
Es gibt Tage an denen verliert man, und es gibt Tage, an denen kann man nicht gewinnen ...

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

Beckx
Mitglied



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

Beiträge: 87
Registriert: 08.03.2004

DELL PW390
DualCore @2,4ghz, 4GB RAM, Quadro FX4600, WINXP
SWX2009 Sp3
SWX2008 Sp5

erstellt am: 29. Jun. 2004 17: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 Nur für Teddibaer 10 Unities + Antwort hilfreich


Hallo,

ich denke dein Fehler liegt hier:

Dim vbenennung1 As String


Hab das grad mal mit dem Code probiert:

Dim swApp As Object
Dim Model As Object
Dim vbenennung1 As String
   
Set swApp = CreateObject("SldWorks.Application")
Set Model = swApp.ActiveDoc

swApp.Visible = True

vbenennung1 = Model.CustomInfo("benennung1")
TextBox1.Text = vbenennung1

ComboBox1.AddItem "Hallo"
ComboBox1.AddItem "Hallo2"
ComboBox1.AddItem vbenennung1

und es hat funktioniert 
HTHHope that helps = Hoffe es hilft, Gruss Alex

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: 29. Jun. 2004 17: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 Nur für Teddibaer 10 Unities + Antwort hilfreich


fuer_teddibaer.zip

 
Hallo Teddibaer,

war schon recht dicht dran; am einfachsten machst du das in der Initialisierungsroutine der Userform:

Code:

Private Sub UserForm_Initialize()
    Dim swapp As Object
    Dim Part As Object
    Dim customprop As String
    Dim config As String
    Const propname As String = "benennung1"
   
    Set swapp = CreateObject("SldWorks.Application")
    Set Part = swapp.ActiveDoc
    If Part Is Nothing Then
        MsgBox "Kein Dokument aktiv"
        End
    End If
   
    config = "" ' für Dateieigenschaften muss es ein Leerstring sein
    customprop = Part.CustomInfo2(config, propname)
   
    ' jetzt die Combobox füllen
    ComboBox1.AddItem "Benennung Hallo1"
    ComboBox1.AddItem "Benennung Hallo2"
    ComboBox1.AddItem "Benennung Hallo3"
    ComboBox1.AddItem customprop
    ' und diesen Wert vorauswählen
    ComboBox1.Text = customprop
   
End Sub

Ich hab dir auch mal das SWP angehängt, als basis zum Ausprobieren 

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite
http://solidworks.cad.de
KLAMM? Was ist KLAMM?

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

Andreas Müller
Mitglied
Masch. Ing. HTL / Betriebsing. STV


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

Beiträge: 1151
Registriert: 11.04.2001

erstellt am: 30. Jun. 2004 09: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 Teddibaer 10 Unities + Antwort hilfreich

Hallo Alle.

Teddibaer: Vielleicht liegt der Fehler darin, dass "GetCustomInfoNames2" ein Array von Namen zurückgibt (also ev. mehrere Namen) und mit "X.additem" nur ein einzelner String zugewiesen werden darf.

------------------
Gruss
Andreas

A+E Müller AG

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