Comment trouver des données spécifiées dans une ligne Excel utilisant Access VBA

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

  •  21-12-2019
  •  | 
  •  

Question

J'essaie de trouver des données spécifiées dans une ligne Excel.Comme de la gamme de lignes A1: A1J, une seule cellule utilise des données "processus".Si je trouve ces données dans une plage donnée, je dois afficher le message "trouvé" Voici mon code

         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

ne fonctionne pas.Tout code de démarrage que j'ai besoin d'ajouter?

Était-ce utile?

La solution

première approche (Slighlty plus rapide):

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

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

deuxième approche:

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top