Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Problem Makro/VBA mit Schleife

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
  
InnovationsForum: Digital Factory – Das Online-Event für Ihre Fertigung
Autor Thema:  Problem Makro/VBA mit Schleife (664 mal gelesen)
TMS-TB
Mitglied
Konstrukteur


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

Beiträge: 34
Registriert: 30.07.2012

erstellt am: 11. Apr. 2019 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

Programmiere gerade mein erste Solidworksmakro. Soll Änderungsindex eintragen. Da ich bis zu 8 Stk eintragen/auslesen will, wollte ich das mit einer Schleife regeln, aber das Beispiel funktioniert so nicht. Wie könnte es funktionieren?

    Dim i As Integer
    i = 1
   
        Do
            If swCustomProbertyManager.Get("IndexNummer + cstr(i)") <> "" Then
                TextBox_b1.Enabled = False
                TextBox_b1.Text = swCustomProbertyManager.Get("IndexBeschreibung +cstr(i)")
                TextBox_b1.Enabled = False
                TextBox_c1.Text = swCustomProbertyManager.Get("IndexName1")
                TextBox_c1.Enabled = False
                TextBox_d1.Text = swCustomProbertyManager.Get("IndexDatum1")
                TextBox_d1.Enabled = False
          End If
        i = i + 1
        Loop While i <= 8

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: 1747
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: 11. Apr. 2019 10: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 TMS-TB 10 Unities + Antwort hilfreich

Hallo,

ich denke der Fehler liegt in
("IndexNummer + cstr(i)")

das müsste wahrscheinlich
("IndexNummer" + cstr(i))

sein

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

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

TMS-TB
Mitglied
Konstrukteur


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

Beiträge: 34
Registriert: 30.07.2012

erstellt am: 11. Apr. 2019 11:13    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

@nahe: Danke da war schon der Fehler.


Edit: Hier noch der korrigierte Programmtext, als Info

    Dim i As Integer
    i = 1
   
        Do
            If swCustomProbertyManager.Get("IndexNummer" + CStr(i)) <> "" Then
                Controls("TextBox_a" + CStr(i)).Enabled = False
                Controls("TextBox_b" + CStr(i)).Text = swCustomProbertyManager.Get("IndexBeschreibung" + CStr(i))
                Controls("TextBox_b" + CStr(i)).Enabled = False
                Controls("TextBox_c" + CStr(i)).Text = swCustomProbertyManager.Get("IndexName" + CStr(i))
                Controls("TextBox_c" + CStr(i)).Enabled = False
                Controls("TextBox_d" + CStr(i)).Text = swCustomProbertyManager.Get("IndexDatum" + CStr(i))
                Controls("TextBox_d" + CStr(i)).Enabled = False
          End If
        i = i + 1
        Loop While i <= 8

[Diese Nachricht wurde von TMS-TB am 11. Apr. 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)2024 CAD.de | Impressum | Datenschutz