특정 ID가있는 레코드로 이동하려고합니다. ID로 레코드 찾기
나는이 게시물에 대한 해결책 시도 :여기 내 코드의 MS Access search for record by textbox instead of dropdown
하지만 성공을
Private Sub btnShowPrevious_Click()
Dim rs As DAO.Recordset
Set rs = Me.RecordsetClone
rs.FindFirst "[ID]=" & ParentID
If rs.NoMatch Then
MsgBox "Sorry, no such record '" & ParentID & "' was found.", _
vbOKOnly + vbInformation
Else
Me.Recordset.Bookmark = rs.Bookmark
End If
rs.Close
End Sub
그것은 항상 일치 히트 없지만 parentID = 1, ID 한 기록이있다 = 1 ..
누구나 잘못된 생각이 있습니까?
는레코드 원본이 테이블 감사 : 여기에 양식 속성의 스크린 샷이다
CREATE TABLE [dbo].[ProposalFollowUp](
[ID] [int] IDENTITY(1,1) NOT NULL,
[ProposalID] [int] NOT NULL,
[MillID] [int] NULL,
[ClientID] [int] NULL,
[Comment] [nvarchar](max) NULL,
[Method] [nvarchar](128) NULL,
[Contact] [int] NULL,
[ContactDate] [datetime] NULL,
[Done] [bit] NOT NULL,
[CreatedBy] [nvarchar](50) NULL,
[CreatedDate] [datetime] NULL,
[ModifiedBy] [nvarchar](50) NULL,
[ModifiedDate] [datetime] NULL,
[EAIEmployee] [nvarchar](50) NULL,
[PersonInCharge] [nvarchar](50) NULL,
[ParentID] [int] NULL,
마침내, 나는 탐색 모음을 표시하는 경우, I 거기에 필터가 있다는 것을 알 수 있습니다. 나는 필터를 제거하면 나는이
DoCmd.OpenForm "ProposalsFollowUp", , , "[ID] = " & txtID, acFormEdit, acDialog
같은 양식을 열 아마 때문에, 그것을 작동합니다.
좋아 여기 레코드를 보장하는 것은 당신이 어떠한 필터가 있는지 검색하는 데이터를 포함 분명 같은 모든 것을 확인한 후 최종 코드를
Private Sub btnShowPrevious_Click()
Dim parent As Integer
parent = ParentID
Me.Filter = ""
Dim rs As DAO.Recordset
Set rs = Me.RecordsetClone
rs.FindFirst "[ID]=" & parent
If rs.NoMatch Then
MsgBox "Sorry, no such record '" & parent & "' was found.", _
vbOKOnly + vbInformation
Else
Me.Recordset.Bookmark = rs.Bookmark
End If
rs.Close
End Sub
당신의 레코드 원본은 무엇입니까? – Fionnuala
감사합니다. 질문은 지금 업데이트됩니다. – Marc
샘플 SQL Server가 연결된 SQL Server 테이블에서 작동합니다. 어떻게 테이블을 연결했고 폼의 레코드 소스 속성은 무엇입니까? 어떤 필터있어? – Fionnuala