Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Función Datediff

Función DateDiff

| 11 Comments

¿Qué es la función DateDiff?
Es una función de VBA que devuelve un valor numérico en función de 3 parámetros.

¿Cómo usar esta función?

Se usa de la siguiente manera:

DateDiff(Parametro, Fecha Inicial, Fecha Final,[Fecha Inicio Semana], [Fecha Inicio Año])

Donde:
Parametro: Permite definir qué es lo que se va a calcular, sea  días, horas, minutos, hasta años.

Fecha Inicial: Es la fecha desde donde se empezará el cálculo.

Fecha Final: Es la fecha donde finalizará el cálculo.

Fecha Inicio Semana: Permite definir el día de inicio de semana, por default Excel toma como domingo el primer día de semana. Es un parámetro opcional

Fecha Inicio Semana: Permite definir el día de fin de semana, por default Excel toma como el 1ro de Enero el primer día de semana. Es un parámetro opcional.

¿Qué es lo que hace?

Devuelve un valor que  resulta ser la diferencia de Fecha Final y Fecha Inicial, según sea el parámetro que se especifique.

Esta función es muy importante en el cálculo de tiempo, ya que Excel toma los valores de fecha como número y lo que en verdad se muestra es un formato de esa serie de números. Al usar la fórmula, Excel  toma el valor del formato mostrado ( es decir, si se coloca 40940, Excel tomará el valor en fechas de ese número que viene a ser el 01/02/2012 a las 12:00 am).

Ejemplo:

Función Datediff 01

Codigo VBA:

Sub PruebaDateDiff()
‘Notar la definicion de variables locales
Dim a As Date
Dim b As Date
Dim Parametro As String
Dim Mensaje As Long
Fecha1 = Range(“B1”)
‘Fecha1 es la Fecha Inicial
Fecha2 = Range(“B2”)
‘Fecha2 es la fecha Final
Parametro = Range(“B3”)

Mensaje = DateDiff(Parametro, Fecha1, Fecha2)
MsgBox Mensaje

End Sub

Elaborado por: Jesús Tapia

11 Comments

  1. Con la función DateDiff, podría hacer reportes de ventas en forma trimestral.

  2. Me parece que existe una redundancia en las Fechas Inicio Semana, la segunda debe ser Fecha Inicio Año:

    Fecha Inicio Semana: Permite definir el día de inicio de semana, por default Excel toma como domingo el primer día de semana. Es un parámetro opcional

    Fecha Inicio Semana: Permite definir el día de fin de semana, por default Excel toma como el 1ro de Enero el primer día de semana. Es un parámetro opcional.

  3. Esta función me resulta util para programar proyectos y cartas gantt. En el calculo de tiempo para financiamientos y en la determinación de trabajo efectivamente realizado para una obra (horas hombre).

  4. Yo le encuentro aplicacion en el calculo de las edades, esto en combinacion con la funcion Now. En la tabla solo se ingresaria la fecha de nacimiento y con esta funcion obtendriamos la edad.

  5. Esta función podría servir para observar por ejemplo los días que restan para el pago de una cuota de un préstamo o la cancelación de una deuda. Asimismo, permitiría programar una lista de actividades como el numero de días restantes para diversas citas o reuniones. En general, para establecer una agenda bastante especifica.

  6. Esta función tiene diversas aplicaciones para comparar fechas límite con la actual (p.e. tiempo restante para pagar a proveedores, para un cumpleaños, entre otras), sin que sea necesario ingresarla manualmente a diario. Para ello, se podría incluir la función Now, de la siguiente manera:

    DateDiff(Parametro, Now, Fecha_limite)

    El caso inverso puede emplearse de manera similar, (p.e. duración de un proyecto hasta el día actual), de la siguiente manera:

    DateDiff(Parametro, Fecha_inicio, Now)

  7. La definición de variables (a y b) no se relaciona con las variables empleadas en el ejemplo. Considero que lo mejor hubiera sido declarar:

    Dim Fecha1 as Date
    Dim Fecha2 as Date

  8. Buenas noches:

    Esta función es perfecta si se trabaja en el área de logística, puesto que se calcularía el tiempo que toma en salir la mercadería del almacén desde su ingreso y con ello pronosticar correctamente las siguientes mercaderías.

    Saludos,

  9. Esta función puede ser útil para hacer cuenta atrás de fechas o de tiempo.

  10. Esta funcion puede servir para poder saber cuanto tiempo falta para el vencimiento de algun pago importante, especificando el dia de hoy y el dia de vencimiento del pago. Mientras los dias pasen, se ira actualizando los dias restantes.

  11. Esta función es útil en las empresas, por ejemplo en el rubro automotriz para conocer cuanto tiempo falta para que el carro llegue a la empresa y este listo para la entrega al cliente. Colocando en fecha de inicio el día de hoy ( usaría la función =HOY() )y como fecha de fin, la fecha estimada de entrega.

Deja un comentario

Required fields are marked *.


Excel Avanzado located at , Lima, Perú . Reviewed by usuarios rated: 4.7 / 5