본문 바로가기
꿀팁

엑셀 색깔 함수 / 색깔별 더하기 방법

by 규우울 2022. 1. 15.
반응형

엑셀을 사용하다 보면 여러 가지 함수를 사용하게 됩니다. 하지만 가끔씩은 이런 함수가 있었으면 좋겠다고 생각하기도 합니다. 그중 하나가 색깔 함수라고 생각합니다. 기본적으로 내장되어 있지 않지만 있다면 자주 쓸 것 같다고 생각됩니다. 하지만 엑셀에서는 이런 함수를 만드는 방법도 있습니다. visual basic를 사용하면 가능합니다.

 

visual basic란?

visual basic는 프로그래밍 언어 중 한가지입니다. 윈도용 응용 프로그램 개발 언어면서 데이터베이스 프로그래밍까지 가능합니다.  엑셀에서는 매크로를 만들 때 visual basic언어를 사용합니다. 또한 새로운 함수를 만들 때에도 사용하니 엑셀을 완전히 마스터하려면 프로그래밍 언어까지 공부를 해야 합니다.

 

함수 만드는 방법

이제 함수를 직접 만들어보겠습니다. 엑셀에 들어간 후에 알트+F11을 같이 눌러줍니다. 그렇게 되면 엑셀에서 visual basic 코딩을 할 수 있는 창이 나오게 됩니다. 그러면 이제 새로운 모듈을 만들어 보겠습니다. 삽입 -> 모듈을 클릭해줍니다. 빈 창이 나오는데 거기에 코드를 적어줍니다.

Function SumByColor(rngTarget As Range, rngX As Range)
    Dim inColor As Integer
    Dim rngCell As Range
    Dim IngSum As Long
    
    intColor = rngX.Interior.ColorIndex
    For Each rngCell In rngTarget
        If rngCell.Interior.Colordex = inColor Then
            IngSum = IngSum + rngCell
        End If
    Next
    SumByColor = IngSum
    
End Function

위 함수를 그대로 모듈에 적어주세요 그렇다면 이제 이 함수의 사용 방법을 알아보겠습니다. 함수의 이름은 sumbucolor입니다. 사용하는 방법은 "=sumbycolor(전체 영역, 색깔)"입니다.

10      
99                     =sumbycolor($a$1:$a$10,$c2)
105                   =sumbycolor($a$1:$a$10,$c3)
18                   =sumbycolor($a$1:$a$10,$c4)
46      
97      
312      
13      
48      
66      

만약 이게 실제 엑셀이라 생각하고 식을 적어봤습니다. 그렇게 되면 첫 번째 식의 값은 214 두 번째, 세 번째는 161,439가 나오게 될 겁니다. 

반응형

댓글