VBA Excel - VLookAllBooks - Pesquise em mais de uma planilha simultâneamente.


Imagine-se podendo pesquisar em mais de uma planilha do MS Excel ao mesmo tempo em busca de um determinado valor. Gostaria de poder fazê-lo?

Todos conhecemos o VLOOKUP ou o HLOOKUP. Estamos cientes da sua aplicabilidade e utilidade.

O código a seguir permite usarmos PROCV para olharmos em todas as planilhas, parando assim que encontrar o valor procurado.


Function vlookallbooks _
(Look_Value As Variant, Tble_Array As Range, Col_num As Integer, Range_look As Boolean, ParamArray wkbks())


Dim wSheet As Worksheet

Dim vFound

Dim searchBook As Workbook

Dim found As Boolean



On Error Resume Next



Let found = False



For Each wkbk In wkbks

Set searchBook = Workbooks(wkbk)



For Each wSheet In searchBook.Worksheets



With wSheet



Set Tble_Array = .Range(Tble_Array.Address)



Let vFound = WorksheetFunction.VLookup(Look_Value, Tble_Array, Col_num, Range_look)

End With



If Not IsEmpty(vFound) Then

Let found = True

Exit For

End If


Next wSheet


If found = True Then Exit For

Next wkbk



Set Tble_Array = Nothing



Let vlookallbooks = vFound

End Function

Modo de usar:


=vlookallbooks ( "André", A1:F5,2,False, "Dash001.xlsb","Dash002.xlsb","Mybook.xlsm")


Tags: VBA, vlookup, hlookup, vlookallbooks



Nenhum comentário:

Postar um comentário

diHITT - Notícias