Robin은 Excel의 조건부 서식 기능을 사용하여 셀에 사용 된 글꼴을 변경하거나 셀의 글꼴 크기를 변경하는 방법이 있는지 묻습니다. 짧은 대답은 ‘아니요’입니다. 적어도 조건부 서식은 불가능합니다. (글꼴 이름과 크기를 지정할 수있는 컨트롤은 조건부 서식과 함께 사용되는 서식 대화 상자에서 회색으로 표시됩니다.)

그러나 매크로를 사용하여 셀 내용을 검사하고 셀 모양을 변경할 수 있습니다. 매크로를 실행할 때 선택한 셀을 검사하는 다음 매크로를 고려하십시오. 셀의 길이가 3 자 이상이거나 값이 10 이상이면 셀의 글꼴이 변경됩니다.

Sub DoReformat()

Dim rCell As Range

For Each rCell In Selection.Cells         If Len(rCell.Text) > 2 Or _           Val(rCell.Value) > 10 Then             rCell.Font.Name = "Arial"

rCell.Font.Size = 16         Else             rCell.Font.Name = "Times New Roman"

rCell.Font.Size = 12         End If     Next End Sub

매크로를 사용하려면 변경하려는 셀을 선택한 다음 매크로를 실행하면됩니다. 서식이 자동으로 변경되도록하려면 매크로가 특정 셀 범위 내에서 변경되었는지 확인하도록 할 수 있습니다.

Private Sub Worksheet_Calculate()

Dim rng As Range     Dim rCell As Range

Set rng = Range("A1:A10")



For Each rCell In rng         If Len(rCell.Text) > 2 Or _           Val(rCell.Value) > 10 Then             rCell.Font.Name = "Arial"

rCell.Font.Size = 16         Else             rCell.Font.Name = "Times New Roman"

rCell.Font.Size = 12         End If     Next End Sub

이 매크로는 워크 시트 개체에 추가 될 때 워크 시트가 다시 계산 될 때마다 실행됩니다. 이전 매크로에서와 동일한 테스트를 적용하여 A1 : A10 범위를 확인합니다. 결과적으로 셀의 서식이 확인되고 지속적으로 변경됩니다. 매크로가 다른 범위를 확인하도록하려면 매크로 시작 부분 근처의 rng 변수에 할당 된 주소를 변경하면됩니다.

이 매크로의 한 가지 단점은 검사 할 범위가 매우 큰 경우 느려질 수 있다는 것입니다. A1 : A10 (10 개 셀)을 확인하는 경우 매우 빠르게 진행되지만 B2 : N465 (6,000 개 이상의 셀)를 계속 확인하는 경우 훨씬 느려질 수 있습니다. 이 경우 워크 시트가 변경 될 때마다 실행되도록 매크로를 디자인 할 수 있지만 대상 범위의 셀이 변경된 경우에만 조치를 취합니다. 다음 버전도 워크 시트 개체에 추가됩니다.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim rCell As Range

If Union(Target, Range("A1:A10")).Address = _       Range("A1:A10").Address Then         Application.EnableEvents = False         For Each rCell In Target             If Len(rCell.Text) > 2 Or _               Val(rCell.Value) > 10 Then                 rCell.Font.Name = "Arial"

rCell.Font.Size = 16             Else                 rCell.Font.Name = "Times New Roman"

rCell.Font.Size = 12             End If         Next         Application.EnableEvents = True     End If End Sub

매크로는 Union 함수를 사용하여 변경된 셀 (Target 변수의 이벤트 처리기로 전달됨)이 확인하려는 범위와 겹치는 지 확인합니다. 그럴 경우 대상 범위의 셀에서 검사가 수행됩니다.

서식에 영향을주는 매크로에서 명심해야 할 한 가지는 매크로에서도 확인되는 셀에 조건부 서식이 적용된 경우 조건부 서식의 서식이 매크로의 서식보다 우선한다는 것입니다. 매크로가 글꼴 이름과 글꼴 크기를 변경하는 경우 조건부 서식이 이러한 특성에 영향을주지 않으므로 큰 문제가되지 않습니다. 그러나 매크로를 변경하여 셀 색상과 같은 다른 서식 속성도 변경하고 해당 속성도 조건부 서식에 의해 변경되는 경우 Excel에서 기본 설정에서 조건부 서식을 사용하기 때문에 매크로가 아무 작업도 수행 한 것처럼 보이지 않습니다. 매크로가하는 일에.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (13236)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다. 여기에서 Excel의 이전 메뉴 인터페이스에 대한이 팁 버전을 찾을 수 있습니다.

link : / excel-Changing_Font_Face_and_Size_Conditionally [Changing Font Face and Size Conditionally].