본문 바로가기
Range object

[Range 개체] Characters속성

2023. 7. 24.

Characters Property

개체 텍스트 내의 문자 범위를 나타내는 Characters 개체를 반환합니다. 문자 개체를 사용하여 텍스트 문자열 내의 문자 서식을 지정합니다.

Syntax

expression.Characters (Start, Length)

 

Start : 반환할 첫 번째 문자입니다. 이 인수가 1이거나 생략된 경우 이 속성은 첫 번째 문자로 시작하는 문자 범위를 반환합니다.

Length : 반환할 문자 수입니다. 이 인수를 생략하면 이 속성은 문자열의 나머지 부분(시작 문자 뒤의 모든 항목)을 반환합니다.

 

예제 코드

1. 특정 위치의 글자색 변경

Sub ChangeCharacterFormatting()

    Dim firstChar As String

    ' A1 셀의 첫 5개 문자를 굵게 설정
    Range("A1").Characters(1, 5).Font.Bold = True
    
    ' A1 셀의 11번째부터 15번째 문자까지 색상 변경
    Range("A1").Characters(11, 5).Font.Color = RGB(255, 0, 0) ' 빨간색
    
    ' A1 셀의 첫 문자의 텍스트 가져오기
    
    firstChar = Range("A1").Characters(1, 1).Text
    
    MsgBox "첫 문자: " & firstChar
    
End Sub

 

매크로 실행 전

 

매크로 실행 후

2. 지역번호만 글자색 변경

Sub ChangeTextColor()
    Dim ws As Worksheet
    Dim rng As Range
    Dim cell As Range
    Dim endPos As Integer

    ' 워크시트 및 범위 설정
    Set ws = ThisWorkbook.Sheets("Sheet1")
    Set rng = ws.Range("A1").CurrentRegion.Columns(3)

    ' 각 셀에서 ")" 문자를 찾아 글자색 변경
    For Each cell In rng.Cells
        endPos = InStr(1, cell.Value, ")")
        If endPos > 0 Then
            cell.Characters(Start:=1, Length:=endPos).Font.Color = vbBlue
        Else
        End If
    Next cell
End Sub

 

매크로 실행 전

 

매크로 실행 후