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

DAvg 함수를 사용하여 지정된 레코드 집합( 도메인 )에서 값 집합의 평균을 계산할 수 있습니다. VBA(Visual Basic for Applications) 모듈, 매크로, 쿼리 식 또는 계산된 컨트롤DAvg 함수를 사용합니다.

예를 들어 화물 비용에 대한 선택 쿼리의 조건 행에서 DAvg 함수를 사용하여 화물 비용이 평균을 초과하는 레코드로 결과를 제한할 수 있습니다. 또는 계산된 컨트롤에 DAvg 함수를 포함한 식을 사용하고 새 주문 값 옆에 이전 주문의 평균 값을 표시할 수 있습니다.

구문

DAvg ( expr , domain [, criteria] )

DAvg 함수 구문에는 다음과 같은 인수가 사용됩니다.

인수

설명

expr

필수 요소입니다. 평균하려는 숫자 데이터가 포함된 필드를 식별하는 식입니다. 테이블 또는 쿼리에서 필드를 식별하는 문자열 식 또는 해당 필드의 데이터에 대한 계산을 수행하는 식일 수 있습니다. expr에서 테이블의 필드 이름, 폼의 컨트롤, 상수 또는 함수를 포함할 수 있습니다. expr에 함수가 포함된 경우 기본 제공 또는 사용자 정의일 수 있지만 다른 도메인 집계 또는 SQL 집계 함수는 사용할 수 없습니다.

domain

필수 요소입니다. 도메인을 구성하는 레코드 집합을 식별하는 문자열 식입니다. 매개 변수가 필요하지 않은 쿼리의 테이블 이름 또는 쿼리 이름일 수 있습니다.

criteria

선택 요소입니다. DAvg 함수가 수행되는 데이터 범위를 제한하는 데 사용되는 문자열 식입니다. 예를 들어 criteria 는 WHERE라는 단어가 없는 SQL 식의 WHERE 절과 동일한 경우가 많습니다. 조건을 생략하면 DAvg 함수는 전체 도메인에 대해 expr을 평가합니다. criteri a에 포함된 모든 필드는 도메인필드여야 합니다. 그렇지 않으면 DAvg 함수가 Null을 반환합니다.

주의

Null 값이 포함된 레코드는 평균 계산에 포함되지 않습니다.

매크로 또는 모듈, 쿼리 식 또는 계산된 컨트롤에서 DAvg 함수를 사용하든 관계없이 criteria 인수를 신중하게 생성하여 올바르게 평가되도록 해야 합니다.

DAvg 함수를 사용하여 쿼리의 Criteria 행에 조건을 지정할 수 있습니다. 예를 들어 평균 주문 수량보다 많은 수량으로 주문된 모든 제품의 목록을 보려는 경우를 가정해 보겠습니다. 주문, 주문 세부 정보 및 제품 테이블에 쿼리를 만들고 제품 이름 필드와 수량 필드를 포함할 수 있으며, 다음 식은 수량 필드 아래 조건 행에 있습니다.

>DAvg("[Quantity]", "Orders")

쿼리 또는 업데이트 쿼리 의 업데이트 행에서 계산 필드 식 내에서 DAvg 함수를 사용할 수도 있습니다.

참고:  요약 쿼리 계산 필드 식에서 DAvg 또는 Avg 함수를 사용할 수 있습니다. DAvg 함수를 사용하는 경우 데이터가 그룹화되기 전에 값의 평균이 계산됩니다. Avg 함수를 사용하는 경우 필드 식의 값이 평균화되기 전에 데이터가 그룹화됩니다.

DAvg 함수가 수행되는 데이터 범위를 제한하는 조건을 지정해야 하는 경우 계산된 컨트롤에서 DAvg 함수를 사용합니다. 예를 들어 캘리포니아로 보낸 배송의 평균 화물 비용을 표시하려면 텍스트 상자의 ControlSource 속성을 다음 식으로 설정합니다.

=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")

도메인 의 모든 레코드를 평균화하려면 Avg 함수를 사용합니다.

표시해야 하는 필드가 폼의 기반이 되는 레코드 원본에 없는 경우 모듈 또는 매크로 또는 폼의 계산된 컨트롤에서 DAvg 함수를 사용할 수 있습니다. 예를 들어 Orders 테이블을 기반으로 하는 양식이 있고 특정 고객이 주문한 평균 항목 수를 표시하기 위해 주문 세부 정보 테이블의 수량 필드를 포함하려는 경우를 가정해 보겠습니다. DAvg 함수를 사용하여 이 계산을 수행하고 양식에 데이터를 표시할 수 있습니다.

  • 계산된 컨트롤에서 DAvg 함수를 사용하는 경우 새 레코드로 이동할 때마다 이 컨트롤의 값이 다시 계산되지 않도록 폼 머리글 또는 바닥글에 컨트롤을 배치할 수 있습니다.

  • expr 이 파생되는 필드의 데이터 형식이 숫자인 경우 DAvg 함수는 Double 데이터 형식을 반환합니다. 계산된 컨트롤에서 DAvg 함수를 사용하는 경우 성능 향상을 위해 식에 데이터 형식 변환 함수를 포함합니다.

  • DAvg 함수를 사용하여 외래 테이블 필드의 값 평균을 확인할 수 있지만 필요한 모든 필드가 포함된 쿼리를 만든 다음 해당 쿼리에 대한 폼이나 보고서를 기반으로 하는 것이 더 효율적일 수 있습니다.

참고: 이 함수에서는 domain의 레코드에 대한 변경 내용이 저장되지 않은 경우 해당 내용을 고려하지 않습니다. DAvg 함수가 변경된 값을 기반으로 하려면 먼저 데이터 탭의 레코드 아래에서 레코드 저장을 클릭하거나 포커스를 다른 레코드로 이동하거나 Update 메서드를 사용하여 변경 내용을 저장해야 합니다.

예제

참고: VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.

다음 함수는 지정된 날짜 또는 그 이후에 배송된 주문의 평균 화물 비용을 반환합니다. 도메인은 Orders 테이블입니다. criteria 인수는 지정된 국가/지역 및 배송 날짜를 기준으로 결과 레코드 집합을 제한합니다. 키워드(keyword) ANDcriteria 인수의 여러 필드를 구분하기 위해 문자열에 포함됩니다. DAvg 함수 계산에 포함된 모든 레코드에는 이러한 조건이 모두 포함됩니다.

Public Function AvgFreightCost _    (ByVal strCountryRegion As String, _     ByVal dteShipDate As Date) As Double    AvgFreightCost = DAvg("[Freight]", "Orders", _        "[ShipCountryRegion] = '" & strCountryRegion & _        "'AND [ShippedDate] >= #" & dteShipDate & "#")End Function

함수를 호출하려면 직접 실행 창에서 다음 코드 줄을 사용합니다.

:AvgFreightCost "UK", #1/1/96#

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

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

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