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

rs.moveNext funktioniert nicht.

$
0
0

Hallo,Freunde der VBA Programmierung:  Ich arbeite immernoch an meiner kleinen Sprachen (fInnisch-Lernen.mdb)

Meine Frage,  ich möchte eine Tabelle schnell durchsuchen können ohne umständlich auf Docmd und goto Record zurück zu greifen.(DoCmd.GoToRecord , , acNext     'nächste Zeile)  das ist sehr langsam.

stattdessen ist die Rs.Move... Methode sehr schnell. leider funktioniert das nicht so wie gedacht. mit rs.moveNext

Ich habe gerade nochmal bevor ich das hier veröffentlich getestet. es scheint so zu sein, dass die Funktion rs.MoveNext nicht funktioniert. der Zähler springt irgend wo hin aber nicht dahin, wo man denkt. ???

Wer hier eine gute Idee hat, Hilfe wird gerne angenommen.

Private Sub Text134_DblClick(Cancel As Integer)
'Schnelle Suche in Finnisch
'DoCmd.GoToRecord , , acGoTo, 1
         Dim db As Database                                  ' Datenbank
         Dim rs As Recordset                                  ' Tabelle
         'Dim Feldname As Field                        ' Feldname  Diese Zeile habe ich heraus genommen verstehe den Syntax nicht.
         Dim Es As Integer                                      ' Erster Satz
         Dim Ls As Integer                                      'Letzter Satz
         Dim Cs As Integer                                      'Current Dat
         Dim Fm As String                                       'Merken inhalt von Finnisch
         Fm = Finnisch                                            'Merker
         Dim V1 As String
         'V1 = Finnisch                                      'Inhalt von  Finnisch nach V1
         Dim V2 As String                                   ' Suchargument als String
         V2 = Text134                                       'Suchargument aus textfeld 134
 
    Set db = CurrentDb                                          ' oder DatenPfad der DB
    Set rs = db.OpenRecordset("TB1")                   'TB1 ist Name der Tabelle
       Es = rs![Satz]                                'Erster Satz Numme
       'Es = Satz
     
        rs.MoveLast                                      'gehe zu letzten Satz und setzte Ls
        Ls = rs![Satz]                                    '[Satz ]Nummer (Record Nummer Autnummerfield)
       
             rs.MoveFirst                                'gehe zu ersten Satz  Es ist ja Satz 1
             Es = Satz
             Cs = Satz                                     ' Cs der Current Satz  im Test  musste der Wert mit Null beginnen.
   
   'Do While Not rs.EOF                             ' kann man machen geht aber auch mit stop on Ls
    
   Do While Cs <> Ls
     
                  rs.MoveNext
                  Cs = Cs + 1
                  V1 = rs![Finnisch]
                                              
                  'Finnisch = V1                    'V2 neuer Vergleich
                    V1 = Finnisch
                  
                  If V1 = V2 Then GoTo Gefunden        ' wenn gleich dann halt goto Ende
                   If Cs = Ls Then GoTo DEnde        ' Nicht gefunden Vergleich currentSatz  mit letzter Satz
                  
                   If Cs = 10 Then GoTo Test1        'hier sollte der Vergleich gefunden sein Cs =10
                   
       Loop
       
Test1:

      MsgBox "Cs ist 10  erreicht , nicht gefunden --->" & Cs
       
                   rs.Close
                   
Gefunden:
            DoCmd.GoToRecord , , acGoTo, 1
          
              Finnisch = Fm                  'Speichert Inhalt von recht nach links

                                                     'stellt den Inhalt ursprünglich wieder in Zeile eins her.

        
 DoCmd.GoToRecord , , acGoTo, Cs        'sollte zum Satz springen in dem der Vergleich gefunden war.  Syntax versteht Cs nicht ?
             
            MsgBox "Gefunden " & V1 & Cs

            
                GoTo Ende
                   
DEnde:         MsgBox "Datei Ende erreicht , nicht gefunden --->" & Ls

Ende:
End Sub



Viewing all articles
Browse latest Browse all 880

Trending Articles



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