|
Len
も必要になってきますね。
↓はアクティブシートの使用セル範囲のセルの文字列のうち、
指定文字列のみ色を付けるサンプルです。
Sub test()
Dim c As Range
Dim r As Range
Dim mykey As String
Dim sp As Variant
Dim i As Integer
Dim mystr As String
Dim startnum As Integer
Dim lengthnum As Integer
mykey = "鈴木三郎" '色を着ける文字列
Set r = ActiveSheet.UsedRange
For Each c In r
If c.Value Like "*" & mykey & "*" Then
sp = Split(c.Value, mykey)
For i = 0 To UBound(sp)
If i = 0 Then
startnum = 1
Else
startnum = startnum + Len(sp(i - 1)) + Len(mykey)
End If
With c.Characters(Start:=startnum, Length:=Len(sp(i))).Font
.ColorIndex = xlAutomatic
End With
With c.Characters(Start:=startnum + Len(sp(i)), Length:=Len(mykey)).Font
.ColorIndex = 3
End With
Next i
End If
Next
End Sub
セルの内容が、名前を必ず"・"で区切って入力しているのなら、もっと簡単になるかもしれ
ません。
|
|