Quantcast
Channel: Microsoft Access Forum
Viewing all articles
Browse latest Browse all 880

Fehler bei FindFirst => Keine zulässige Testmarke

$
0
0

Hallo Leute,

seit kurzem erhalte ich bei einem seit Jahren laufenden Code die Fehlermeldung: Keine zulässige Textmarke. Der Fehler tritt an folgender Stelle auf:

Set rstESt = dbs.OpenRecordset("ÜBogen_ESt", dbOpenDynaset)
' Ersten übereinstimmenden Datensatz suchen.

    rstESt.FindFirst strKriterien

Die gesamte Funktion sieht wie folgt aus:

Public Sub Aufbau_Überwachungsbogen(ByVal varÜNr As Long, ByVal varJahr As Long, Optional blnHinweismeldung As Boolean = True)

Dim dbs As Database, rstUSt As Recordset, rstUst_VJ As Recordset, rstESt As Recordset, rstLSt As Recordset, rstLSt_VJ As Recordset
Dim strKriterien As String, strKriterien_VJ As String
Dim varFrage As Integer


'varÜNr = Forms![Aufruf Überwachungsbogen].ÜNr
'varJahr = Forms![Aufruf Überwachungsbogen].Jahr

Anfang:

' Verweis auf aktuelle Datenbank holen.
Set dbs = CurrentDb
' Suchkriterien definieren.
strKriterien = "[ÜBogenNr] = " & varÜNr & " And [Jahr] = " & varJahr
strKriterien_VJ = "[ÜBogenNr] = " & varÜNr & " And [Jahr] = " & (varJahr - 1)
' Recordset-Objekt vom Typ Dynaset erstellen, das auf der Tabelle
' "Bestellungen" basiert.
Set rstUSt = dbs.OpenRecordset("ÜBogen_USt", dbOpenDynaset)
Set rstUst_VJ = dbs.OpenRecordset("ÜBogen_USt", dbOpenDynaset)
' Ersten übereinstimmenden Datensatz suchen.

    rstUSt.FindFirst strKriterien
    rstUst_VJ.FindFirst strKriterien_VJ
    ' Prüfen, ob der Datensatz gefunden wurde.
    If rstUSt.NoMatch Then
        rstUSt.AddNew
        rstUSt!ÜBogenNr = varÜNr
        rstUSt!Jahr = varJahr

        If rstUst_VJ.NoMatch = False Then
            rstUSt!Überschrift1 = rstUst_VJ!Überschrift1
            rstUSt!Überschrift2 = rstUst_VJ!Überschrift2
            rstUSt!Überschrift3 = rstUst_VJ!Überschrift3
            rstUSt!Überschrift4 = rstUst_VJ!Überschrift4
            rstUSt!Überschrift5 = rstUst_VJ!Überschrift5
            rstUSt!Dauerfristverlängerung = rstUst_VJ!Dauerfristverlängerung
            rstUSt!Intervall = rstUst_VJ!Intervall
            rstUSt!Istversteuerung = rstUst_VJ!Istversteuerung
            rstUSt!ZM_Intervall = rstUst_VJ!ZM_Intervall
            rstUSt!Spalten = rstUst_VJ!Spalten
        End If
        rstUSt.Update

    End If

Set rstESt = dbs.OpenRecordset("ÜBogen_ESt", dbOpenDynaset)
' Ersten übereinstimmenden Datensatz suchen.

    rstESt.FindFirst strKriterien
    ' Prüfen, ob der Datensatz gefunden wurde.
    If rstESt.NoMatch Then
        rstESt.AddNew
        rstESt!ÜBogenNr = varÜNr
        rstESt!Jahr = varJahr
        rstESt.Update
        If blnHinweismeldung = True Then MsgBox "Achtung: Die Vorauszahlungen für ESt./KSt. und GewSt. sind manuell nachzutragen !!", vbCritical
    End If

Set rstLSt = dbs.OpenRecordset("ÜBogen_LSt", dbOpenDynaset)
Set rstLSt_VJ = dbs.OpenRecordset("ÜBogen_LSt", dbOpenDynaset)

' Ersten übereinstimmenden Datensatz suchen.

    rstLSt.FindFirst strKriterien
    rstLSt_VJ.FindFirst strKriterien_VJ

    ' Prüfen, ob der Datensatz gefunden wurde.
    If rstLSt.NoMatch Then
        rstLSt.AddNew
        rstLSt!ÜBogenNr = varÜNr
        rstLSt!Jahr = varJahr

        If rstLSt_VJ.NoMatch = False Then
            rstLSt!Intervall = rstLSt_VJ!Intervall
        End If

        rstLSt.Update
    End If


    rstUSt.Close
    rstUst_VJ.Close
    rstESt.Close
    rstLSt.Close
    rstLSt_VJ.Close

    dbs.Close

    Set dbs = Nothing
    Set rstUSt = Nothing
    Set rstUst_VJ = Nothing
    Set rstESt = Nothing
    Set rstLSt = Nothing

End Sub

Alle anderen FindFirst funktionieren einwandfrei.

Was kann denn da passiert sein?
Die Tabelle ist definitiv erreichbar.

Ich bin da echt ratlos.

Ich bin für jede Hilfe dankbar.

Gruß Ahmed


Viewing all articles
Browse latest Browse all 880


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>