PDA

Vollständige Version anzeigen : Formularfelder dynamisch ausblenden


Louisleon
23.03.2004, 15:36
Hallo zusammen,

ich habe ein kleines Poblem und vielleicht den falschen Betreff gewählt :-(
Dieses Problem ist Versionsunabhängig, ich verwende aber Access 2000 od. höher.
Ich habe folgende Tabelle:
Felder:ObjektID (referenz auf Objekte) (Integer)
Index (indizierter Wert für Ratentext) (Integer)
Ratentext (Textwert) (Text)
Prozent (Zahlenwert in Prozent) (Double)
Es gibt je ObjektID max 13 DS. In meinem Formular gebe ich 13 Felder für Ratentext und ein korrespondierendes Auswahlfeld (Abruf1-13) an.
Jetzt würde ich gerne die nicht benötigten Felder (Abruf1..13) in einem Formular ausblenden.
Das ganze funktioniert mit einem Aufruf je Feld:

If Abruf1 = True Then
Me!Abruf1.Visible = False
End If
If Abruf2 ... usw.

das wollte ich in eine Schleife packen die etwa so aussehen sollte:
wobei CountRP die Anzahl der DS in der Tabelle ist

'For i = 1 To CountRP
' If Abruf(i) = True Then
' Me!Abruf(i).Visible = False
' End If
'Next

Mein Problem, wie weise ich den Feldern die Nummern zu, das ich für Me!Abruf(i) auch Me!Abruf1 etc. erhalte ? Sozusagen eine variable Feldzuweisung o.ä.
Stehe irgendwie auf'm Schlauch und hab bis jetzt nichts gefunden was mir helfen könnte.
Danke im voraus für alle Antworten.

StehtimSchilf
23.03.2004, 15:42
Hi Louisleon

For i = 1 To CountRP
Me.Controls("Abruf" & i ).Visible = Not Me.Controls("Abruf" & i).Value
Next

(UNGETESTST)

Gruz
SiS

Louisleon
23.03.2004, 16:03
Hey SIS,

dachte das hätte ich auch schon durch aber scheinbar muss ich wohl irgendwo was falsch gemacht haben. Also genialer Ansatz und funktionierende Lösung !
Hatte eine ähnliche Variante aber er hat mir immer das Feld angemotzt.

Was solls, thx !