| 
    
     |  | 似たような質問が多数あったのですが、どれを読んでもうまく いかなかったので、改めて質問させて頂きます。
 
 
 ************* 質 問 内 容 *************
 
 表が用意されているのですが、表の行数が200前後と多いため、
 文字列による検索をかけます。
 
 F列に表の各行の文字列を全て表示させ、
 ユーザーフォームの入力欄(TextBox1)にて入力した文字列があれば、
 隣(G列)のセルに「1」を立てて、後にG列に「1」が立っている行について
 オートフィルタにて結果を出します。
 
 表の行数は、変動します。
 
 私が考えた結果は、下記の通り
 
 Dim a
 a = TextBox1
 Dim x As Long, y
 x = Range("F3").CurrentRegion.Rows.Count
 y = x - 4
 Dim i As Integer
 For i = 4 To y
 Cells(i, 6).Select
 Dim s As Range
 Set s = ActiveCell.Find(what:=a, lookat:=xlPart)
 If s Is Nothing Then
 ActiveCell.Offset(0, 1).Value = 1
 Else
 ActiveCell.Offset(0, 1).Value = ""
 End If
 Next
 
 これだと、表の中に一致する文字列があれば
 G列の全ての行に「1」を立ててしまうようです。
 
 どこが間違っているのか分かりません。
 どうかご教示願います。
 
 |  |