0
我只想上色姓氏。 例如:如何在Excel中給姓氏上色姓名
Rohit Kumar Singh
Rahul Ranjan Singh
Kaushal Kishor Singh
我想唯一的顏色姓氏。有或沒有vba是可能的。
我只想上色姓氏。 例如:如何在Excel中給姓氏上色姓名
Rohit Kumar Singh
Rahul Ranjan Singh
Kaushal Kishor Singh
我想唯一的顏色姓氏。有或沒有vba是可能的。
在VBA這將做到這一點:
Sub rohit()
Dim cel As Range
Dim i As Integer
For Each cel In Selection.Cells
If cel.value <> "" Then
Dim lastname As String
if Ubound(Split(cel, " ")) > 0 then
lastname = Split(cel, " ")(1)
Else
lastname = cel.Value
End If
For i = 1 To Len(cel)
If Mid(cel, i, Len(lastname)) = lastname Then
cel.Characters(i, Len(lastname)).Font.Color = vbRed
Exit For
End If
Next i
End If
Next cel
End Sub
這將改變字符串中的第二個字。
到哪個字被改變的關鍵是與這一行:
lastname = Split(cel, " ")(1)
的Split
函數返回一個陣列中,第一個字是0,第二個爲1,等等。函數後面的數字表示返回該數組中的哪個單詞。
如果單詞的數量是未知的,最後一個字是希望再使用:
lastname = Split(cel, " ")(Ubound(Split(cel, " ")))
這得到了數組上限或最後一個。如果你想第二個持續時間,它會改變然後使用:
lastname = Split(cel, " ")(Ubound(Split(cel, " "))-1)
這將允許您根據您所需的模式得到任何字。
也是基於選擇。
@rohitsingh爲您完成這項工作? –
非常感謝。 –
@RohitSingh如果有幫助,請考慮標記爲正確。 –