Foros del Web » Soporte técnico » Ofimática »

Separar columnas de excel en páginas

Estas en el tema de Separar columnas de excel en páginas en el foro de Ofimática en Foros del Web. Buenas a todos, tengo un programa que me exporta datos a excel de una forma poco útil. Me gustaría dividir en grupos de cuatro en ...
  #1 (permalink)  
Antiguo 30/11/2011, 16:57
 
Fecha de Ingreso: noviembre-2011
Mensajes: 7
Antigüedad: 12 años, 4 meses
Puntos: 0
Separar columnas de excel en páginas

Buenas a todos,
tengo un programa que me exporta datos a excel de una forma poco útil.
Me gustaría dividir en grupos de cuatro en cuatro columnas, y ponerlos en pestañas separadas. Voy a tener en torno de 1000 de estos grupos y dividirlos cortando y pegando, va a ser muy "estresante"; a ver si me podéis echar una mano.

Muchísimas gracias!
  #2 (permalink)  
Antiguo 30/11/2011, 17:46
 
Fecha de Ingreso: noviembre-2011
Mensajes: 7
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Separar columnas de excel en páginas

Me he dado cuenta que puede ser un poco confuso.

Os adjunto un archivo xlsx con el problema que tengo.
Como veréis los datos están separados en grupos de 4 columnas, pues me gustaría dividir esos grupos de de datos, cada uno en una "pestaña".

¿Sé puede hacer?

Muchas gracias nuevamente,

El archivo es este:
[URL="http://www.megaupload.com/?d=0EZXX3FA"]http://www.megaupload.com/?d=0EZXX3FA[/URL]
  #3 (permalink)  
Antiguo 01/12/2011, 08:56
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 1 mes
Puntos: 88
De acuerdo Respuesta: Separar columnas de excel en páginas

Hola! Álvaro.
Una de dos: o eres un usuario principiante del Excel (en cuyo caso requieres un tipo de orientación), o tienes una dificultad que no queda muy claramente explicitada.

Veamos entonces: ¿Qué es lo que te impide seleccionar las cuatro columnas F:I (por ejemplo), cortar esas celdas y pegarlas en otra hoja (la Hoja2, por ejemplo)?...

Tu respuesta a lo anterior servirá para orientarnos, ¿OK?.
Saludos, Cacho R.
  #4 (permalink)  
Antiguo 01/12/2011, 13:01
 
Fecha de Ingreso: noviembre-2011
Mensajes: 7
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Separar columnas de excel en páginas

Claro lo que tengo que hacer es simple:
Copiar y pegar cuatro columnas de una pestaña a otra y después cortar las otras cuatro columnas y volver a pegarlas en otra pestaña y así sucesivamente 1000 veces.

Y si soy un usuario bastante amateur, me has calado. ;)

Muchas gracias por tu respuesta, un saludo
  #5 (permalink)  
Antiguo 01/12/2011, 15:48
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 1 mes
Puntos: 88
Respuesta: Separar columnas de excel en páginas

¡Ahí va queriendo!... (jajajaja)

Explica mejor lo de las 1000 veces puesto que tú muestras -tan solo- dos grupos de datos a trasladar.

Por ejemplo: ¿donde están y cómo están dispuestos los otros datos? ¿Qué nombres deseas darles a las hojas nuevas?...

Cualquier otro dato útil que se te ocurra brindar será de consideración.
  #6 (permalink)  
Antiguo 02/12/2011, 11:52
 
Fecha de Ingreso: noviembre-2011
Mensajes: 7
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Separar columnas de excel en páginas

Muchísimas gracias mrocf.
Ya he descubierto la forma de hacer lo que quería, te adjunto un archivo con la macro.
http://www.megaupload.com/?d=J5AIWKHY

Basta con pulsar Cntrl + r y sale lo que quería.

:)


Perdona que te siga preguntando, pero sabrías como hacer para que guardara cada una de las nuevas hojas en un libros separados y que renombre esos libros con los nombre que tengo en la pestaña "Nombres".
De forma que el primer libro se llame "Nombre 1", el segundo libro "nombre 2" etc.

En la pestaña nombres tengo un ejemplo, los nombres que puede haber, pueden llegar hasta mil.

Espero esta vez haberme explicado bien...

Muchas gracias!
  #7 (permalink)  
Antiguo 02/12/2011, 12:09
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 1 mes
Puntos: 88
Respuesta: Separar columnas de excel en páginas

De momento megaupload informa que tu archivo no está disponible.
Por ello esperaremos un par de horas para ver si el servicio se recompone...
  #8 (permalink)  
Antiguo 02/12/2011, 14:49
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 1 mes
Puntos: 88
De acuerdo Respuesta: Separar columnas de excel en páginas

Te sugeriría que reemplaces la macro que tienes por esta otra variante:
Código PHP:
Sub LibrosPorGrupos()
Dim lastCol As Integerii As Integer
Dim myPath 
As StringnewName As Stringfso As Object

If ThisWorkbook.Path = Empty Then
  MsgBox 
"Debes -primero- guardar este libro..."
  
End
End 
If
Application.ScreenUpdating False
myPath 
ThisWorkbook.Path "\PorGrupos"
Set fso CreateObject("Scripting.FileSystemObject")
If 
fso.FolderExists(myPathThen
  fso
.DeleteFolder (myPath)
End If
fso.CreateFolder myPath
Set fso 
Nothing

lastCol 
Cells(3Columns.Count).End(xlToLeft).Column

For ii 1 To lastCol Step 5
  With Worksheets
("Nombres").Cells(1, (ii) / 5)
    If .
Value "" Then
      newName 
myPath "\_SinNombre " & .Column
    
Else
      
newName myPath "\" & .Value
    End If
  End With

  Range(Cells(1, ii), Cells(Rows.Count, ii).End(xlUp)).Resize(, 4).Copy
  Workbooks.Add xlWBATWorksheet
  ActiveSheet.Paste
  ActiveWorkbook.Close True, newName
Next ii

Application.ScreenUpdating = True
Shell "
Explorer " & myPath, vbMaximizedFocus
End Sub 
Y ejecútala teniendo la hoja Hoja1 (o como sea que la llames) seleccionada.

¿Te puede servir?...
Saludos, Cacho R.
  #9 (permalink)  
Antiguo 03/12/2011, 07:33
 
Fecha de Ingreso: noviembre-2011
Mensajes: 7
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Separar columnas de excel en páginas

Mucísimas gracias
me sale un mensaje de error que dice: "Subindice fuera de intervalo" he intentado buscarle solución pero no he dado con ella.

Por cierto voy a crear otro tema con la segunda consulta por si a otras personas le interesa, que puedan encontrarlo más fácilmente.


Otrav vez, muchas gracias.
  #10 (permalink)  
Antiguo 03/12/2011, 09:33
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 1 mes
Puntos: 88
Respuesta: Separar columnas de excel en páginas

Hola! Álvaro.
Seguramente ya has tenido la oportunidad de verificar que el código sugerido funciona perfectamente bien en el ejemplo que tú mismo has mostrado.

Ello implica que has cometido un error en la implementación -posiblemente- modificando "algo" en la estructura de tus datos, y no has acompañado ese cambio con el pertinente ajuste del código.

Te diría -entonces- que muestres tu implementación junto a la estructura actual de tus datos para orientarte.

Saludos, Cacho R.
  #11 (permalink)  
Antiguo 04/12/2011, 15:42
 
Fecha de Ingreso: noviembre-2011
Mensajes: 7
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Separar columnas de excel en páginas

mrocf, no cambié nada, copié y pegúe el código no he cambiado nada. Me señala que la línea a depurar es la siguiente:
With Worksheets("Nombres").Cells(1, (4 + ii) / 5)

Lo he mirado en el ejemplo pasé y no funciona.

Muchas gracias!
  #12 (permalink)  
Antiguo 04/12/2011, 19:12
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 1 mes
Puntos: 88
Respuesta: Separar columnas de excel en páginas

El mensaje de error te indica que la hoja llamada "Nombres" no ha sido encontrada en tu libro...

Si no es ése tu error entonces -te insisto- deberías subir tu libro para ver los datos (o -al menos- una pequeña parte de ellos) y la implementación que has realizado.

Saludos, Cacho R.

Etiquetas: excel, hojas, pestañas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:31.