나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내
작성자:  

 조삿갓 (choga21)

추천:  2
파일:     조회:  2005
제목:   [RE]조건부 서식 범위 지정 뒤죽박죽
     
  * 아래줄에 질문을 작성하세요 >>
조건부 서식에서 범위 지정("$"표기 앞뒤로 한후)
매크로로 정렬명령을 몇번하고 나면
새로운 조건부 서식도 생겨나고
지정한 범위가 변동되어 있습니다
변동이 안되도록 하는 방법이 없을까요
==============[aortla님 글에 대한 답변입니다]==============

행 삽입이나 삭제를 하고 나서, 참조 수식, 범위 이름과 조건부서식을 재지정하는 코드 예제입니다.
참고하시기 바랍니다.

실제로는, 매크로 기록 기능을 이용하여 사용하시는 조건부 서식을 다시 정의하는 과정을 거치고 나서, 기록된 매크로 코드를 적절히 수정해서 활용하시면 될 것입니다.(이 예제도 그런 방법을 쓴 것임)

다만,
Application.ReferenceStyle = xlA1
명령은 자동 기록되는 명령은 아니지만, 반드시 넣어주어야 합니다.
대개 VB 프로그래밍을 하다 보면 수식 참조 방식을 R1C1 스타일로
변경하는 경우가 있는데,
그 상태에서 무심코 조건부서식 코드를 실행하면 여지 없이 실행오류가 발생하는 수가 있거든요.

Sub SetFormatCon()
 re = 4
 Do
  re = re + 1
  If IsError(Cells(re, 1)) Then Cells(re, 1).FormulaR1C1 = "=R[-1]C+IF(RC[1]<R[-1]C[1],1,0)"
 Loop While re < r And Cells(re, 1) < 9000
 Cells.FormatConditions.Delete
 Application.ReferenceStyle = xlA1
 Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$B4=0"
 Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
 With Selection.FormatConditions(1).Interior
  .PatternColorIndex = xlAutomatic
  .ThemeColor = xlThemeColorLight2
  .TintAndShade = 0.799981688894314
 End With
 ActiveWorkbook.Names("계획표").RefersToR1C1 = "=주간계획!R4C1:R" & re & "C13"
End Sub
 
[불량 게시물 신고]  
        
  

작성일 : 2018-04-03(10:57)
최종수정일 : 2018-04-03(11:01)
 


 ◎ 관련글

  제 목   작성자   날짜
조건부 서식 범위 지정 뒤죽박죽 aortla 2018-04-03
[RE]조건부 서식 범위 지정 뒤죽박죽 조삿갓 2018-04-03