Crear libro del año en excel

Necesito saber de que manera en excel puedo crear un libro con todas las fechas del año pero sin escribirlas manualmente, esto por que tengo que ingresar unos datos del año 2008 a la fecha, imagínense lo que me demoraría en escribir un libro con todas las pestañas del 2008 a la fecha, amigoa ayúdenme por favor expertos, espero su repuesta amigos

1 Respuesta

Respuesta
1
Aunque tu pregunta es ambigua (no deja del todo claro que lo que necesitas) voy a suponer que necesitas crear hojas nuevas y que cada una tenga como nombre una fecha, desde 2008 hasta la fecha; si ese es el caso, aquí anexo un código que puede echarte una mano:
****************************************************************
Sub GenerarHojas()
''genera una hoja para cada uno de los registros de la columna actual
''Creada por FSerrano en 110518
'desactiva la actualización en pantalla para ejecutar el codigo más eficientemente
Application.ScreenUpdating = False
'captura la posición inicial para volver a ella al finalizar el proceso
comienzo = ActiveCell.Address
hojainicial = ActiveSheet.Name
'identifica la celda final para efectuar el ciclo hasta esa celda
ultima = ActiveCell.SpecialCells(xlLastCell).Row
'ciclo que crea una hoja nueva para cada registro de la columna actual y nombra la hoja
'con el valor de la celda actual, si la celda actual esta vacia pasa a la siguiente (avanza hacia abajo)
While ActiveCell.Row <= ultima
    If ActiveCell <> "" Then
        'Captura el valor de la celda y remueve las barras ("/") ya que no son aceptadas en el nombre de las hojas
        nombre = Application.WorksheetFunction.Substitute(ActiveCell.Value, "/", "")
        'inserta una nueva hoja despues de la ultima
        ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
        'renombra la hoja con el valor del registro actual
        Sheets(ActiveSheet.Index).Name = nombre
        'vuelve a la hoja de datos que contiene los registros
        Sheets(hojainicial).Activate
    End If
    ActiveCell.Offset(1, 0).Activate
Wend
'vuelve al punto de partida
Sheets(hojainicial).Range(comienzo).Activate
'Habilita nuevamente la actualización de la pantalla
Application.ScreenUpdating = True
End Sub
********************************************************************
Para que el código ande tienes que tener una lista con los nombres que le vas a poner a las hojas (en tu caso las fechas), ubicarte en una celda de dicha celda y correr la macro, el código generara tantas hojas como registros haya entre la celda desde que lanzas la macro y la ultima celda que contenga datos de dicha columna.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas