를 사용 recordset.find. 전체 코드는 여기에 있습니다 :내가 일이 사소한 검색을 얻으려고 꽤 필사적 얻고 변수 VBA ADODB
Option Compare Database
Option Explicit
'Modul zum Updaten des Status eines Messmittels in der Stammdatenbank (Entnommen/Verfügbar)3
Public Function updateStatus()
Dim rst2 As ADODB.Recordset
Dim rst As ADODB.Recordset
Dim messID As String
Set rst = New ADODB.Recordset 'Stammdaten zur Bearbeitung öffnen
rst.ActiveConnection = CurrentProject.AccessConnection
rst.CursorType = adOpenKeyset
rst.LockType = adLockOptimistic
rst.Open "Stammdaten"
rst.MoveFirst
Set rst2 = New ADODB.Recordset 'zur Bearbeitung öffnen
rst2.ActiveConnection = CurrentProject.AccessConnection
rst2.CursorType = adOpenKeyset
rst2.LockType = adLockOptimistic
rst2.Open "Verwendung"
Do While Not rst.EOF
messID = rst!ID
Debug.Print messID
rst2.Find "ID = '" & messID & "'"
If rst2.EOF = True Then 'Falls nicht vorhanden
Debug.Print "Keine Verwendung gefunden!"
Else
rst2.Sort = "Nr DESC"
rst2.MoveFirst
Debug.Print rst2!Status
End If
rst.MoveNext
Loop
rst.Close
rst2.Close
End Function
무엇이 누락 되었습니까? 말 그대로 당신은 테이블 형 recorset을하고 키를 검색하는 diffrent 검색 문자열 :(
왜 당신이 검색하지 않는 TheSilkCode, 당신에게 개봉을 위해 ...
희망이 도움이 찾고 가치를 확실히 것이다 테이블 내에서 완전한 쿼리를 통해? ID, 액세스 테이블의 필드일까요? – jsanchezs
다음과 같이 말합니다 : rst2.source = "tablename에서 ID 선택 =" "& messID &" ' " – jsanchezs
죄송합니다. 액세스에 익숙하지 않아 액세스 버전이 독일어로되어 있습니다. 나는 고유 ID ("Stammdaten")를 포함하는 하나의 테이블을 가지고 있는데, 각 ID ("Verwendung")에 대해 여러 개의 항목이 들어있는 다른 테이블이 있습니다. 한 번에 하나의 ID에 대한 모든 항목을 가져와 이러한 항목을 정렬 한 다음 다른 테이블 (코드가 아닌)에 하나만 쓰면 조금 도움이됩니다. 쿼리를 사용하면 이후에 작동하지 않습니다. 각 ID에 대해 여러 항목이 있습니다. ( –