我有一列数据 (A)。 (A) 列中每个单元格中的数据一半是一种颜色,一半是另一种颜色。例如,假设字符串的第一部分是红色,字符串的第二部分是黑色。每个单元格内的红色和黑色字符串的长度不同,没有模式。红色和黑色的字符类型不同,没有图案。每个单元格内没有空格或特殊字符将红色字符与黑色字符分开。我想使用公式或函数提取每个单元格中的红色字符并将其复制到新列 (B) 中。有建议吗?
(A)原版......(B)红色
abjksglkjaf......abjk
kjd3kdn9j............kjd3kd
2hn89dslkjh.........2hn
最佳答案
您可以使用此用户定义的函数:
Function redPart(x As Range) As String
Dim res As String
With x
For i = 1 To Len(.Value)
' red = RGB(255, 0, 0)
If .Characters(i, 1).Font.Color = RGB(255, 0, 0) Then
res = res & .Characters(i, 1).Text
End If
Next
End With
redPart = res
End Function
只需在单元格 B1
中写入公式 =redPart(A1)
并将其向下拖动即可。
结果:
关于excel - 如何从具有多种颜色文本的单元格中根据字体颜色提取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21514704/