Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Public Function Rastreator(Valores() As String, hBusca As Worksheet, ColsBusca() As Integer, ColsRes() As Integer) As String()
- Dim iFila As Integer, iVal As Integer
- Dim bEncontrado As Boolean
- Dim iRes As Integer, Arr_Res() As String
- If UBound(Valores) <> UBound(ColsBusca) Then
- MsgBox "Los Valores de Búsqueda y las Columnas de Búsqueda deben tener los mismos Elementos"
- Exit Function
- End If
- '*** Recorremos las Filas de la Hoja de Búsqueda
- For iFila = 2 To hBusca.UsedRange.Rows.Count
- ReDim Arr_Res(0)
- bEncontrado = True
- '**** Recorremos el Array con los Valores a Buscar y los comparamos con el valor equivalente
- For iVal = 0 To UBound(Valores) - 1
- '**** Mientras hay Coincidencia entre los Valores a Buscar y los Rangos de las Columnas equivalentes de Búsqueda Continuamos buscando
- If Trim(UCase(Valores(iVal))) <> Trim(UCase(hBusca.Cells(iFila, ColsBusca(iVal)))) Then
- bEncontrado = False: Exit For
- End If
- Next
- '**** Si han Coincidido todos los Valores Devolvemos el Array con los resultados
- If bEncontrado Then
- For iRes = 0 To UBound(ColsRes) - 1
- ReDim Preserve Arr_Res(iRes)
- Arr_Res(iRes) = Trim(hBusca.Cells(iFila, ColsRes(iRes)))
- Next
- Rastreator = Arr_Res: Exit Function
- End If
- Next
- End Function
Advertisement
Add Comment
Please, Sign In to add comment