Crear hojas nuevas a partir de una de un libro

Hola,
a partir de una hoja normal, con una serie de filas y columnas, quisiera crear en ese mismo libro, una hoja nueva que rellene una serie de campos de una "plantilla". Creo que debe ser una cosa más o menos normal porque lo veo útil.
Gracias por tu interés,
saludos
Respuesta
1
De pronto he visto esta pregunta tuya, de hace un montón de tiempo, no sé si te sigue interesando la pregunta. Si es así, especifícame un poco más y prometo contestarte con rapidez. Si lo prefieres, mi correo es jherranzvillasol arroba hotmail.com.
Casualmente HOY ha cambiado en mi trabajo algo que hace que no deba preocuparme, jajaja. Pero sí me interesa mucho saberlo, ¡Gracias!
La idea es que a partir de una hoja con un listado de datos en filas, de (p.ej) nombre, dirección, dato_1, dato_2, dato_n, genere, para cada fila, una hoja nueva, donde se rellenen estos datos de cada fila en la celda correspondiente, conforme a una plantilla o formato. Una cosa parecida sería, por ejemplo, para generar facturas a partir de un listado sencillo. (Por eso supongo que no será algo muy raro)
Gracias por tu atención.
Pues la verdad, es interesante la pregunta que planteas, pero te comento que no hay ninguna manera directa de hacerlo, sólo mediante programación. Para ello supondremos el siguiente ejemplo: tenemos una hoja llamada "Datos", donde se encuentran los registros. Los encabezados se encuentran en el rango A1:D1, y supondremos que son los siguientes:Nombre, Dirección, Dato1 y Dato2.
Tenemos otra hoja llamada "Plantilla", y aquí cada dato irá en una celda correspondiente. Bien, supón que el nombre va a la celda B5. Sitúate en la celda B5, ve al cuadro de nombre (Es el rectángulo que aparece en la parte superior izquierda de la pantalla) y escribe Nombre. Cuando pulses intro, si todo ha ido bien, cada vez que te sitúes en B5, en vez de B5 en el cuadro de nombres te aparecerá "Nombre". Haz lo mismo para los demás datos (Dirección, dato1, dato2). Ahora ve al editor de Visual Basic (Alt+F11), ve a Insertar-Módulo y allí pega el siguiente código:
Sub Plantilla()
Sheets("Datos"). Activate
Range("A2"). Activate
While ActiveCell.Value <> ""
'se colocan los datos en la hoja Plantilla
Range("nombre").Value = ActiveCell.Value
Range("direccion").Value = ActiveCell.Offset(0, 1).Value
Range("dato1").Value = ActiveCell.Offset(0, 2).Value
Range("dato2").Value = ActiveCell.Offset(0, 3).Value
'se copia la hoja plantilla y se pega en una nueva hoja
Sheets("Plantilla"). Cells. Copy
Sheets. Add
ActiveSheet. Paste
'se vuelve a activar la hoja datos, para ir al siguiente registro
Sheets("Datos"). Activate
ActiveCell.Offset(1, 0). Activate
Wend
End Sub
Cierra el editor de visual basic, y con ésto ya lo tienes. Ahora ve a Herramientas-Macro-Macros, y te aparecerá un cuadro con la macro "Plantillas". Si pinchas en "Ejecutar", te aparecerán tantas hojas como registros. Si te queda cualquier duda, vuelve a preguntarme y con gusto te ayudo. Si te sirvió.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas