KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何在 Excel 中合併儲存格時保留原有文字色彩?

作者曉陽修改日期

眾所周知,當您在 Excel 中將多個儲存格欄位串接或合併為單一欄位時,原有的儲存格格式(例如文字字體顏色、數字格式等)往往會遺失。本文將分享實用技巧,協助您更輕鬆地合併儲存格欄位,同時盡可能保留文字色彩。

使用 VBA 程式碼合併儲存格欄位並保留文字字體顏色


使用 VBA 程式碼合併儲存格欄位並保留文字字體顏色

若要在 Excel 中完成此任務,下列 VBA 程式碼或許能助您一臂之力,請依照以下步驟操作:

1. 按住 ALT + F11 鍵,即可開啟 Microsoft Visual Basic for Applications 視窗。

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
			.NumberFormat = "@"
            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. 然後點選確定,將出現另一個對話方塊,請選擇您想要輸出合併結果的儲存格位置,詳情請參見截圖:

選取用於輸出合併結果的儲存格

5. 接著點選確定按鈕,欄位即成功合併,且文字色彩完整保留,如下方截圖所示:

 合併欄位時不會遺失文字色彩

kutools for excel AI 的螢幕截圖

透過 KUTOOLS AI 解鎖 Excel 的神奇功能

  • 智慧執行:透過簡易指令,輕鬆執行儲存格操作、分析資料,並建立圖表!
  • 自訂公式:打造專屬公式,讓您的工作流程更順暢!
  • VBA 編碼:輕鬆撰寫並套用 VBA 程式碼,立即提升工作效率!
  • 公式解析:輕鬆掌握複雜公式!
  • 文字翻譯:輕鬆打破試算表中的語言隔閡!
運用 AI 驅動的工具強化您的 Excel 能力。立即下載體驗前所未有的高效!

最佳 Office 生產力工具

🤖KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行   |  產生程式碼|  建立自訂公式  |  分析資料並產生圖表|  呼叫增強函數……
熱門功能:尋找、醒目提示或標記重複值   |  刪除空白行   |  合併列或儲存格而不遺失資料   |  不使用公式的四捨五入……
高級 LOOKUP:多重條件 VLookup  |  多重數值 VLookup  |   跨多個工作表 VLookup   |   模糊查找……
高級下拉列表:快速建立下拉式清單   |  相依式下拉式清單   |  多選下拉式清單……
欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位……
精選功能:網格聚焦   |  設計視圖   |增強編輯欄   | 工作簿與工作表管理員   |  資源庫(自動文字)|  日期提取   |  合併工作表  |  加密/解密儲存格   | 依清單傳送電子郵件   |  超級篩選   |   特殊篩選(篩選粗體儲存格/斜體/刪除線……) ......
頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)|   50+ 圖表 類型(甘特圖,……)|   40+ 實用公式(基於生日計算年齡,……)|   19 插入工具(插入二維碼,從路徑插入圖片,……)|   12 轉換工具(金額轉大寫,匯率轉換,……)|   7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多
在您的慣用語言中使用 Kutools—支援英文、西班牙文、德文、法文、中文及另外 40+ 種語言!

運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……


Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!

  • 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
  • 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
  • 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!

所有 Kutools 增益集,一個安裝程式

Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!

ExcelWordOutlookTabsPowerPoint
  • 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
  • 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
  • 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
  • 30 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用