Dim r As Variant r = Application.WorksheetFunction.Match("てきとう", TargetBook.Sheets("word").Range("A1:A20000"), 0)返り値 r には 行番号が入っています。
しかしながら、範囲内に検索文字がない場合にError となりますので、対応します。
Sub test() Dim r As Long r = 0 On Error Resume Next r = Application.WorksheetFunction.Match("てきとう", TargetBook.Sheets("word").Range("A1:A20000"), 0) On Error GoTo 0 If r = 0 Then Exit Sub End Subまた、Err.Numberを確認することで発生したErrorを特定することもできます。
Sub test() Dim r As Long r = 0 On Error Resume Next r = Application.WorksheetFunction.Match("てきとう", TargetBook.Sheets("word").Range("A1:A20000"), 0) On Error GoTo 0 If Err.Number > 0 Then Err.Clear '次のエラーのためにクリアしておく Exit Sub End If End Sub
0 件のコメント:
コメントを投稿