Access VBAを使用して、指定されたデータをExcel rowに見つけることができますか

StackOverflow https://stackoverflow.com//questions/22049454

  •  21-12-2019
  •  | 
  •  

質問

私はExcelの行で指定されたデータを見つけようとしています。行範囲A1からのように、A1Jの場合、データ "プロセス"が1つだけです。特定の範囲内のそのデータが見つかった場合は、ここに「見つかった」というメッセージをポップアップする必要があります。

         Dim ExcelApp As New Excel.Application
         Dim ExcelBook As New Excel.Workbook
         Dim rng As Excel.Range
         Dim rngDefine As Excel.Range

         Set ExcelBook = ExcelApp.Workbooks.Open("C\temp\find.xlsm")
         ExcelApp.Visible = False       
        'Define your own Range
         Set rngDefine = ExcelBook.Worksheets("Datatab").Range("A1:AJ1")

         'ExcelBook.Worksheets("Datatab").Range ("A1:AJ1")

         Set c = .Find("Process", LookIn:=xlValues)
         For Each rng In rngDefine
         If c = "Process" Then
         MsgBox "Found"
         End If
           Next

         ExcelApp.Quit
         Set ExcelApp = Nothing
.

機能していません。私は追加する必要があるフルトゥールコード?

役に立ちましたか?

解決

最初のアプローチ(Slighlty Faster):

Set rngDefine = ExcelBook.Worksheets("Datatab").Range("A1:AJ1")

If IsError(ExcelApp.Match("Process", rngDefine, 0)) Then
    MsgBox "Not found"
Else
    MsgBox "Found"
End If
.

2番目のアプローチ:

Dim c As Excel.Range

Set rngDefine = ExcelBook.Worksheets("Datatab").Range("A1:AJ1")

Set c = rngDefine.Find(What:="Process", LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=False)

If c Is Nothing Then
    MsgBox "Not found"
Else
    MsgBox "Found"
End If
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top