Suche | Statistiken | Benutzerliste | Access-FAQ | Datenschutz Foren
donkarl Forum
donkarl Forum ->  Themen -> Access -> Diskussion ansehen

Du bist als Gast eingelogt. ( Anmelden | Registrieren )
  • Access Stammtisch München am 09.10.2025 (Do) *** 2...
  • StefanWirrer07.10.25 09:35
       └ RE: Access Stammtisch München am 09.10.2025 (Do)... Karl Donaubauer07.10.25 12:56
          └ RE: Access Stammtisch München am 09.10.2025 (D... StefanWirrer13.10.25 16:31
  • Bug mit rs.findfirst, rs.findnext, rs.findprevi...
  • TomT06.10.25 14:49
       └ RE: Bug mit rs.findfirst, rs.findnext, rs.findpr... Karl Donaubauer06.10.25 17:26
          └ RE: Bug mit rs.findfirst, rs.findnext, rs.find... TomT07.10.25 12:10
  • Probleme bei Umstellung auf 64-Bit (Access – Berec...
  • ASummer16.09.25 09:06
       └ RE: Probleme bei Umstellung auf 64-Bit (Access –... PeterDoering16.09.25 10:54
          └ RE: Probleme bei Umstellung auf 64-Bit (Access... ASummer16.09.25 11:22
             └ RE: Probleme bei Umstellung auf 64-Bit (Acce... PeterDoering16.09.25 11:47
                └ RE: Probleme bei Umstellung auf 64-Bit (Ac... ASummer17.09.25 08:33
                   └ RE: Probleme bei Umstellung auf 64-Bit (... Karl Donaubauer19.09.25 21:57
       └ RE: Probleme bei Umstellung auf 64-Bit (Access –... Karl Donaubauer22.09.25 12:05
  • Fehler im VBA Code für HTML Email-Versand
  • Mononoke_Hime17.09.25 11:58
       └ RE: Fehler im VBA Code für HTML Email-Versand Karl Donaubauer17.09.25 13:02
          └ RE: Fehler im VBA Code für HTML Email-Versand Mononoke_Hime19.09.25 11:09
             └ RE: Fehler im VBA Code für HTML Email-Versand Karl Donaubauer19.09.25 12:02
  • RegEx-Problem nach neustem Access Update
  • Budgie16.09.25 12:25
       └ RE: RegEx-Problem nach neustem Access Update Karl Donaubauer16.09.25 14:14
          └ RE: RegEx-Problem nach neustem Access Update Budgie16.09.25 14:37
             └ RE: RegEx-Problem nach neustem Access Update Karl Donaubauer16.09.25 15:18
          └ RE: RegEx-Problem nach neustem Access Update Budgie16.09.25 15:32
             └ RE: RegEx-Problem nach neustem Access Update Karl Donaubauer16.09.25 17:50
                └ RE: RegEx-Problem nach neustem Access Update Budgie17.09.25 08:35
                   └ RE: RegEx-Problem nach neustem Access Update Karl Donaubauer17.09.25 10:51
  • FldListMouseMove
  • ThW16.09.25 11:28
       └ RE: FldListMouseMove PhilS16.09.25 12:04
          └ RE: FldListMouseMove ThW16.09.25 17:30
  • ERINNERUNG an Sonderveranstaltung: KI trifft Acces...
  • KlausWerther15.09.25 21:10
  • Access 365 mit Common-Controls
  • TeO7412.09.25 16:00
       └ RE: Access 365 mit Common-Controls TeO7412.09.25 21:43
  • Access Stammtisch München am 11.09.2025 (Do)
  • StefanWirrer09.09.25 09:13
  • Nicht nachvollziehbares Verhalten von Forms
  • Jörn02.09.25 16:23
       └ RE: Nicht nachvollziehbares Verhalten von Forms PeterDoering04.09.25 18:09
          └ RE: Nicht nachvollziehbares Verhalten von Forms Jörn06.09.25 13:52
             └ RE: Nicht nachvollziehbares Verhalten von Forms PeterDoering07.09.25 18:13
  • VBA: E-Mail senden über freigegebenens Postfach
  • s.henke05.09.25 21:12
       └ RE: VBA: E-Mail senden über freigegebenens Postf... Karl Donaubauer05.09.25 22:49
  • Syntaxfehler in Function
  • Mononoke_Hime28.08.25 14:28
       └ RE: Syntaxfehler in Function Karl Donaubauer28.08.25 18:16
  • Automatisches Füllen von Feldern aus verschiedenen...
  • Mononoke_Hime27.08.25 10:26
       └ RE: Automatisches Füllen von Feldern aus verschi... Mononoke_Hime27.08.25 10:58
  • Sonderveranstaltung: KI trifft Access – 18. Access...
  • KlausWerther21.08.25 12:55
  • Reminder zum 17. Access-Stammtisch Hannover Online...
  • KlausWerther20.08.25 11:31
    TomT
    Gesendet: 06.10.25 14:49
    Betreff: Bug mit rs.findfirst, rs.findnext, rs.findprevious


    New user

    Beiträge: 2

    Hallo allseits

    Nach vielen Jahren Erfahrung mit MS Access, bin ich auf einen mir bisher gänzlich unbekannten Bug gestossen. Ich habe keine diesbezügliche Dokumentation im Web gefunden; kann mich natürlich täuschen. Oder kennt jemand eine entsprechende Dok? Soll ich den Bug irgendwo "offiziell" deponieren?

    Es geht um rs.FindFirst, rs.FindNext, rs.FindPrevious beim Suchen mit Strings die Hochkommata enthalten.

    Zusammenfassend: Wenn in einem DAO.Recordset, das mit dbOpenDynaset geöffnet wurde, mittels .FindFirst oder .FindNext oder .FindPrevious gesucht wird, und zwar mit einem Suchstring, der ein oder mehrere Hochkommata enthält, und wenn ausserdem das Such-Feld indexiert ist, dann funktioniert rs.FindFirst etc  nicht; ein eigentlich vorhandener Datensatz wird nicht gefunden!

    Wenn eines der Kriterien nicht erfüllt ist, also z.B. wenn dbOpenSnapshot statt dbOpenDynaset, wenn der Suchstring kein Hochkomma enthält, wenn das Such-Feld nicht indexiert ist, dann funktioniert .FindFirst etc. tiptop. 

    Hinweise: Selbstverständlich muss im Suchstring das Hochkomma verdoppelt sein, also so etwas "ABC''DEF". Ich habe nur DAO.Recordset getestet. Mein Test mit rs.findprevious ist unten nicht abgebildet. 

    Mich interessiert Eure Meinung dazu, vielen Dank.

     

    Hier mein Test (Auszug) zur Dokumentation:

    --------------------------------------------------------------------------------------------------

    Public Sub TESTFindFirst()


    Dim rs As DAO.Recordset

    ' Ausgangslage:

    ' Tabelle "MeineTabelleT", zwei Records, drei Felder, wie folgt:

    ' Felder:
    ' ID MeinFeldIndexiert MeinFeldNichtIndexiert

    ' Inhalte:
    ' 1 TestWert1a TestWert1b
    ' 2 TestWert'2a TestWert'2b         Beachte: Die Felder enthalten Strings mit Hochkommata.


    ' Zur Kontrolle mit DLookup: Ergebnis: DLookupfunktioniert tadellos
    Debug.Print DLookup("ID", "MeineTabelleT", "MeinFeldIndexiert = 'TestWert''2a'" ' ergibt den Wert 2, weil ID = 2
    Debug.Print DLookup("ID", "MeineTabelleT", "MeinFeldNichtIndexiert = 'TestWert''2b'" ' ergibt den Wert 2, weil ID = 2

    ' nun mit FindFirst

    ' --------------------
    ' a) mit dbOpenSnapshot: Alle .findfirst-Fälle bringen korrekte Ergebnisse!

    Set rs = CurrentDb.OpenRecordset("MeineTabelleT", dbOpenSnapshot)
    rs.FindFirst "MeinFeldIndexiert = 'TestWert1a'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt

    rs.FindFirst "MeinFeldNichtIndexiert = 'TestWert1b'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt

    rs.FindFirst "MeinFeldIndexiert = 'TestWert''2a'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt

    rs.FindFirst "MeinFeldNichtIndexiert = 'TestWert''2b'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt

    ' --------------------
    ' b) nun mit dbOpendynaset

    Set rs = CurrentDb.OpenRecordset("MeineTabelleT", dbOpenDynaset)
    rs.FindFirst "MeinFeldIndexiert = 'TestWert1a'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt, weil kein Hochkomma im Suchstring

    rs.FindFirst "MeinFeldNichtIndexiert = 'TestWert1b'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt, weil kein Hochkomma im Suchstring

    ' !!!!!!!!!!!!!!!!!!!!!!!! BUG!
    rs.FindFirst "MeinFeldIndexiert = 'TestWert''2a'"
    Debug.Print rs.NoMatch ' ergibt WAHR, also NoMatch, was NICHT KORREKT ist. !!!!!!!!!!!!!!!!!!!
    ' !!!!!!!!!!!!!!!!!!!!!!!!

    rs.FindFirst "MeinFeldNichtIndexiert = 'TestWert''2b'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt, weil Feld nicht indexiert ist.

    ' -------------------------------
    ' Tests mit FindNext? Ebenfalls Buggy!
    Set rs = CurrentDb.OpenRecordset("MeineTabelleT", dbOpenDynaset)

    ' !!!!!!!!!!!!!!!!!!!!!!!! BUG, also auch mitFindNext!
    rs.FindFirst "ID = 1"
    rs.FindNext "MeinFeldIndexiert = 'TestWert''2a'"
    Debug.Print rs.NoMatch ' ergibt WAHR, also NoMatch, was NICHT KORREKT ist. !!!!!!!!!!!!!!!!!!!
    ' !!!!!!!!!!!!!!!!!!!!!!!!

    rs.FindFirst "ID = 1"
    rs.FindNext "MeinFeldNichtIndexiert = 'TestWert''2b'"
    Debug.Print rs.NoMatch ' ergibt FALSE, korrekt, weil Feld nicht indexiert ist.

    End Sub

    Top of the page Bottom of the page


    Seite: < 1 2 3 4 5 6 7 ... >
    Suche in diesem Forum
    Druckfreundliche Version
    (Alle Cookies von dieser Seite löschen.)