20. Apr 2024, 17:47
VB-fun.de - Beitragsübersicht zum VB-/VBA-Forum-Archiv 0405
  A00: Steuerelemente übergeben
 Von Heiko
 Am 27. Februar 2008 um 14:10:15
 Frage Hallo,

ich habe folgendes Problem.
Ich habe einige Formulare in denen bei Klick auf eine CheckBox einige andere Steuerelemente aktiviert bzw deaktiviert werden sollen.

Das ganze funktioniert auch und sieht dann so aus:
Private Sub Checkbox1_Click()  

If Checkbox1.Value = 0 Then

Me.Textfeld1.Enabled = False
Me.Textfeld2.Enabled = False
Me.Textfeld3.Enabled = False
Me.Textfeld4.Enabled = False
Me.Checkbox2.Enabled = False

End If

If CheckBox1.Value = -1 Then

Me.Textfeld1.Enabled = True
Me.Textfeld2.Enabled = True
Me.Textfeld3.Enabled = True
Me.Textfeld4.Enabled = True
Me.Checkbox2.Enabled = True

End If

End Sub
Nun möchte ich es aber besser machen und Code sparen und die Objekte, die ein- bzw. ausgeblendet werden an eine Function übergeben. Hatte mir das in etwa so vorgestellt:
Private Sub Checkbox1_Click()  

Dim Formular As String
Dim objekte() As String

Formular = "Form_" + Me.Name

objekte(0) = "Textfeld1"
objekte(1) = "Textfeld2"
objekte(2) = "Textfeld3"
objekte(3) = "Textfeld4"
objekte(4) = "Checkbox2"

If Checkbox1.Value = 0 Then

ausblenden(objekte, Formular)

End If

If Checkbox1.Value = -1 Then

einblenden(objekte, Formular)

End If

End Sub

Function aublenden(objekte, Formular)

anfang = LBound(objekte)
ende = UBound(objekte)

For i = anfang To ende

aktobjekt = Formular + "." + objekte(i)
aktobjekt.Enabled = False

Next i

End Function
Das ganze dann natürlich noch mit einblenden.

Ich habe nun 2 Std verschiedenste Varianten versucht und mich durch diverse Fehlermeldungen gekämpft, aber bekomme es einfach nicht hin.
Offensichtlich funktioniert das ansprechen eines Steuerelements nicht mit einer Stringvariable (geb ich den code hart in die Function ein, funktioniert es.)

Ich kenne mich leider überhaupt nicht mit dem Gebrauch von Objekten aus, denke aber das hier der Hund begraben liegt und bitte um Hilfe von den erfahreneren Benutzern. :)

Danke schon mal im Voraus
Heiko
[ VB-/VBA-Forum | Archiv 0405 | Archiv-Übersicht ]
 Antworten
A00: Steuerelemente übergeben - Heiko 27. Februar 2008 um 14:10:15
Re: Steuerelemente übergeben - Detlev Schubert 27. Februar 2008 um 17:31:59
Re: Steuerelemente übergeben - Heiko 28. Februar 2008 um 14:31:36

Zum Seitenanfang

Startseite | VB-/VBA-Tipps | Projekte | Tutorials | API-Referenz | Komponenten | Bücherecke | Gewinnspiele | VB-/VBA-Forum | DirectX | DirectX-Forum | VB.Net | VB.Net-Forum | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum