2017-10-18 2 views
0

Wie kann ich mit dem folgenden Code die Zeilennummer für einen Benutzer erhalten, der die Variable usern verwendet? Ich kann prüfen, ob ein Benutzer existiert mit der DCount Funktion, wie zu sehen ist. Sobald ich die Zeilennummer erhalten habe, möchte ich sie verwenden, um mit DoCmd.GoToRecord zu diesem Eintrag zu navigieren. GoToRecord selbst funktioniert schon. Ich kann einfach nicht einen Weg finden, die Zeilennummer zu erhalten ...Zugriff - VBA - Zeilennummer nach Kriterien abrufen

Private Sub Form_Current() 

Dim usern As String 
Dim count As Integer 

usern = Environ("Username") 

count = DCount("name_", "Fragebogen", "name_='" & usern & "'") 

DoCmd.GoToRecord acDataForm, "Fragebogen", acGoTo, 3 

End Sub 

Antwort

1

Haben Sie versucht, die FindFirst Methode?

den ersten Datensatz in einem dynaset - oder - Schnappschuss-Typ-Cord Objekt, das die festgelegten Kriterien und stellt den Datensatz die aktuellen Datensatz erfüllt.

Dim rs As Recordset 
Set rs = Me.RecordsetClone 

rs.FindFirst "name_ = '" & Environ("Username") & "'" 

If Not rs.NoMatch Then 
    Me.Bookmark = rs.Bookmark 
Else 
    MsgBox "No match was found.", vbExclamation 
Emd If 
+1

Ich habe gerade eine ähnliche Antwort geschrieben. Fügen Sie das 'Me.Bookmark = rs.Bookmark' hinzu, um zum Datensatz zu navigieren, dann ist Ihre Antwort vollständig. –

+0

@Erik von Asmuth In der Tat, vielen Dank, dass Sie darauf hingewiesen haben. –

+0

Hinzufügen Ihres Me.Bookmark und es funktioniert wie ein Charme. Danke Jungs! Sehr geschätzt – user969113