Macro para ordenar datos

Hola, tengo esta macro que me ordena los datos que tengo en distintas hojas en una hoja nueva. La macro funciona correctamente, pero necesitaría que me pusiese el nombre de la hoja en la primera columna (de todos los registros que copie) ya que en este momento me pone el nombre de la hoja sólo en la celda anterior a comenzar a copiar los registros.
Para finalizar me gustaría quitar la fila de celdas vacías que aparece entre cada hoja copiada.
Sub MacroParaOrdenarDatos()
Fila = 1
    HojaActual = ActiveSheet.Name
    For i = 1 To 189
        Sheets(i).Select
        NombreHoja = ActiveSheet.Name
        Range("A1..D4").Select
        Selection.Copy
        Sheets(HojaActual).Select
        CeldaBase = "A" + Trim(Str(Fila))
        Range(CeldaBase).Select
        Selection.Value = NombreHoja
        Fila = Fila + 1
        CeldaBase = "A" + Trim(Str(Fila))
        Range(CeldaBase).Select
        Sheets(HojaActual).Paste
        Fila = Fila + 4       
    Next i
End Sub
Gracias.

1 respuesta

Respuesta
1
A ver si es esto de abajo lo que necesitas. Si es así, recuerda finalizar la pregunta. Gracias
Saludos
Angel
++++++++++++++++++++++++++++++++++++++++++++++++++1
Sub MacroParaOrdenarDatos2()
Fila = 1
    HojaActual = ActiveSheet.Name
    For i = 1 To 189
        Sheets(i).Select
        NombreHoja = ActiveSheet.Name
        Range("A1..D4").Select
        Selection.Copy
        Sheets(HojaActual).Select
        CeldaBase = "A" + Trim(Str(Fila)) + ":A" + Trim(Str(Fila + 3))
        Range(CeldaBase).Select
        Selection.Value = NombreHoja
        'Fila = Fila + 1
        CeldaBase = "B" + Trim(Str(Fila))
        Range(CeldaBase).Select
        Sheets(HojaActual).Paste
        Fila = Fila + 4
    Next i
End Sub
Hola Angel,
Esto es justo lo que necesitaba. Disculpa por no cerrar la anterior respuesta, ya que me encontraba fuera del puesto de trabajo por cuestiones de viaje.
Muchas gracias por tu ayuda.
Un saludo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas