Hallo zusammen,
habe folgendes Problem:
Ich habe eine [Ereignisprozedur] für eine ComboBox geschrieben, die bei Änderung ausgelöst wird (Siehe Code unten).
Ich erhalte immer den Laufzeitfehler '2110': Der Fokus kann von Microsoft Access nicht auf das Steuerelement txt.einzelpreis verschoben werden.
Kommentiere ich die betreffende Zeile aus, bekomme ich den Fehler, dass ich nur auf Steuerelemente zugreifen kann, die den Focus haben.
Wie komme ich aus dieser Zwickmühle, was muss ich an meinem Code verändern?
Vielen Dank für Eure Hilfe :D
Private Sub cmbWare_Change()
Dim db As Database
Dim rs As Recordset
Dim WarenNr As Integer
Dim EP As Currency
Set db = CurrentDb
WarenNr = cmbWare.Value
Set rs = db.OpenRecordset("SELECT * FROM Preis, Ware WHERE WaNr=Wa_Nr AND Wa_Nr=" & WarenNr)
If rs.EOF = False Then
EP = rs![Pr_Betrag]
Else
EP = 0
End If
txt_einzelpreis.SetFocus
txt_einzelpreis.Text = EP
End Sub
Solange die Prozedur cmbWare_Change durchlaufen wird, ist cmbWare noch im Focus.
Lösungsvorschlag:
Die Anweisung
txt_einzelpreis.Value = EP
erfordert keinen Fokus auf txt_einzelpreis.
Vielen Dank für die Hilfe, jetzt funktioniert es! :D