엑셀의 countif는 범위내 같은 데이터가 들어있는 셀의 갯수를 구하는 함수이다.
=countif(구할범위, 구할 데이터가 들어있는 셀)
하지만 같은 배경색이 들어있는 셀의 갯수를 구하는 함수는 없다
그래서 모듈을 만들어 정의를 해야한다.
우선 Alt + F11을 누르면 VBA창이 뜬다.
여기에서 삽입-모듈을 누르고
Function TotalColor(ByVal 범위 As Range, 색상 As Range) As Long
Dim rng As Range
Dim ColorSum As Long
Application.Volatile
For Each rng In 범위
If rng.Interior.ColorIndex = 색상.Interior.ColorIndex Then
ColorSum = ColorSum + 1
End If
Next rng
TotalColor = ColorSum
End Function
아래 내용을 복사해서 넣는다.
그리곤 창을 닫고 나가서 엑셀함수처럼 사용하면 된다
사용법은 =totalcolor(구할범위, 구할 배경색이 들어있는 셀)
* 주의점 : 위 함수(매크로)를 포함하도록 저장해야 다른 곳에서도 사용하능하다.
"다른 이름으로 저장"에서 파일형식을 "excel 통합문서"가 아니라 "excel 매크로포함통합문서" 로 저장을 해야 한다.
또한, window7의 경우 ms오피스 문양-엑셀옵션-보안센터-보안센터설정-매크로설정-등급가장낮게와 VBA개체설정.... 에 체크(v)해야합니다. 그래야 매번 실행이 됩니다.
참고용..
아래 함수는 범위내의 원하는 배경색상이 들어있는 셀의 데이터합을 구하는 함수이다.
사용법은 =sumcolor(구할범위, 구할 배경색이 들어있는 셀)
Function SumColor(ByVal 범위 As Range, 색상 As Range) As Long
Dim rng As Range
Dim ColorSum As Long
Application.Volatile
For Each rng In 범위
If rng.Interior.ColorIndex = 색상.Interior.ColorIndex Then
ColorSum = ColorSum + rng
End If
Next rng
SumColor = ColorSum
End Function
'공 부 > 컴퓨터공부' 카테고리의 다른 글
포샵에 좋은 프로그램 (0) | 2014.03.06 |
---|---|
누크 cm 업하기.. (0) | 2013.12.11 |
윈도우 바탕화면 자동변경 프로그램 (0) | 2013.08.30 |
램디스크 사용해보기.. (0) | 2013.06.12 |
하드디스크 드라이브가 갑자기 사라졌을때.. (0) | 2013.06.12 |