私はしばらくこれを試してきました。私はもうすぐそこにいますが、私のVBAスキルはこれを成し遂げるには少し足りません. ワークシートに、いくつかのキーワードのすべてのインスタンスを検索して見つける必要があるテキストがあります。
理想的には、2 番目のワークシートの範囲内にキーワードを配置します。私はそれを理解することはできません。以下を使用して固定配列を検索できましたが、ワークシート自体から単語を取得する次のステップに進む方法がわかりません。
Sub X()
Dim vntWords As Variant
Dim lngIndex As Long
Dim rngFind As Range
Dim strFirstAddress As String
Dim lngPos As Long
vntWords = Array("sales", "job")
With ActiveSheet.UsedRange
For lngIndex = LBound(vntWords) To UBound(vntWords)
Set rngFind = .Find(vntWords(lngIndex), LookIn:=xlValues, lookat:=xlPart)
If Not rngFind Is Nothing Then
strFirstAddress = rngFind.Address
Do
lngPos = 0
Do
lngPos = InStr(lngPos + 1, rngFind.Value, vntWords(lngIndex), vbTextCompare)
If lngPos > 0 Then
With rngFind.Characters(lngPos, Len(vntWords(lngIndex)))
.Font.Bold = True
.Font.Size = .Font.Size
.Font.ColorIndex = 3
End With
End If
Loop While lngPos > 0
Set rngFind = .FindNext(rngFind)
Loop While rngFind.Address <> strFirstAddress
End If
Next
End With
サブ終了