Al ingresar fechas en una hoja de trabajo, Excel proporciona bastante libertad para ingresarlas. Un área en la que se otorga la latitud es cuando se trata de incluir un año. Si incluye un año (como 2/3/08), eso es genial. Si no incluye un año (como 3/2), Excel agrega el año actual a lo que está ingresando.

La mayoría de las veces esto no es un problema. Sin embargo, puede ser un problema para quienes ingresan fechas que «se ajustan» al año pasado. Por ejemplo, muchas personas ingresan fechas para el mes anterior o dos en sus hojas de trabajo. En la mayoría de los meses, esto no es un problema, porque el último mes o dos son en el mismo año que el mes actual. Sin embargo, puede ser un problema durante enero y febrero, cuando puede estar ingresando fechas de noviembre y diciembre del año anterior.

Una solución es ingresar siempre el año al ingresar una fecha. Es indiscutiblemente más rápido dejar el año libre durante la entrada de datos y permitir que Excel lo agregue a su entrada. Por lo tanto, sería bueno encontrar una manera de ingresar fechas durante los dos primeros meses del año y agregarles el año anterior.

Una forma de manejar esto es cambiar la fecha del sistema en su computadora.

En Windows, reduzca la fecha del sistema en un año. Luego, todas las fechas que ingrese cambiarán al año pasado. Sin embargo, esto tiene ramificaciones en otros programas, a menos que recuerde cambiar la fecha del sistema.

También puede estropear la entrada de datos si, durante la última parte de enero y principios de febrero, comienza a ingresar fechas de este año, y Excel les agrega automáticamente el año pasado.

Hacer algo más complejo implica necesariamente el uso de una macro.

Considere el siguiente ejemplo, que debería agregarse a la ventana de código de una hoja de trabajo:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub     If Target = "" Then Exit Sub     If Target.Column <> 1 Then Exit Sub

If DateValue(Target) > Date Then         Application.EnableEvents = False             Target = DateAdd("yyyy", -1, Target)

Application.EnableEvents = True     End If End Sub

Esta macro se ejecuta automáticamente cada vez que hay un cambio en la hoja de trabajo. Si el cambio que se realiza es en una sola celda en la columna A, y lo que se ingresa es una fecha que es mayor que la fecha de hoy, entonces se resta un año de lo que se ingresa.

Esto funciona muy bien, siempre que ingrese de forma rutinaria fechas que se encuentran dentro del último año o los meses hasta ahora del año actual. Si agrega específicamente una fecha lejana (como ingresar 6/11/17 el 3/2/16), entonces el año aún se incrementa en uno. La macro podría, por supuesto, modificarse para verificar si la fecha que se ingresa es en los últimos dos meses de un año, y que la fecha realmente se ingresa durante los dos primeros meses de un año, antes de hacer la disminución el año.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (3360) se aplica a Microsoft Excel 97, 2000, 2002 y 2003.