Búsqueda en un documento con mútiples hojas

17/12/2003 - 15:42 por Alfons Fernandez | Informe spam
Hola,

Tengo un documento de múltiples hojas, un por año, y en cada hoja un matriz
con nombres de trabajadores en la primera columna (un mismo nombre puede
repetirse varias veces en una misma hoja) y información relevante en las
siguientes columnas.
Necesito preparar una búsqueda que me "arrastre" a una hoja nueva toda la
información relativa a un mismo trabajador, para todos los años en que haya
sido registrado en alguna de las hojas del documento.
Dicho de otra manera. La búsqueda debe permitir que para un mismo trabajador
buscado reciba múltiples respuestas y las copie en una hoja en blanco. Es
posible?
 

Leer las respuestas

#1 Fernando Arroyo
17/12/2003 - 18:10 | Informe spam
Una posibilidad:


Sub Resumen()
Dim wks As Worksheet
Dim wksResumen As Worksheet
Dim rng As Range

Application.ScreenUpdating = False

Set wksResumen = Worksheets("Resumen")
wksResumen.Cells.Delete 'Borrar los datos anteriores en la hoja resumen

With wksResumen
.Range("A1") = "Título1" 'Estos serían los títulos en la hoja Resumen
.Range("B1") = "Título2"
End With

For Each wks In Worksheets
If wks.Name <> "Resumen" Then
wks.Range("A1").CurrentRegion.AutoFilter field:=1, Criteria1:="b"
wks.AutoFilter.Range.Offset(1).Resize(wks.AutoFilter.Range.Rows.Count - 1).SpecialCells(xlCellTypeVisible).Copy Destination:=wksResumen.Range("A" & wksResumen.Range("A65536").End(xlUp).Row + 1)
wks.Range("A1").AutoFilter
End If
Next wks

Application.ScreenUpdating = True

Set rng = Nothing
Set wksResumen = Nothing
Set wks = Nothing
End Sub


Para que el código funcione tiene que haber una hoja en el libro llamada Resumen, que será donde se pongan todas las filas que cumplan el criterio. Tal como está el código, el criterio sería todas las filas de cada hoja cuya celda de la columna A = "b", lo que se determina en la instrucción

wks.Range("A1").CurrentRegion.AutoFilter field:=1, Criteria1:="b"

Ten en cuenta que cada vez que ejecutes el código la hoja Resumen será borrada por completo para poner los nuevos datos.
Un saludo.


Fernando Arroyo
MS MVP - Excel


"Alfons Fernandez" escribió en el mensaje news:
Hola,

Tengo un documento de múltiples hojas, un por año, y en cada hoja un matriz
con nombres de trabajadores en la primera columna (un mismo nombre puede
repetirse varias veces en una misma hoja) y información relevante en las
siguientes columnas.
Necesito preparar una búsqueda que me "arrastre" a una hoja nueva toda la
información relativa a un mismo trabajador, para todos los años en que haya
sido registrado en alguna de las hojas del documento.
Dicho de otra manera. La búsqueda debe permitir que para un mismo trabajador
buscado reciba múltiples respuestas y las copie en una hoja en blanco. Es
posible?


Preguntas similares