여러 범주와 하위 범주가있는 폼을 만들려고합니다.액세스 2007에서 서로를 드롭 다운 목록으로 연결하고 싶습니다.
첫 번째 드롭 다운 (기본 카테고리)에서 선택되는 것과 두 번째 (하위 카테고리)에 표시되는 것 사이의 관계를 만들 수있는 방법이 있습니까?
모든 하위 카테고리를 한꺼번에 나열하고 싶지 않습니다. 메인 카테고리에서 선택한 지정된 것과 관련된 것들만 필요합니다 ....
고마워요!
여러 범주와 하위 범주가있는 폼을 만들려고합니다.액세스 2007에서 서로를 드롭 다운 목록으로 연결하고 싶습니다.
첫 번째 드롭 다운 (기본 카테고리)에서 선택되는 것과 두 번째 (하위 카테고리)에 표시되는 것 사이의 관계를 만들 수있는 방법이 있습니까?
모든 하위 카테고리를 한꺼번에 나열하고 싶지 않습니다. 메인 카테고리에서 선택한 지정된 것과 관련된 것들만 필요합니다 ....
고마워요!
이것은 가장 자주 묻는 액세스 질문 중 하나입니다.
접근법 1 :에서 두번째 콤보 박스의 절, 기준으로서 제 콤보 박스에 대한 참조를 사용
PARAMETERS [Forms]![MyForm]![cmbCategories] Long;
SELECT SubCategory
FROM tblSubCategories
WHERE CategoryID = [Forms]![MyForm]![cmbCategories]
ORDER BY SubCategory;
(그것은 매개 변수로 제어 기준을 정의하는 것이 중요 두 번째 다시 쿼리 첫 번째 콤보 상자의 AfterUpdate 이벤트에서,
다음) 97 이후 버전의 Access는 액세스의 해당 버전은 97과 동일한 방법으로 널 (null)을 처리하지 못하기 때문에 전에 그랬어 :
Private Sub cmbCategories_AfterUpdate()
Me!cmbSubCategories.Requery
End Sub
접근법 2 : 대신, 처음에 대한 참조를 포함하는 첫 번째 콤보 상자의 대한 AfterUpdate에 즉시의 행 원본을 작성하는 두 번째 콤보 상자의 행 원본을 하드와 이어링의 : 나는를하는 경향
Private Sub cmbCategories_AfterUpdate()
Dim strRowsource As String
strRowsource = "SELECT SubCategory FROM tblSubCategories WHERE CategoryID = "
strRowsource = strRowsource & Me!cmbCategories
strRowsource = strRowsource & " ORDER BY SubCategory;"
Me!cmbSubCategories.Rowsource = strRowsource
End Sub
을 후자는 첫 번째 콤보 상자로 필터링하는 것 외에도 다른 작업을 수행해야하기 때문에 대부분의 사람들이 첫 번째 방법을 사용하는 것이 더 쉽습니다.
+1 Leacha가 도움이 될 것으로 확신합니다. – Fionnuala
콤보 상자라고도합니다. –