Applies ToMicrosoft 365용 Access Access 2024 Access 2021 Access 2019 Access 2016

Access에서 쿼리를 실행할 때마다 입력을 요청하는 쿼리를 원하는 경우 매개 변수 쿼리를 만들 수 있습니다.

쿼리, 폼 또는 보고서에 대해 반환되는 레코드를 제한하는 데 사용할 매개 변수 값을 수집하는 양식도 만들 수 있습니다. 이 문서에서는 폼을 사용하여 쿼리, 폼 및 보고서의 매개 변수 사용을 향상하는 방법을 설명합니다.

이 문서의 내용

개요

Access에서 매개 변수 쿼리에 조건을 사용하여 쿼리가 반환하는 레코드 집합을 제한할 수 있습니다. 매개 변수 쿼리에서 제공하는 대화 상자가 목적에 불충분하다고 생각할 수 있습니다. 이 경우 매개 변수 컬렉션 요구 사항을 더 잘 충족하는 폼을 만들 수 있습니다. 이 문서에서는 쿼리 및 보고서 매개 변수를 수집하는 폼을 만드는 방법을 설명합니다. 이 문서에서는 사용자가 쿼리를 만들고 쿼리의 매개 변수를 정의하는 데 익숙하다고 가정합니다. 계속하려면 최소한 선택 쿼리를 만드는 데는 익숙해야 합니다.

이 문서에서는 쿼리에 매개 변수를 사용하는 예제를 제공합니다. 그러나 조건 지정에 대한 포괄적인 참조를 제공하지는 않습니다.

쿼리에 매개 변수 사용

쿼리에 매개 변수를 사용하는 것은 조건을 사용하는 쿼리를 만드는 것만큼 쉽습니다. 부품 번호와 같은 정보 한 조각 또는 두 개의 날짜와 같은 한 조각 이상의 정보를 묻도록 쿼리를 디자인할 수 있습니다. 각 매개 변수에 대해 매개 변수 쿼리는 해당 매개 변수의 값을 묻는 별도의 대화 상자를 표시합니다.

쿼리에 매개 변수 추가

  1. 선택 쿼리를 만든 다음 디자인 보기에서 해당 쿼리를 엽니다.

  2. 매개 변수를 적용할 필드의 조건 행에 매개 변수 대화 상자에 표시할 텍스트를 대괄호로 묶어 입력합니다. 예를 들면 다음과 같습니다.

    [Start Date]

    매개 변수 쿼리를 실행하면 메시지가 대괄호 없이 대화 상자에 나타납니다.

    매개 변수 프롬프트에 식을 사용할 수도 있습니다. 예를 들면 다음과 같습니다.

    Between [Start Date] And [End Date]

    참고: 각 매개 변수 프롬프트에 대한 별도의 대화 상자가 나타납니다. 두 번째 예제에서는 Start Date에 대한 대화 상자와 End Date에 대한 대화 상자 이렇게 두 개의 대화 상자가 나타납니다.

  3. 매개 변수를 추가할 각 필드에 대해 2단계를 반복합니다.

이전 단계를 사용하여 선택, 크로스탭, 추가, 테이블 만들기 또는 업데이트 유형의 쿼리 중 하나에 매개 변수를 추가할 수 있습니다.

다음 단계에 따라 통합 쿼리에 매개 변수를 추가할 수도 있습니다.

  1. SQL 보기에서 통합 쿼리를 엽니다.

  2. 매개 변수에 대한 프롬프트를 표시할 각 필드를 포함하는 WHERE 절을 추가합니다.

    WHERE 절이 이미 있는 경우 매개 변수 프롬프트를 사용할 필드가 해당 절에 이미 있는지 확인하고, 없으면 추가합니다.

  3. WHERE 절에 조건을 사용하는 대신 매개 변수 프롬프트를 사용합니다.

매개 변수 데이터 형식 지정

매개 변수로 입력해야 할 데이터의 형식을 지정할 수도 있습니다. 모든 매개 변수에 대해 데이터 형식을 지정할 수 있지만, 특히 숫자, 통화 또는 날짜/시간 데이터의 경우에는 데이터 형식 지정이 중요합니다. 매개 변수로 입력해야 할 데이터 형식을 지정하면 사용자가 잘못된 형식의 데이터를 입력(예: 통화를 입력해야 하는데 텍스트를 입력)할 때 올바른 형식을 안내하는 오류 메시지가 표시됩니다.

참고: 텍스트 데이터를 입력하도록 매개 변수를 구성하면 입력된 모든 데이터가 텍스트로 해석되어 오류 메시지가 표시되지 않습니다.

쿼리에서 매개 변수의 데이터 형식을 지정하려면 다음 단계를 수행합니다.

  1. 쿼리를 디자인 보기로 연 상태에서 디자인 탭의 표시/숨기기 그룹에 있는 매개 변수를 클릭합니다.

  2. 쿼리 매개 변수 대화 상자의 매개 변수 열에 데이터 형식을 지정할 각 매개 변수에 대한 메시지를 입력합니다. 이때 각 매개 변수의 메시지가 쿼리 디자인 눈금의 조건 행에 사용된 메시지와 일치하도록 해야 합니다.

  3. 데이터 형식 열에서 각 매개 변수의 데이터 형식을 선택합니다.

매개 변수를 수집하는 폼 만들기

매개 변수 쿼리에 매개 변수를 수집하는 기본 제공 대화 상자가 있지만, 기본 기능만 제공할 뿐입니다. 매개 변수를 수집하기 위한 폼을 사용하여 다음과 같은 기능을 사용할 수 있습니다.

  • 데이터 형식별 컨트롤을 사용하는 기능(예: 날짜에 대한 달력 컨트롤)

  • 둘 이상의 쿼리에 사용할 수 있게 해주는 수집된 쿼리의 지속성

  • 사용 가능한 데이터 값 목록에서 선택할 수 있게 해주는, 매개 변수 컬렉션에 대한 콤보 상자 또는 목록 상자를 제공하는 기능

  • 쿼리를 열거나 새로 고치는 등의 기타 기능에 대한 컨트롤을 제공하는 기능

다음 비디오는 일반적으로 매개 변수 쿼리와 연결된 대화 상자를 사용하는 대신 쿼리에 대한 매개 변수를 수집하는 간단한 폼을 만드는 방법을 보여 줍니다.

브라우저가 비디오를 지원하지 않습니다. Microsoft Silverlight, Adobe Flash Player 또는 Internet Explorer 9를 설치하세요.

보고서에 대한 매개 변수를 수집하는 폼 만들기

이 시나리오에 접근하는 방법은 여러 가지가 있지만, 주로 매크로를 사용하는 한 가지 기법만 살펴보겠습니다. 다음 단계에 따라 보고서에 대한 매개 변수를 수집하는 폼을 만듭니다.

1단계: 입력을 받는 폼 만들기

  1. 만들기 탭의 그룹에서 폼 디자인을 클릭합니다.

  2. 디자인 보기에서 F4 키를 눌러 속성 시트를 표시한 후 다음 표에 표시된 폼 속성을 지정합니다.

    속성

    설정

    캡션

    폼의 제목 표시줄에 표시할 이름을 입력합니다.

    기본 보기

    단일 폼

    폼 보기 허용

    데이터시트 보기 허용

    아니요

    피벗 테이블 보기 허용

    아니요

    피벗 차트 보기 허용

    아니요

    스크롤 막대

    모두 아님

    레코드 선택기

    아니요

    탐색 단추

    아니요

    테두리 스타일

    대화 상자

  3. 폼에서 수집하도록 할 각 매개 변수에 대해 디자인 탭의 컨트롤 그룹에서 텍스트 상자를 클릭합니다.

  4. 다음 표에 표시된 대로 텍스트 상자의 속성을 설정합니다.

    속성

    설정

    이름

    매개 변수를 설명하는 이름을 입력합니다(예: StartDate).

    서식

    매개 변수 필드의 데이터 형식을 나타내는 형식을 선택합니다. 예를 들어 날짜 필드의 경우 기본 날짜를 선택합니다.

  5. 폼을 저장하고 이름을 지정합니다(예: frmCriteria).

2단계: 매개 변수 폼이 이미 로드되었는지를 확인하는 코드 모듈 만들기

  1. 만들기 탭의 매크로 및 코드 그룹에서 모듈을 클릭합니다. 

    새 모듈이 Visual Basic Editor에서 열립니다.

  2. 다음 코드를 Visual Basic Editor에 입력하거나 붙여넣습니다.

    Function IsLoaded(ByVal strFormName As String) As Boolean
    Dim oAccessObject As AccessObject
    Set oAccessObject = CurrentProject.AllForms(strFormName)
    If oAccessObject.IsLoaded Then
      If oAccessObject.CurrentView <> acCurViewDesign Then
        IsLoaded = True
      End If
    End If
    End Function
    
  3. 모듈을 고유한 이름으로 저장한 다음 Visual Basic Editor를 닫습니다.

3단계: 양식 및 보고서를 제어하는 매크로 만들기

Access 매크로의 하위 매크로 기능을 사용하여 단일 매크로에서 만들어야 할 필요한 모든 단계를 정의할 수 있습니다. 이 절차에 필요한 다양한 작업을 제어하기 위해 4개의 하위 매크로(열기 대화 상자, 닫기 대화 상자, 확인, 취소)를 만들 것입니다. 아래 스크린샷을 가이드로 사용하여 다음과 같은 하위 매크로 및 함수가 포함된 새 매크로를 만듭니다. 이 예제에서 매개 변수 폼의 이름은 frmCriteria입니다. 앞에서 만든 폼의 이름과 일치하도록 매크로를 조정합니다. 또한 모든 매크로 함수를 보려면 디자인 탭에서 모든 매크로 함수 표시를 클릭해야 합니다.

4개의 하위 매크로 및 함수가 포함된 Access 매크로의 스크린샷

매크로를 저장하고 닫습니다. 매크로 이름을 지정합니다(예: Date Range Macro).

4단계: 폼에 확인 및 취소 명령 단추 추가

  1. 디자인 보기에서 앞에서 만든 매개 변수 폼을 다시 엽니다.

  2. 디자인 탭의 컨트롤 그룹에서 컨트롤 마법사 사용이 선택되어 있지 않은지 확인합니다.

  3. 디자인 탭의 컨트롤 그룹에서 단추를 클릭합니다.

  4. 포인터를 폼에서 텍스트 상자 아래에 두고 끌어서 확인 명령 단추를 만듭니다.

  5. 속성 시트가 보이지 않으면 F4 키를 눌러 표시합니다.

  6. 다음 표에 표시된 대로 확인 단추의 속성을 설정합니다.

    속성

    설정

    이름

    OK

    캡션

    OK

    기본값

    OnClick

    매크로의 이름을 입력합니다(예: Date Range Macro.OK).

  7. 취소 명령 단추를 만들고 다음 표에 표시된 대로 해당 속성을 설정합니다.

    속성

    설정

    이름

    취소

    캡션

    취소

    OnClick

    매크로의 이름을 입력합니다(예: Date Range Macro.Cancel).

  8. 양식을 저장하고 닫습니다.

5단계: 폼 데이터를 쿼리 조건으로 사용

  1. 디자인 보기에서 앞에서 만든 쿼리를 엽니다.

  2. 데이터에 대한 조건을 입력합니다. Forms 개체, 폼의 이름 및 컨트롤의 이름을 사용합니다.

    • 예를 들어 Access 데이터베이스(.accdb 또는 .mdb)에서 frmCriteria라는 폼에 대해 다음 식을 사용하여 쿼리에서 Start Date 및 End Date라는 컨트롤을 참조합니다.

      Between [Forms]![frmCriteria]![Start Date] And [Forms]![frmCriteria]![End Date]

6단계: 보고서 이벤트에 매크로 함수 추가

  1. 디자인 보기에서 사용하려는 보고서를 엽니다.

  2. 속성 시트가 보이지 않으면 F4 키를 눌러 표시합니다.

  3. 보고서의 레코드 원본 속성이 앞에서 정의한 매개 변수 쿼리를 사용하는지 확인합니다.

  4. 이러한 두 추가 보고서 속성을 다음 표에 표시된 대로 설정합니다.

    속성

    설정

    OnOpen

    매크로의 이름을 입력합니다(예: Date Range Macro.Open Dialog).

    OnClose

    매크로의 이름을 입력합니다(예: Date Range Macro.Close Dialog).

    보고서의 Open 이벤트에서 Access는 Date Range Macro 개체의 Open Dialog 하위 매크로에 정의된 함수를 실행합니다. 마찬가지로 보고서를 닫으면 Access는 Date Range Macro 개체의 Close Dialog 하위 매크로에 정의된 함수를 실행합니다.

  5. 보고서를 저장하고 닫습니다.

7단계: 사용해 보기

모든 Access 개체를 만들었으므로 이제 사용해 볼 차례입니다. 보고서 보기 또는 인쇄 미리 보기에서 보고서를 열고, Access에서 보고서를 표시하기 전에 매개 변수 폼이 대화 상자 모드에서 열리는지 확인합니다. 앞에서 만든 텍스트 상자에 필요한 조건을 입력한 다음 폼의 확인 명령 단추를 클릭합니다. 그러면 Access에서 폼을 숨기고(표시 = 아니요) 조건과 일치하는 데이터만 포함된 보고서가 열립니다. 보고서가 기반으로 하는 매개 변수 쿼리가 숨겨진 폼의 컨트롤에 있는 값을 읽을 수 있으므로 이렇게 작동합니다. 보고서를 닫으면 Access에서도 매개 변수 폼을 닫습니다.

맨 위로 이동

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.