Macro Excel para crear una hoja nueva y copiar contenidos

Estoy intentando crear una macro para que a partir de un listado en la hoja "Base de Datos".

1. Cree una hoja nueva con el nombre de la celda "f5" de la hoja "Base de Datos"

2. Copie varias celdas g5, g12, g13... De la hoja "Base de Datos"

3. Las pegue en la nueva hoja creada

4. Repita la acción con f6, f7, f8... Hasta finalizar el listado.

1 respuesta

Respuesta
1

¿Quieres crear una hoja nueva por cada dato que aparece en la columna "F" desde F5 hasta el final de los datos?

Quieres copiar g5, g12, ¿g13 y en dónde los quieres pegar? ¿Puedes poner todas las celdas que quieres copiar y exactamente en dónde quieres pegar cada celda?

Lo primero muchas gracias y me voy a intentar explicar mejor, tienes toda la razón.

Tengo una hoja llamada Base de Datos con una tabla de datos amplia. De ahí, quiero extraer información por fila para cada hoja, es decir, una hoja para la fila 5, otra para la fila 6... 

El nombre que quiero que ponga es el texto de la columna f, de forma que la primera hoja creada se llamará igual que el texto de f5, la segunda igual que el texto de f6...

El resto de celdas, en realidad lo que quiero hacer es unir diferentes textos, dado que lo que quiero crear es un documento, por hoja donde iré insertando textos de diferentes celdas, por ejemplo:

celda g5 = "Estimado"

celda h5 = "Doctor "

celda i5 = "Martínez"

Para que la hoja que cree se llame como f5 y ponga automáticamente "Estimado Doctor Martínez"

Pero en la línea 6 podría ser:

Celda g6 = "Estimada"

celda h6 = "Doctora"

celda i6 = "Pérez"

Dado como resultado una hoja nueva con el nombre de la celda f6 y el texto "Estimada Doctora Pérez"

En cada celda querría pegar el texto en la celda a1.

Soy nuevo en esto de las macros y he estado buscando en varios sitios cómo hacerlo o cómo combinar lo que he ido encontrando, pero no soy capaz de hacerlo.

Muchas gracias.

Creo que ahora entendí menos.

No te preocupes por la macro, no tienes que saber de macros para explicar lo que necesitas.

Explica con ejemplos reales lo que necesitas.

  1. ¿Qué tienes en la celda F5?
  2. ¿Cómo quieres que se llame la hoja nueva?
  3. ¿Exactamente Qué tienes en las celdas G5, H5, I5?
  4. ¿Esos tres datos exactamente en dónde los quieres
  5. Qué tienes en la celda F6?
  6. ¿Cómo quieres que se llame la hoja nueva?
  7. Exactamente Qué tienes en las celdas G6, H6, I6
  8. Esos tres datos exactamente en dónde los quieres
  1. ¿Qué tienes en la celda F5? Nombre de una persona
  2. ¿Cómo quieres que se llame la hoja nueva? Con el nombre que figura en la celda f5
  3. ¿Exactamente Qué tienes en las celdas G5, H5, I5? Texto, que quiero concatenar.
  4. ¿Esos tres datos exactamente en dónde los quieres? En la hoja nueva creada, en la celda a1 de forma concatenada
  5. Qué tienes en la celda F6? Nombre de otra persona
  6. ¿Cómo quieres que se llame la hoja nueva? con el nombre que figura en la celda f6
  7. ¿Exactamente Qué tienes en las celdas G6, H6, I6?Texto, que quiero concatenar.
  8. Esos tres datos exactamente en dónde los quieres En la hoja nueva 2 creada, en la celda a1 de forma concatenada

Te anexo la macro

Sub Crear_Hojas()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set h = Sheets("Base de Datos")
    For i = 5 To h.Range("F" & Rows.Count).End(xlUp).Row
        If h.Cells(i, "F") <> "" Then
            nombre = Left(h.Cells(i, "F"), 30)
            On Error Resume Next
            Sheets(nombre).Delete
            On Error GoTo 0
            '
            Sheets.Add after:=Sheets(Sheets.Count)
            ActiveSheet.Name = nombre
            ActiveSheet.Range("A1") = h.Cells(i, "G") & " " & h.Cells(i, "H") & " " & h.Cells(i, "I")
        End If
    Next
    h.Select
    Application.ScreenUpdating = True
    MsgBox "Hojas creadas"
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

¡Gracias!  Es justo lo que necesitaba.

Un saludo!!

Buenos días,

A partir de la Macro de Dante Amor, pretendo hacer una modificación, que es darle el formato correcto a las nuevas hojas creadas.

El formato de las celdas, de las hojas nuevas, serían el de la hoja "Modelo".

¿Me puede ayudar alguien?

Muchas gracias.

Agregaste más información en una pregunta ya resuelta, debes crear una nueva pregunta en el tema Excel

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas