Convertir varias hojas en una sola hoja

14/07/2009 - 14:23 por IOO (EXCEL HOJAS) | Informe spam
Hola:

Alguien sabe si es posible pasar un libro de varias hojas a uno solo de una
sola hoja.

No son tablas a consolidar sencillamente es que aparezcan todos los datos
seguidos

Gracias

Preguntas similare

Leer las respuestas

#1 Juan M
14/07/2009 - 15:16 | Informe spam
"IOO (EXCEL HOJAS)" escribió
Hola:

Alguien sabe si es posible pasar un libro de varias hojas a uno solo de
una
sola hoja.

No son tablas a consolidar sencillamente es que aparezcan todos los datos
seguidos

Gracias



Hola,

Puedes hacerlo por medio de macros. El problema está en que no sabemos que
rangos empleas, ni si las hojas son iguales, llevan encabezados,...
Si comentas como es el arreglo de las hojas se puede mejorar el siguiente
código.

Crea una hoja nueva llamada Resumen donde copia el rango en uso del resto de
hojas.
Si ya existiera esa hoja resumen arrojará un error. Probablemente aparezcan
más cosas pero para una primera aproximación espero que valga.

Comentas más detalles?

Un saludo,
Juan

(en un modulo estándar)

Sub CopiaResumen()
Dim Hoja As Worksheet

ThisWorkbook.Worksheets.Add after:=Worksheets(ThisWorkbook.Sheets.Count)
ActiveSheet.Name = "Resumen"

For Each Hoja In ThisWorkbook.Worksheets
If Hoja.Name <> "Resumen" Then
Hoja.UsedRange.Copy Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
Next Hoja
Range("A1").EntireRow.Delete
End Sub

End Sub
Respuesta Responder a este mensaje
#2 IOO (EXCEL HOJAS)
14/07/2009 - 15:24 | Informe spam
Hola Juan:

Gracias por tu respuesta, en principio quiero convertir un libro con varias
hojas (el número de hojas varia de un libro a otro) y refundirlas todas en
una sola hoja. Voy a probar tu macro y te digo algo.

Gracias de nuevo

Iñaki

"Juan M" escribió:


"IOO (EXCEL HOJAS)" escribió
> Hola:
>
> Alguien sabe si es posible pasar un libro de varias hojas a uno solo de
> una
> sola hoja.
>
> No son tablas a consolidar sencillamente es que aparezcan todos los datos
> seguidos
>
> Gracias

Hola,

Puedes hacerlo por medio de macros. El problema está en que no sabemos que
rangos empleas, ni si las hojas son iguales, llevan encabezados,...
Si comentas como es el arreglo de las hojas se puede mejorar el siguiente
código.

Crea una hoja nueva llamada Resumen donde copia el rango en uso del resto de
hojas.
Si ya existiera esa hoja resumen arrojará un error. Probablemente aparezcan
más cosas pero para una primera aproximación espero que valga.

Comentas más detalles?

Un saludo,
Juan

(en un modulo estándar)

Sub CopiaResumen()
Dim Hoja As Worksheet

ThisWorkbook.Worksheets.Add after:=Worksheets(ThisWorkbook.Sheets.Count)
ActiveSheet.Name = "Resumen"

For Each Hoja In ThisWorkbook.Worksheets
If Hoja.Name <> "Resumen" Then
Hoja.UsedRange.Copy Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
Next Hoja
Range("A1").EntireRow.Delete
End Sub

End Sub




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida