
Buscar en varias hojas con una macro
Publicado por Jose (3 intervenciones) el 23/10/2015 19:35:09
Hola,
estoy intentando hacer un libro excel en el que poniendo la fecha en $B$2, busca en otro libro excel. Este otro libro excel tiene 52 o 53 hojas que son las semanas del año y en cada hoja hay un horario con todos los días de la semana y te devuelve $C5 que es a la hora que empieza esa persona a trabajar, el problema es que todas las semanas tengo que cambiar en la formula el numero de la semana, aquí os dejo el ejemplo debajo.
Mi pregunta es si me podéis ayudar a crear una Macro que busque en las 52 o 53 hojas que tiene el otro libro y devuelva el dato de la celda $C5. Adjunto una foto de la pantalla del libro en en que tengo que buscar.

He encontrado este código que os adjunto abajo pero no busco en V. Espero que me podáis ayudar. Gracias de antemano.
estoy intentando hacer un libro excel en el que poniendo la fecha en $B$2, busca en otro libro excel. Este otro libro excel tiene 52 o 53 hojas que son las semanas del año y en cada hoja hay un horario con todos los días de la semana y te devuelve $C5 que es a la hora que empieza esa persona a trabajar, el problema es que todas las semanas tengo que cambiar en la formula el numero de la semana, aquí os dejo el ejemplo debajo.
1
=IFERROR(LOOKUP($B$2,[ROTA.xlsx]wk43!$C$3:$P$3,[ROTA.xlsx]wk43!$C5),"")
Mi pregunta es si me podéis ayudar a crear una Macro que busque en las 52 o 53 hojas que tiene el otro libro y devuelva el dato de la celda $C5. Adjunto una foto de la pantalla del libro en en que tengo que buscar.

He encontrado este código que os adjunto abajo pero no busco en V. Espero que me podáis ayudar. Gracias de antemano.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Function BUSCARVMultiple(Valor_buscado As Variant, Matriz_buscar_en As Range, _
Indicador_columnas As Integer, Optional Ordenado As Boolean)
On Error Resume Next
For Each Hoja In ActiveWorkbook.Worksheets
Matriz = Hoja.Range(Matriz_buscar_en.Address)
Encontrado = WorksheetFunction.VLookup _
(Valor_buscado, Matriz, _
Indicador_columnas, Ordenado)
If Not IsEmpty(Encontrado) Then Exit For
Next Hoja
Set Matriz = Nothing
BUSCARVMultiple = Encontrado
End Function
Valora esta pregunta


0