Zum Inhalt springen

[VBA] mehrere Textfelder mit gleichem Namen??


Empfohlene Beiträge

Geschrieben

Hallo,

ich habe 12 Textfelder (entsprechend den Monaten). Ich möchte

die Textfelder nun mit einer Schleife ansprechen. Da es in VBA keine

Indizes (wie in VB) zur Nummerierung der Steuerelemente gibt habe

ich jetzt ein Problem.

folgenden code habe ich schon:


dim ctrl_obj as object

dim i_count as integer


for i_count = 1 to 12 

   ctrl_obj = "txt_" & i_count

   ctrl_obj.value = "0"

next i_count

Das mag er aber nicht. Keine Ahnung warum. Er bringt auch keine Fehler

meldung.

Kann mir jemand weiterhelfen??

Thx and Greetz

Druid :cool:

Geschrieben

Hallo,

in VBA gibt es die Möglichkeit, auf die Steuerelemente in eines Formulars mittels der Controls-Auflistung zuzugreifen.

Beispiel:


Dim ctrl_obj As Object

For Each ctrl_obj In UserForm1.Controls

    If Left(ctrl_obj.Name, 4) = "txt_" Then

        Debug.Print "gefunden: " & ctrl_obj.Name

        ctrl_obj.value = "0"

    End If

Next ctrl_obj

Der Code, den du verwendest, ist so nicht korrekt.

dim ctrl_obj as object

dim i_count as integer

for i_count = 1 to 12 

   ctrl_obj = "txt_" & i_count

   ctrl_obj.value = "0"

next i_count

In der Schleife wir der Variable "ctrl_obj" ein Wert als String zugewiesen. Um den Wert des Textfeldes in einem Formular zu ändern muss ctrl_obj auch das Textfeld-Objekt sein :-)

Gruß

xmurrix

Geschrieben

Ich habe meinen Code jetzt geändert:

Bekomme aber folgende Fehlermeldung:


Sie haben als Einstellung der Ereigniseigenschaft den Ausdruck beim Klicken 

eingegeben. Dieser Ausdruck hat einen Fehler verursacht: Es trat ein Problem auf 

während ICORS mit dem OLE-Server oder ActiveX-Steuerelement kommunizierte. 


*Der Ausdruck gibt möglicherweise weder den Namen eines Makros noch den Namen einer 

benutzerdefinierten Funktion, noch [Ereignisprozedur] zurück

*Beim Auswerten einer Funktion, eines Ereignisses oder eines Makros trat möglicherweise 

ein Fehler auf. 

Weiß aber nicht ob das direkt mit dem Steuerelement zusammenhängt, da

er nicht mal in die Prozedur des Steuerelementes rein geht.

Geschrieben

Hallo,

es scheint, dass es sich hierbei um ein Access-Formular handelt. Soweit ich weis, kann man nur in Access Ereigniseigenschaften von Steuerelementen Makros, Funktionen, usw. zuweisen.

Schau Dir mal an, was genau als Ereigniseigenschaft für das Steuerelement zugewiesen wurde. Mit Access kenne ich micht nicht sehr gut aus, aber aus der Fehlermeldung kann ich nur ableiten, dass z. B. in der Ereigniseigenschaft "Beim Klicken" eine Funktion ausgewählt ist, die aber im Projekt oder Formular nicht vorkommt.

Gruß

xmurrix

Geschrieben

Ja es handelt sich um ein Access Formular. Ich habe die Funktionen,

Module und Makros schon durch, aber da passt alles.

Ich habe das betreffende Formular in eine leere DB und wieder zuürck

exportiert und siehe: es ging.

Naja, die Wege des Gates sind unergründlich ;)

Dein Code funktioniert einwandfrei. Danke nochmal...

Druid :cool:

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...