나는 이것이 아마 뭔가 간단한 것 같아서 미리 사과드립니다. 이것은 실제로 처음으로 VBA를 쓰는 나의 처음이고 나는 간단하게 고치는 방법의 주위에 나의 머리를 얻을 수없는 문제에왔다. 나는 여러 가지를 수색하고 시도했지만, 내가 시도해도 아무리 똑같은 문제가있다.런타임 오류 13 형식 불일치 VBA 액세스 2007
새로운 레코드 세트를 열어 SQL을 사용하는 다른 테이블의 값으로 채우고 레코드 세트에서 값을 검색 한 다음 양식의 일부 레이블에 캡션을 설정하기 만하면됩니다. 내 코드 :
Dim oconStudents As ADODB.Connection
Dim orsStudents As ADODB.Recordset
Dim strStudentsSQL As String
Set oconStudents = CurrentProject.AccessConnection
Set orsStudents = New ADODB.Recordset
Set strGetCustIDSQL = _
"SELECT [CustomerID] FROM [Students Classes] WHERE [Class ID] = " & _
Me.txtClassID.Value & ";"
orsStudents.Open strGetCustIDSQL, oconStudents, adOpenForwardOnly, _
adLockReadOnly, adCmdTable
With orsStudents
If Not orsStudents.EOF Then
lblStudent1.Caption = orsStudents.Fields.Item(0)
orsStudents.MoveNext
End If
End With
나는 이것을 실행하고 나는이 라인 런타임 오류 13 얻을 :
Set strGetCustIDSQL = _
"SELECT [CustomerID] FROM [Students Classes] WHERE [Class ID] = " & _
Me.txtClassID.Value & ";"
나는 내 인생이 이유를 알아낼 수 없기 때문. 쿼리에서 SQL을 실행하면 내 값이 올바르게 반환됩니다. adCmdTable을 adCmdText로 변경했으며 "#"기호뿐만 아니라 SQL 문자열의 Me.txtClassID.Value 섹션 주위에 다른 문자를 추가하려고했습니다. SQL 문자열 위로 마우스를 가져 가면 올바른 "클래스 ID ="값 (이 경우 "2")을 볼 수 있지만 SQL 문자열 위로 마우스를 가져 가면 "= 비어있는"것으로 표시됩니다.
내가 알아 차리지 못하는 것은 무엇입니까? 미리 도움을 주셔서 감사합니다!
멋진. 나는 그것이 단순해야만한다는 것을 알았다. 분명히 그 얼굴은 하나뿐입니다. 고마워요! – Eyowzitgoin