1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

 

 저번에 덧글이 많은 도움이 되었습니다. 정말 감사합니다. 이번에는 셀의 서식에서 채우기색에 관한 것인데요. 이미 아시겠지만 다음을 보시면,

 

 Sub Macro1()

With Range("W45")
 .Interior.ColorIndex = Range("I24").Interior.ColorIndex
 End With
 
End Sub

 

 다른 셀에 있는 색을 가져올 수가 있는데요, 조건부 서식으로 색을 지정한 셀들의 색들은 어떻게 가져와야 할지 모르겠습니다.  그럼 부탁드리고 Happy New Year~~~


댓글 '1'

profile

[레벨:30]아별

2009.12.31 00:21:21
*.130.73.75

안녕하세요?

조건부 서식에서 지정한 셀 색상을 갖고 오고 싶으시군요..

예전에 엑사모 같은데서 비슷한 질문을 본적이 있는데.. 다 못 갖고온다는 답변뿐이었습니다.

 

조건부 서식에서 값으로 조건을 걸었을 경우에는 갖고 올 수가 있는데요..

수식으로 조건을 걸었을때는.. 수식을 어떻게 평가해야할지에 대한 적당한 해법이 없네요..

홀수열에 음영을 넣는 "=MOD(ROW(),2)" 이런 조건이나 조건에 이름을 사용하거나 했을때..

수식으로 조건을 거는 방법은 무궁무진한지라.. 접근이 어렵습니다.

 

 

값으로 조건을 걸었을때 셀색상을 갖고 오는 사용자 정의함수를 만들어봤습니다.

조건부서식이 없거나, 조건을 만족하지 못 할 경우에는 기본 셀 음영색을 갖고 옵니다.

수식으로 된 조건에 해당하면.. "에라"죠.. =_=;;

참고하세요.

 

abyul_20091231_FormatConditions_colorIndex.xls

 

 Option Explicit

Function getConditionalColor(uRange As Range)
    Dim i As Integer
    Dim cntConditions As Integer
    cntConditions = uRange.FormatConditions.Count
    If cntConditions < 1 Then
        getConditionalColor = uRange.Interior.ColorIndex
    Else
        For i = 1 To cntConditions
            With uRange.FormatConditions(i)
                Select Case .Type
                Case xlCellValue
                    Select Case .Operator
                        Case xlBetween
                            If uRange.Value >= .Formula1 And uRange.Value <= .Formula2 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                        Case xlEqual
                            If uRange.Value = .Formula1 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                        Case xlGreater
                            If uRange.Value > .Formula1 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                        Case xlGreaterEqual
                            If uRange.Value > .Formula1 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                        Case xlLess
                            If uRange.Value < .Formula1 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                        Case xlLessEqual
                            If uRange.Value <= .Formula1 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                        Case xlNotBetween
                            If uRange.Value <= .Formula1 Or uRange.Value >= .Formula2 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                        Case xlNotEqual
                            If uRange.Value <> .Formula1 Then
                                getConditionalColor = .Interior.ColorIndex
                                Exit Function
                            End If
                    End Select
                Case xlExpression
                        getConditionalColor = "수식조건평가못함"
                End Select
            End With
        Next i
    End If
    If IsEmpty(getConditionalColor) Then
        getConditionalColor = uRange.Interior.ColorIndex
    End If
End Function


첨부
문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 138195
502 SUMIF에 범위를 주고 싶습니다. file [1] [레벨:1]푸른하늘2 2010-03-18 6685
501 엑셀일반 투입인력에 대한 값(?)을 알고자합니다. file [1] [레벨:1]안나수이☆。 2011-08-24 6682
500 기타 해당 단어가 있을경우 추출해 내고 싶습니다. file [2] [레벨:3]블루짱이 2012-12-17 6679
499 차트 차트 질문 드립니다. file [3] [레벨:3]빛의행운아 2013-01-02 6678
498 VBA 파일&폴더 VBA 수정하여 사용하다가 막혀서 문의드립니다. file [2] [레벨:1]예진 2012-11-23 6672
497 아별툴 단축키 문의 [1] [레벨:2]키다리 2010-02-04 6672
496 VBA [긴급] Range 범위 "A2:A10" -> 를 변수로 받게 하는 방법.. file [3] [레벨:1]마리너 2012-07-05 6649
495 질문입니다 [1] account 2009-07-03 6648
494 엑셀일반 엑셀 cloud tool 파일 구할수 있을까요? [3] [레벨:1]달리아 2013-03-22 6637
493 피벗테이블사용시 항목수 초과 메세지 [1] [레벨:1]샤우트 2009-08-27 6632
492 엑셀 만게가 넘는 데이타에서 원하는 이하의 값 찾아내기 [3] [레벨:1]프라하 2009-09-03 6616
491 엑셀 왕초보입니다.. [3] [레벨:2]윙윙 2010-03-02 6614
490 VLookup vlookup이 실행이 안되네요 도와주세요 [1] [레벨:1]허니 2013-04-29 6612
489 VBA 사진 삽입 file [3] [레벨:1]비베초보 2013-12-16 6610
488 엑셀일반 셀 병합 후 데이터가 지워지지 않는 방법이 있는지요.. [2] [레벨:3]읍내꽃미남 2011-09-19 6596
487 엑셀수식 ㅠ 그렇군요. _ 수식의 기본원리.. 이해.. 함수식이란? 인수와 문장부호 [5] [레벨:3]빛의행운아 2012-02-17 6594
486 엑셀일반 시트별 비교 관련 : VIP 재등장 횟수 찾는 방법 imagefile [1] [레벨:6]파이스 2013-07-18 6579
485 엑셀일반 엑셀 수식이 바로 적용이 안됩니다. [1] [레벨:0]soiltree 2013-11-04 6572
484 엑셀에서 .. [1] [레벨:2]편한세상 2009-10-30 6569
483 엑셀에서 동작에 따른 이벤트를 발생시킬 때... [1] [레벨:1]DATA 2009-07-05 6565