Note: The other languages of the website are Google-translated. Back to English

Excel에서 셀 열을 연결하고 텍스트 색상을 유지하는 방법은 무엇입니까?

우리 모두 알고 있듯이 셀 열을 하나의 열로 연결하거나 결합하는 동안 셀 서식 (예 : 텍스트 글꼴 색상, 숫자 서식 등)이 손실됩니다. 이 기사에서는 셀 열을 하나로 결합하고 Excel에서 가능한 한 쉽게 텍스트 색상을 유지하는 몇 가지 트릭을 소개합니다.

셀 열을 연결하고 VBA 코드로 텍스트 글꼴 색상 유지


셀 열을 연결하고 VBA 코드로 텍스트 글꼴 색상 유지


Excel에서이 작업을 완료하려면 다음 VBA 코드가 도움이 될 수 있습니다. 다음과 같이하십시오.

1. 누르고 ALT + F11 키를 눌러 응용 프로그램 용 Microsoft Visual Basic 창.

2. 딸깍 하는 소리 끼워 넣다 > 모듈을 클릭하고 다음 코드를 모듈 창.

VBA 코드 : 셀 열을 연결하고 텍스트 색상 유지 :

Sub MergeFormatCell()
'Updateby Extendoffice
    Dim xSRg As Range
    Dim xDRg As Range
    Dim xRgEachRow As Range
    Dim xRgEach As Range
    Dim xRgVal As String
    Dim I As Integer
    Dim xRgLen As Integer
    Dim xSRgRows As Integer
    Dim xAddress As String
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xSRg = Application.InputBox("Please select cell columns to concatenate:", "KuTools For Excel", xAddress, , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSRgRows = xSRg.Rows.Count
    Set xDRg = Application.InputBox("Please select cells to output the result:", "KuTools For Excel", , , , , , 8)
    If xDRg Is Nothing Then Exit Sub
    Set xDRg = xDRg(1)
    For I = 1 To xSRgRows
        xRgLen = 1
        With xDRg.Offset(I - 1)
            .Value = vbNullString
            .ClearFormats
            Set xRgEachRow = xSRg(1).Offset(I - 1).Resize(1, xSRg.Columns.Count)
            For Each xRgEach In xRgEachRow
                .Value = .Value & Trim(xRgEach.Value) & " "
            Next
            For Each xRgEach In xRgEachRow
                xRgVal = xRgEach.Value
                With .Characters(xRgLen, Len(Trim(xRgVal))).Font
                .Name = xRgEach.Font.Name
                .FontStyle = xRgEach.Font.FontStyle
                .Size = xRgEach.Font.Size
                .Strikethrough = xRgEach.Font.Strikethrough
                .Superscript = xRgEach.Font.Superscript
                .Subscript = xRgEach.Font.Subscript
                .OutlineFont = xRgEach.Font.OutlineFont
                .Shadow = xRgEach.Font.Shadow
                .Underline = xRgEach.Font.Underline
                .ColorIndex = xRgEach.Font.ColorIndex
                End With
                xRgLen = xRgLen + Len(Trim(xRgVal)) + 1
            Next
        End With
    Next I
End Sub

3. 그런 다음 F5 키를 눌러이 코드를 실행하면 텍스트 색상과 결합 할 데이터 범위를 선택하라는 메시지 상자가 나타납니다. 스크린 샷을 참조하십시오.

4. 그런 다음 OK, 다른 대화 상자가 나타납니다. 결합 된 결과를 출력 할 셀을 선택하십시오. 스크린 샷을 참조하십시오.

5. 그런 다음 OK 버튼을 클릭하면 다음 스크린 샷과 같이 텍스트 색상을 잃지 않고 열이 연결되었습니다.

주의 사항: 결합해야하는 데이터에 숫자가 포함되어 있으면 매크로 코드가 제대로 작동하지 않습니다.


최고의 사무 생산성 도구

Excel 용 Kutools는 대부분의 문제를 해결하고 생산성을 80 % 향상시킵니다.

  • 재사용: 빠르게 삽입 복잡한 공식, 차트 그리고 이전에 사용한 모든 것; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
  • 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
  • 셀 / 행 / 열 병합 데이터 손실없이; 셀 내용 분할; 중복 행 / 열 결합... 중복 셀 방지; 범위 비교...
  • 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
  • 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
  • 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
  • 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
  • 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
  • 300 개 이상의 강력한 기능. Office / Excel 2007-2019 및 365를 지원합니다. 모든 언어를 지원합니다. 기업 또는 조직에 쉽게 배포 할 수 있습니다. 전체 기능 30 일 무료 평가판. 60 일 환불 보장.
kte 탭 201905

Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50 % 향상시키고 매일 수백 번의 마우스 클릭을 줄입니다!
officetab 하단
코멘트 (9)
아직 평가가 없습니다. 가장 먼저 평가하세요!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이 코드는 정말 잘 작동합니다. 그러나 텍스트 앞이나 뒤에 공백을 어떻게 추가합니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요
이 방법은 xRgLen이 255보다 높을 때까지 잘 작동합니다.
이 매개변수는 바이트인 것 같습니다 :-(
이 제한을 어떻게 극복할 수 있습니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
Fantástica la macro de concatenar cadena de texto conservando formato de Origen. En mi caso no funcionaba con F5, pero en la pestaña macro, modificar y opciones me permite entrar el modo de ejecucion con CTRL+letra y funciona de maravilla. 무하스 그라시아스.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
Habría manera de hacerlo con numeros?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
코드를 보내 주셔서 감사합니다.
텍스트에 "( )"가 있는 경우, 예를 들어 "tomate(tomates)". 잘 작동하지 않습니다. "( ) "를 사용하기 위해 수정해야 할 사항이 있습니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요 라.
잘 지내고 있나요? 텍스트에 "( )"가 있으면 VBA 코드를 변경할 필요가 없습니다. 스크린샷을 참조하십시오. 텍스트 "토마토(토마토)"는 다른 셀 열과 성공적으로 결합하여 하나의 열로 만들 수 있습니다. 도움이 될 수 있기를 바랍니다.
감사합니다.
맨디
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
코드 주셔서 감사합니다!
변경 사항이 있는 경우 연결 열을 자동으로 업데이트할 수 있습니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕, 캐시,
죄송합니다. 현재로서는 좋은 방법이 없습니다. 셀 내용을 변경한 후 코드를 다시 실행해야 합니다. 😂
감사합니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
알겠습니다. 답장을 보내주셔서 감사합니다.
아직 코멘트가 없습니다
여러분의 의견을 남겨
게스트로 게시
×
이 게시물 평가 :
0   등장 인물
추천 위치