KutoolsforOffice— 하나의 솔루션, 다섯 가지 강력한 도구。적은 노력으로 더 큰 성과。

Excel 에서 가중 평균을 계산하는 방법은?

작성자Kelly수정 날짜

가중 평균은 다양한 항목이 전체 결과에 동일하지 않게 기여하는 시나리오에서 자주 사용하는됩니다. 예를 들어 제품 가격, 무게, 수량이 포함된 쇼핑 목록을 분석할 때 Excel 의 일반 AVERAGE 함수는 단순 산술 평균만 계산하여 항목이 얼마나 자주 또는 얼마나 많이 나타나는지를 무시합니다. 그러나 많은 비즈니스나 예산 책정 상황에서는 수량이나 무게를 고려한 단위당 평균 가격과 같은 가중 평균을 계산해야 할 수 있습니다. 이를 통해 각 항목의 영향력이 그 중요도에 비례하도록 합니다. 이 문서에서는 특정 기준이 있는 경우뿐 아니라 VBA 및 PivotTable 을 활용한 보다 동적이고 복잡한 요구사항을 충족하는 가중 평균 계산 방법을 다룹니다。

Excel 에서 가중 평균 계산하기

Excel 에서 주어진 기준을 충족하는 경우 가중 평균 계산하기

VBA 코드 – 동적 범위 또는 여러 기준에 대한 가중 평균 계산 자동화


Excel 에서 가중 평균 계산하기

다음 스크린샷과 같은 쇼핑 목록이 있다고 가정해 보겠습니다. Excel 의 AVERAGE 함수는 무게나 수량을 고려하지 않고 평균 가격을 제공하지만, 이러한 경우 더 정확한 방법은 가중 평균을 계산하는 것입니다。 이는 무게나 빈도가 높은 항목이 최종 결과에 더 큰 영향을 미치도록 하여 단위당 실제 비용을 더 잘 반영합니다。

원본 데이터를 보여주는 스크린샷

가중 평균 가격을 계산하려면 다음과 같이SUMPRODUCTSUM함수를 조합하여 사용하세요:

F2 와 같은 빈 셀을 선택하고 다음 수식을 입력하세요:

=SUMPRODUCT(C2:C18,D2:D18)/SUM(C2:C18)

그리고Enter키를 눌러 결과를 얻으세요。

가중 평균을 계산하기 위해 수식을 사용하는 방법을 보여주는 스크린샷

참고: 이 수식에서C2:C18은 가중치 열을,D2:D18은 가격 열을 참조합니다。 데이터 레이아웃에 따라 해당 범위를 필요에 맞게 조정하세요。SUMPRODUCT함수는 각 가중치를 해당 가격과 곱한 후 결과를 합산하고,SUM은 가중치의 총합을 계산하여 올바른 가중 평균을 산출합니다。 범위의 길이가 동일하고 데이터에 불일치하거나 빈 셀가 없는지 확인하세요。 그렇지 않으면 계산 오류가 발생할 수 있습니다。

계산된 가중 평균이 선호하는 것보다 소수점 자리가 너무 많거나 적게 표시되는 경우, 셀을 선택한 후소수점 자릿수 늘림버튼소수점 자릿수 늘리기 버튼의 스크린샷또는소수점 자릿수 줄임버튼소수점 자릿수 줄이기 버튼의 스크린샷탭에서 클릭하여 표시되는 소수 자릿수을 필요에 따라 조정하세요。

소수점 형식 중 하나를 선택하는 스크린샷

#VALUE!와 같은 오류가 발생하면 참조된 각 셀에 숫자 값이 포함되어 있고 범위가 일치하는지 다시 확인하세요。 또한 정확한 결과를 얻기 위해 계산 범위에 머리글 행을 포함하지 마세요。 대규모 데이터셋을 사용할 때는 명확성과 유지보수 용이성을 위해 이름이 지정된 범위를 사용하는 것을 고려하세요。


Excel 에서 주어진 기준을 충족하는 경우 가중 평균 계산하기

이전 수식은 모든 항목에 대한 가중 평균 가격을 계산합니다。 실제 분석에서는 사과(Apples)와 같은 특정 카테고리에 대한 가중 평균만 계산해야 할 수도 있습니다。 이러한 경우 조건을 기준으로 수식을 개선하여 원하는 기준에 맞는 가중 평균을 계산할 수 있습니다。

이를 위해 F8 과 같은 빈 셀을 선택하고 다음 수식을 입력하세요:

=SUMPRODUCT((B2:B18="Apple")*C2:C18*D2:D18)/SUMIF(B2:B18,"Apple",C2:C18)

그런 다음Enter키를 눌러 특정 기준을 충족하는 가중 평균을 계산하세요。 이 수식은 항목이 조건(이 경우 “Apple”)과 일치할 때만 각 가중치와 가격 쌍을 곱한 후 합산하고, 해당 항목의 가중치 합계로 나눕니다。

지정된 조건을 충족할 경우 가중 평균을 계산하기 위해 수식을 사용하는 방법을 보여주는 스크린샷

참고: 여기서B2:B18은 과일 열,C2:C18은 가중치,D2:D18은 가격입니다。 필요에 따라 “Apple”을 다른 항목으로 바꾸세요。 이 방법은 하나의 조건으로 필터링하는 데 효과적이며, 여러 기준(예: 과일 종류 및 공급업체)으로 필터링해야 하는 경우 보조 열 또는 더 고급 수식이 필요할 수 있습니다。

수식을 적용한 후 명확성을 위해 소수점 자릿수를 조정하고 싶을 수 있습니다。 결과 셀을 선택하고소수점 자릿수 늘림소수점 자릿수 늘리기 버튼의 스크린샷또는소수점 자릿수 줄임소수점 자릿수 줄이기 버튼2의 스크린샷버튼을탭에서 사용하여 표시되는 소수 자릿수을 변경하세요。

소수점 형식 중 하나를 선택하는 스크린샷2

수식이 예상치 못한 결과를 반환하면 대상 범위 내에 기준과 일치하는 항목이 있는지 확인하고, 숫자형으로 의도된 열에 빈 셀이나 텍스트 항목이 없는지 주의하세요。


VBA 코드 – 동적 범위 또는 여러 기준에 대한 가중 평균 계산 자동화

경우에 따라 크기가 변하는 범위, 결측값이 포함된 범위, 또는 동시에 여러 기준을 적용하는 유연한 필터링이 필요한 가중 평균을 자주 계산해야 할 수도 있습니다。 수식이나 범위를 수동으로 업데이트하는 대신 VBA 매크로를 사용해 계산을 자동화하면 시간을 절약하고 오류 가능성을 줄일 수 있습니다。 특히 크기가 크거나 정기적으로 업데이트되는 데이터셋을 다룰 때 유용합니다。

가중 평균을 위한 VBA 매크로를 생성하고 사용하는 방법은 다음과 같습니다:

1.개발자>Visual Basic을 클릭하거나()Alt + F11키를 누르면)Microsoft Visual Basic for Applications편집기 창이 열립니다。 다음으로삽입>모듈을 클릭한 후 아래 새 모듈 창에 다음 코드를 붙여넣으세요:

Sub WeightedAverageVBA()
    Dim rngCriteria As Range
    Dim rngWeight As Range
    Dim rngValue As Range
    Dim criteriaStr As String
    Dim totalWeighted As Double
    Dim totalWeight As Double
    Dim i As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set rngCriteria = Application.InputBox("Select the range for criteria (optional, press Cancel to skip):", xTitleId, Type:=8)
    criteriaStr = Application.InputBox("Enter criteria for filtering (leave blank for all):", xTitleId, Type:=2)
    Set rngWeight = Application.InputBox("Select the Weight (numeric) range:", xTitleId, Type:=8)
    Set rngValue = Application.InputBox("Select the Value (e.g. Price) range:", xTitleId, Type:=8)
    
    totalWeighted = 0
    totalWeight = 0
    
    If rngCriteria Is Nothing Or criteriaStr = "" Then
        For i = 1 To rngWeight.Cells.Count
            If IsNumeric(rngWeight.Cells(i).Value) And IsNumeric(rngValue.Cells(i).Value) Then
                totalWeighted = totalWeighted + rngWeight.Cells(i).Value * rngValue.Cells(i).Value
                totalWeight = totalWeight + rngWeight.Cells(i).Value
            End If
        Next i
    Else
        For i = 1 To rngWeight.Cells.Count
            If rngCriteria.Cells(i).Value = criteriaStr Then
                If IsNumeric(rngWeight.Cells(i).Value) And IsNumeric(rngValue.Cells(i).Value) Then
                    totalWeighted = totalWeighted + rngWeight.Cells(i).Value * rngValue.Cells(i).Value
                    totalWeight = totalWeight + rngWeight.Cells(i).Value
                End If
            End If
        Next i
    End If
    
    If totalWeight = 0 Then
        MsgBox "Weighted average cannot be calculated: total weight is zero.", vbExclamation, xTitleId
    Else
        MsgBox "Weighted average: " & totalWeighted / totalWeight, vbInformation, xTitleId
    End If
End Sub

2.F5키를 누르거나()실행 버튼실행 버튼을 클릭하면) 실행됩니다。
순차적으로 범위 선택을 요청받습니다(기준 범위—필요 없으면 건너뛸 수 있음, 가중치 범위, 값 범위)。 계산을 필터링하기 위한 특정 기준을 입력하거나 모든 데이터를 고려하려면 공백으로 두세요。 이 매크로는 동적 범위를 지원하므로 테이블이 정기적으로 성장하거나 변경될 때 실용적입니다。

마지막으로 가중 평균 결과를 표시하는 메시지 상자를 받게 됩니다。

팁:

  • 이 접근 방식은 반복적인 가중 평균 분석을 자동화하며 추가 필터링이나 출력 옵션을 처리하도록 더 확장할 수 있습니다。
  • 범위 선택의 길이가 동일하고 데이터 형식이 일관된지 확인하세요。
  • 유효한 가중치가 없거나 가중치 합계가 0 인 경우와 같이 기본 오류 처리를 포함하세요(예시 참조)。
  • 필터링되거나 표시된 행에만 적용하려는 경우 특수 셀 열거로 코드를 더욱 개선할 수 있습니다。

매크로 실행 권한이나 보안 문제를 겪는 경우 코드 실행 전 Excel 설정에서 매크로가 활성화되어 있는지 확인하세요。


관련 문서:


최고의 Office 생산성 도구

🤖KUTOOLS AI 도우미: 다음을 기반으로 데이터 분석 혁신하기:지능형 실행   |  코드 생성|  사용자 지정 수식 생성  |  데이터 분석 및 차트 생성|  향상된 함수 호출
인기 기능:찾기, 강조 표시 또는 중복 표시   |  빈 행 삭제   |  데이터 손실 없이 열 결합 또는 셀 제거   |  공식을 사용하지 않는 반올림...
슈퍼 LOOKUP:다중 조건 VLookup  |  다중 값 VLookup  |   여러 시트에서 VLookup   |   퍼지 매치....
고급 드롭다운 목록:드롭다운 목록 빠르게 생성   |  종속형 드롭다운 목록   |  다중 선택 드롭다운 목록....
열 관리자:특정 수의 열 추가|열 이동|숨겨진 열의 표시 상태 전환|범위 및 열 비교...
주요 기능:그리드 포커스   |  디자인 보기   |향상된 수식 표시줄   | 워크북 및 시트 관리자   |  자원 라이브러리(자동 텍스트)|  날짜 선택기   |  워크시트 병합  |  암호화/셀 해독   | 목록으로 이메일 보내기   |  슈퍼 필터   |   특수 필터(굵은 글꼴이 있는 셀 필터링/기울임꼴/취소선。。。) 。。。
상위 15 도구 모음:12 텍스트도구(텍스트 추가,특정 문자 삭제, ...)|   50+차트유형(간트 차트, ...)|   40+ 실용적인수식(생일을 기준으로 나이 계산, ...)|   19 삽입도구(QR 코드 삽입,경로에서 그림 삽입, ...)|   12 변환도구(단어로 변환하기,환율 변환, ...)|   7 병합 및 분할도구(고급 행 병합,셀 분할, ...)|그 외 더 많은 기능
Kutools 를 선호하는 언어로 사용하세요 – 영어, 스페인어, 독일어, 프랑스어, 중국어 및 40+개 이상의 언어를 지원합니다!

Kutools for Excel 로 Excel 역량을 한 단계 업그레이드하고 전례 없는 효율성을 경험하세요。Kutools for Excel 는 생산성과 저장 시간을 향상시키는 300 개 이상의 고급 기능을 제공합니다。가장 필요한 기능을 지금 바로 확인하세요。。。


Office Tab 가 Office 에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만들어 줍니다

  • Word, Excel, PowerPoint 에서 탭 기반 편집 및 읽기 기능을 활성화합니다, Publisher, Access, Visio 및 Project 에서도 사용 가능합니다。
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 생성할 수 있습니다。
  • 50% 만큼 생산성을 높이고 매일 수백 번의 마우스 클릭을 줄여줍니다!

모든 Kutools 애드인。 하나의 설치 프로그램

Kutools for Office스위트 번들은 Excel, Word, Outlook 및 PowerPoint 용 애드인과 Office Tab Pro 를 포함하며, 다양한 Office 앱을 사용하는 팀에 이상적입니다。

ExcelWordOutlookTabsPowerPoint
  • 올인원 스위트— Excel, Word, Outlook 및 PowerPoint 애드인 + Office Tab Pro
  • 하나의 설치 프로그램, 하나의 라이선스— 몇 분 안에 설정 완료(MSI 지원)
  • 함께 사용할수록 더 효과적입니다— Office 앱 전반에서 생산성 향상
  • 30 일간 모든 기능 무료 체험— 등록이나 신용카드 필요 없음
  • 최고의 가성비— 개별 애드인 구매 대비 절약