Moin Moin Ralf,
Option Compare Database
Option Explicit
Private Sub Form_Load()
Dim Sqlstring As String
immer alle DIM Anweisungen ins SUB
Disziplin = 1
Call Disziplin_Change
auch CALL kannst du dir sparen
End Sub
Private Sub Disziplin_Change()
Sqlstring = "select Teilnehmer, Schütze, genullt,
disziplin " & _
"from VM_genullt " & _
"where disziplin = " & Disziplin
Me!Schütze.Rowsource = Sqlstring
Me!Schütze.Requery
End Sub
Disziplin ist das Feld für die Mengeneinschränkung, Schütze
mein Problemkind. Und nun?
Option Compare Database
Option Explicit
meine Variante:
Private Sub Form_Load()
Dim Sqlstring As String
Sqlstring = „select Teilnehmer, Schütze, genullt,
disziplin from VM_genullt " & _
where disziplin = 1“
Me!X_Schütze.Rowsource = Sqlstring
Me!X_Schütze.Requery
End Sub
Was mich aber viel mehr beunruhigt, ist, dass ich auf Schütze
nicht positionieren kann. Wenn ich einen auswähle, bekomme ich
immer den ersten aus der Teilmenge gezeigt.
ich vermute mal, dass das Formular auch auf VM_genullt basiert?
D.h. du versuchst eine rekursive Funktion aufgerufen. Ist die Anzeige im Formular abhängig von der Auswahl im Kombifeld Schütze?
Das Feld Schütze ist in beiden Rowsourcen vorhanden und führt so zu Problemen. In meinem Beispiel habe ich das Formularfeld entsprechend umbenannt.
Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)