Access에서 Vb SQL 쿼리가 작동하지 않습니다.


-1

드롭 다운 메뉴에서 주어진 항목 아래에 항목 목록을 채우려 고합니다. 지금까지 나는 전체 테이블을 가져올 수 있습니다 :

여기에 드롭 다운 목록

그러나 나는 드롭 다운에서 선택한 그룹과 쿼리를 구문 분석 할 "WHERE"문에 적합하지 않습니다.

"WHERE"추가 할 때 빈 목록

이것은 작동하는 코드입니다.

Private Sub catBox_Change()
Dim SQL As String
SQL = "SELECT CatQuery.[Tool Name], CatQuery.Category " _
& "FROM CatQuery;"
Me.toolBox.RowSource = SQL
Me.toolBox.Requery
End Sub

이것은 작동하지 않는 코드입니다.

Private Sub catBox_Change()
Dim SQL As String
SQL = "SELECT CatQuery.[Tool Name], CatQuery.Category " _
& "FROM CatQuery" _
& "WHERE CatQuery.Category ='" & Me.toolBox.Column(0) & "';"
Me.toolBox.RowSource = SQL
Me.toolBox.Requery
End Sub

아마 Me.toolBox.Column(0) ""(공백 또는 null)로 평가합니다. 당신은 아마 확인해야합니다. Text 재산을 사용하거나 ItemsSelected 재산. 또한, 생성 된 문자열을 평가하는 쉬운 방법 ( SQL )는 값을 할당 한 직후에 중단 점을 넣은 다음 직접 실행 창을 사용하거나 마우스를 가리키면 끝점을 사용하여 인쇄합니다. 또한 사용해보십시오. Like 대신에 =. msdn.microsoft.com/en-us/vba/access-vba/articles/...
Yorik

답변:


0

SQL 문자열을 할당 한 후 확인 했습니까?

사이에 공백을 생략했습니다. FROM CatQueryWHERE...

시험:

SQL = "SELECT CatQuery.[Tool Name], CatQuery.Category" & vbNewLine & _
      "FROM CatQuery" & vbNewLine & _
      "WHERE CatQuery.Category = '" & Me.toolBox.Column(0) & "';"

안녕하세요 ThunderFrame. 불행히도 여전히 작동하지 않습니다.
Pucho

0

catbox_change 이벤트가 호출되면 toolbox 포커스가 없으므로 값이 없습니다. 컷 박스에서 값을 할당 할 수 있습니까?

Private Sub catBox_Change()
Dim SQL As String
SQL = "SELECT CatQuery.[Tool Name], CatQuery.Category " _
& "FROM CatQuery" _
& "WHERE CatQuery.Category ='" & Me.catBox.column(x) & "';"
Me.toolBox.RowSource = SQL
Me.toolBox.Requery
End Sub

그렇지 않다면 RowSource 다른 드롭 다운 목록에 할당 됨 toolBoxResult:

Private Sub catBox_Change()
Dim SQL As String
SQL = "SELECT CatQuery.[Tool Name], CatQuery.Category " _
& "FROM CatQuery" _
& "WHERE CatQuery.Category ='" & Me.toolBox.Column(0) & "';"
Me.toolBoxResult.RowSource = SQL
Me.toolBoxResult.Requery
End Sub

안녕. 더 자세히 설명해 주실 수 있습니까? 질문에 더 많은 세부 사항을 추가했습니다.
Pucho
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.