2017-03-03 91 views
-1

我有一個單元格中的彩色文本字符序列。我想根據顏色將其解析爲多個單元格,如下所示。顏色重複。我嘗試使用本論壇中已發佈的一些解決方案,包括解決方案:How to extract text based on font color from a cell with text of multiple colors and separate multiple words by Delimiter?。但是,無法達到我想要的結果。有什麼建議麼?將Excel電子表格單元格中的多色文本解析爲多個單元格?

enter image description here

+0

您需要發佈您的代碼,並告訴我們,當你運行它「但是,不能達到我想要的結果」發生了什麼並沒有真正給任何人多去幫助你。 – Sorceri

+0

當然!我也在不斷測試解決方案。我會很快做到這一點。 – RanonKahn

+0

另一個選項可能是從'[H2] .Value(11)'或'[H2] .Value(12)' – Slai

回答

2

這看起來沒錯。

Option Explicit 

Function udf_Color_Piece(rTXT As Range, Optional iNDX As Long = 1) 
    Dim c As Long, seg As Long, clr As Long 

    seg = 0 
    clr = -9 
    udf_Color_Piece = vbNullString 

    For c = 1 To Len(rTXT.Text) 
     With rTXT.Characters(Start:=c, Length:=1) 
      If clr <> .Font.Color Then 
       seg = seg + 1 
       clr = .Font.Color 
       If seg > iNDX Then Exit Function 
      End If 
      If seg = iNDX Then 
       udf_Color_Piece = udf_Color_Piece & .Text 
      End If 
     End With 
    Next c 

End Function 

enter image description here

+0

解析單元格值XML謝謝@Jeped! – RanonKahn

+0

不錯的一個Jeeped! – ryguy72

相關問題