본문 바로가기
PROGRAM/Excel

[Excel] 사용자 정의 함수 - 색상 알아오기

by 반화넬 2022. 12. 23.
반응형

출처 : https://www.oppadu.com/vba-getcolor-%ED%95%A8%EC%88%98/

'###############################################################
'오빠두엑셀 VBA 사용자지정함수 (https://www.oppadu.com)
'▶ GetColor 함수
'▶ 셀의 배경색 및 글자색을 반환 합니다.
'▶ 인수 설명
'_____________rng              : 차원을 검토할 배열을 입력합니다.
'_____________font_color     : TRUE일 경우 글꼴색상을 반환합니다.
'_____________return_type   : 0 - HEX, 양수 - RGB, 음수 - 엑셀기본(정수)
'###############################################################
 
Function GetColor(rng As Range, Optional font_color As Boolean = False, Optional return_type As Integer = 0) As Variant
 
    Dim colorVal As Variant
 
    If rng.Columns.Count <= 1 And rng.Rows.Count <= 1 Then
        If font_color = True Then
            colorVal = rng.Font.Color
        Else
            colorVal = rng.Interior.Color
        End If
 
        Select Case Sgn(return_type)
            Case 0
                GetColor = Hex(colorVal)
            Case 1
                GetColor = (colorVal Mod 256) & ", " & ((colorVal \ 256) Mod 256) & ", " & (colorVal \ 65536)
            Case Else
                GetColor = colorVal
            End Select
    Else
            GetColor = CVErr(xlErrValue)
    End If
 
End Function

 

반응형