2010-07-22 1 views
2

두 개의 테이블 (트랜잭션 용)과 기본 테이블 인 다른 테이블은 첫 번째 테이블의 외래 키입니다.이 관계 위치를 트랜잭션과 간단히 연결합니다.MS Access 2007 - 목록 상자에서 값을 순환하여 SQL 문에 대한 ID를 가져 오는 것

모든 가능한 위치를 보여주는 목록 상자가있는 양식이있어서 사용자는 주어진 위치에만 관련된 대시 보드 양식을 열 수 있습니다. 따라서 선택 항목의 데이터를 대시 보드로 전달하는 방법을 알고 있지만 이제는 사용자가 첫 번째 목록에서 여러 위치를 선택할 수있는 기능을 갖기를 바랍니다. 나는 SQL 문을 사용하는 경우

그래서 WHERE 절은

.... WHERE LocationID = " & me.lstLocations.value & ";" 

하지만 어떻게 내가 여러 선택을 선택하는 방법의 유형을 동일시 것 같다? 나는 어떤 종류의 루프가 나를 도망칩니다 확신합니다. 당신은

WHERE LocationID IN (" & listofvalues & ");" 

목록 사용할 수 있습니다

감사 저스틴

답변

6

은과 같이 얻을 수 있습니다

이 숫자 목록입니다
For Each itm In Me.ListBox.ItemsSelected 
    listofvalues = listofvalues & "," & Me.ListBox.Column(0, itm) 
Next 

listofvalues = Mid(listofvalues,2) 

는 문자열 목록은 따옴표를 필요로한다.

+0

@Remou .... 첫 번째 예는 두 번째 것처럼 선택한 것만 나타낼 것입니까? 언제나처럼 Remou 감사합니다! – Justin

+0

@Remou .... 또한 두 번째 예제를 사용하는 경우 열 너비가 0으로 설정된 목록 상자에서 ID 값을 숨기고 있습니다 ....이 실제로 적용되지 않습니다, 맞습니까? – Justin

+0

열 너비가 중요하지 않습니다. 여기에는 SQL 문과 해당 문에 대한 IN 목록을 가져 오는 방법이 하나뿐입니다. – Fionnuala