teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2019/08/29 05:04

投稿

mattuwan
mattuwan

スコア2167

answer CHANGED
@@ -1,4 +1,36 @@
1
1
  >11行目の「For j = 2 To MaxRow」に戻らず、12行目の「Cells(i, 8).Select」に戻って
2
2
  >ループしてしまいます。
3
3
  それで何が不都合なのでしょう、
4
- For・・・のところは2回目以降、黄色くならないのが正常です。
4
+ For・・・のところは2回目以降、黄色くならないのが正常です。
5
+
6
+ ```ExcelVBA
7
+ Sub test()
8
+ Dim c As Range
9
+ Dim strKeyWord As String
10
+ Dim i As Long, j As Long, k As Long
11
+ Dim s As String
12
+
13
+ strKeyWord = Cells(Rows.Count, "H").End(xlUp).Value
14
+ k = Len(strKeyWord)
15
+ If k = 0 Then
16
+ MsgBox "検索文字が入力されていません。"
17
+ Exit Sub
18
+ End If
19
+
20
+ For Each c In Range(Cells(1, "E"), Cells(Rows.Count, "E").End(xlUp))
21
+ s = c.Value
22
+ i = 1
23
+ Do
24
+ j = InStr(i, s, strKeyWord)
25
+ If j > 0 Then
26
+ c.Characters(j, k).Font.Color = vbRed
27
+ i = j + 1
28
+ Else
29
+ Exit Do
30
+ End If
31
+ Loop
32
+ Next
33
+ End Sub
34
+ ```
35
+ やりたいことはこういう事でしょうか?
36
+ 探す文字列も複数あるのですかね?