Please Enable JavaScript!
Gon[ Enable JavaScript ]

엑셀(Excel) VBA – 셀에 적용된 같은 배경색 데이터 합산하기

엑셀(Excel)/VBA
반응형

엑셀(Excel) VBA – 셀에 적용된 같은 배경색 데이터 합산하기

 

환경 : Microsoft Excel 2010

 

이번예제는 같은 색상의 배경색을 가진 데이터에 대해서 합산을 구하는 기능입니다. 특별한 조건없이 사용자가 필요할 때 색상을 분류해서 입혀놨다면 그 분류 대로 값을 합산할수 있습니다.

 

먼저 엑셀에서 샘플을 위해 아래 처럼 색상을 분류해 놓았습니다. 이렇게 분류해 놓은 색상별로 합계를 구할 것입니다.

 

엑셀(Excel) VBA – 셀에 적용된 같은 배경색 데이터 합산하기

 

합계를 구하는 사용자 정의 함수는 두가지 인수를 받게 됩니다. 합계를 구할 영역과 색상값입니다. 색상값은 바로 옆에 만들어 두고 셀을 참조 했습니다. 3개의 색상에 대해 값을 구할 것입니다.

엑셀(Excel) VBA – 셀에 적용된 같은 배경색 데이터 합산하기

 

 

함수는 첫번째 인수로 받은 Range 개체를 For Each 로 하나씩 꺼내 색상이 맞는지 판단할 것입니다. 배경색 값은 Interior.Color 입니다. 두번째로 넘어온 Range 개체도 Interior.Color 비교하면 되겠죠두개의 값이 같다면 합산을 합니다.

 

Function 색상별합계(ran As range, col As range)

    Dim sumData As Single

   

    For Each k In ran

        If k.Interior.Color = col.Interior.Color Then

            sumData = sumData + k.Value

        End If

    Next

   

    색상별합계 = sumData

End Function

 

위와같이 만든 사용자 정의 함수를 사용해 보겠습니다. 계산값을 추출할 영역은 절대값으로 합니다.

엑셀(Excel) VBA – 셀에 적용된 같은 배경색 데이터 합산하기

 

 

절대값으로 했기 때문에 나머지 두가지 색상에 대한 값은 드래그 해서 수식을 적용합니다색상별로 제대로 값이 구해 진 것 같네요

엑셀(Excel) VBA – 셀에 적용된 같은 배경색 데이터 합산하기

 

 

반응형
Posted by 녹두장군1
,