このvba subを実行すると、変数Temp1とSearchで返された値はセルの内容であり、セルのアドレスを持つ範囲変数ではありません。excel 2010 vba "find"関数が内容を返します
コードはここにある:
Sub updateFDFList(Fname As String)
' Check for worksheet existence
'last filled row
Dim lastLine As Long
lastLine = Worksheets("FDFFiles").Range("A" & Rows.Count).End(xlUp).row
If lastLine = 1 Then
'List Is Empty
Worksheets("FDFFiles").Cells(2, 1).Value = Fname
Worksheets("FDFFiles").Cells(2, 2).Value = "No"
Else
'Search column A for match
Dim Search As Range
S1 = "A2:A" & lastLine
With Range(S1)
Temp1 = .Find(Fname)
Search = .Find(Fname, LookAt:=xlWhole, MatchCase:=True)
If Search Is Nothing Then
Dim newLine
newLine = lastLine + 1
Worksheets("FDFFiles").Cells(newLine, 1).Value = Fname
Worksheets("FDFFiles").Cells(newLine, 2).Value = "No"
End If
End With
End If
End Sub
あなたは範囲オブジェクトを設定する必要があります: 'セットの検索= .Find(FNAME、 LookAt:= xlWhole、MatchCase:= True) ' –