2017-12-04 9 views
0

저는 Microsoft, Stackoverflow, techinthenet.com 및 기타 여러 항목에서이 문제를 검색해 보았습니다.다른 콤보 상자를 선택했을 때 두 개의 콤보 상자를 채우려 고 시도했습니다

나는 cboTrainee_Name의 선택에 따라 채울 두 개의 콤보 상자 (cboCourse 및 cboVols)를 얻으려고합니다. 첫 번째 콤보 상자에 대한 코드는 다음과 같습니다 내가 검색 한 모든 곳

SELECT DISTINCT [qryBooks].[PName] FROM qryBooks WHERE qryBooks.Complete=No ORDER BY [qryBooks].[PName]; 

첫 번째 콤보 상자, 처음에 선택한 항목에 따라 다음 두 번째 콤보 상자를 채우는 지원 및 샘플을 제공합니다. 같은 쿼리 결과에 따라 채우기 위해 cboCourse와 cboVols가 모두 필요합니다. 내가 지금까지 가지고있는 것 :

이것은 cboCourse에서 작동하지만 cboVols는 채워지지 않습니다. 나는 간단한 설명이 있어야한다는 것을 알고있다. 어떤 제안?

ADDED! 쿼리의 각 열에 동일한 데이터의 여러 인스턴스가 포함되어 있으므로 SELECT DISTINCT를 사용했습니다.

답변

0

SQL에 문제가 없습니다. cboTrainee_Name가 변경된 후

당신은 그들이 새로 얻기 위해 두 콤보 상자에 다시 쿼리 메서드를 호출해야 할 수도 있습니다 : 당신이 이것에 대한 코드의 RowSource 속성을 설정할 필요가 없습니다

cboCourse.Requery 
cboVol.Requery 

주 작업. RowSource 속성에있는대로 SQL 문을 연결하고 cboTrainee_Name 콤보 상자의 AfterUpdate 이벤트에있는 종속 콤보 상자의 Requery 메서드 만 연결할 수 있어야합니다.

+0

각 cbo의 RowSource 아래에 SELECT 문을 배치하고 cboTrainee_Name AfterUpdate 이벤트에 쿼리 문을 연결했습니다. 그것은 여전히 ​​똑같은 일을합니다. 필요에 따라 cboCourse를 채우고 새로 고치지 만 cboVol에는 데이터가 없습니다. – Wingrider

+0

선택한 Trainee_Name에 대한 qryBooks 쿼리가없는 것이 가능합니까? –

+0

또한 cboVol의 바운드 열, 열 개수 및 열 너비 설정과 cboCourse의 바운드 열, 열 수 및 열 너비 설정을 다시 확인하십시오. 서식 설정으로 인해 표시되지 않는 기본 데이터가있을 수 있습니다. 두 개의 콤보 상자를 비교할 수 있지만 단축키로 cboVol을 삭제하고 cboCourse를 복사하여 붙여넣고 컨트롤 이름과 RowSource 속성을 변경하십시오. –