Función SIFECHA

La ayuda de Excel proporciona algunos ejemplos para calcular la diferencia entre dos fechas, pero hay otras maneras de obtener el mismo resultado. La función SIFECHA no está documentada pero existe en Excel 2013 (también en versiones anteriores). Nos permite hacer cálculos entre fechas como obtener la edad de una persona o la antigüedad de una deuda de una manera fácil e intuitiva.

Sintaxis de la función SIFECHA en Excel

La sintaxis de la función SIFECHA consta de tres argumentos como puede verse en la siguiente imagen:

Sifecha1

donde tipo puede ser:

  • “Y”  – años completos
  • M” – meses completos
  • “D” – días completos
  • “YM” – descarta los meses cumplidos entre años seleccionados
  • “MD” – descartas los días de meses cumplidos entre las dos fechas seleccionadas
  • “YD” – descarta los días cumplidos entre los años de las dos fechas seleccionadas

Ejemplo 1

Se trata  de calcular la edad de una persona que nació el 15 de junio 1986

Sifecha1

como “fecha más pequeña” es la fecha de nacimiento, se escribe en primer término. La “fecha mayor” será la fecha de hoy, función hoy() que ya conocemos (ver más). A “tipo” le damos el valor “Y” porque queremos calcular la edad en años.

Ejemplo 2

Vamos a ver, con un sencillo ejemplo, qué obtenemos cuando la función toma cada uno de los “tipos”

ejemplo función sifecha

En el archivo de trabajo que adjunto, he añadido dos nuevas columnas, valor1 y valor2, para mostrar cómo se puede utilizar la función escribiendo diréctamente las fechas.

Archivo para descargar >>> Función_Sifecha

Autor: Enrique Arranz Muñoz

Enrique es un apasionado de Excel y de las tecnologías. Colabora asiduamente en ExcelyVBA.com como experto en análisis de datos. También ha escrito sobre Dynamics AX y otros temas tecnológicos. Su experiencia en el ámbito financiero hace que tenga un enorme conocimiento de Excel y finanzas.

10 opiniones en “Función SIFECHA”

  1. Hola tengo una consulta, con la siguiente formula
    =SI(E8>=310; SI(E8>=518;”30″;”20″);”15″)*E6
    donde E8 es igual a semanas laboradas y E6 son los años laborados, el problema que me da es que al pasar las semanas me cambia las otras, ejemplo si tego 310 semanas es 15, necesito que siempre sea 15 pero al pasarse a 320 (ejemplo) me cambia todos a 20 donde solo quisiera ue los 10 restantes sean 20 pero los 310 siempre sean 15, igual con los otros siguientes

  2. Hola Miguel, yo tengo un tutorial en youtube, donde explico exactamente lo que quieres, solo que en el video utilizo fechas de nacimiento pero tú imagina que son fechas de ingreso…aquí te dejo el enlace para que te pases por ahí, saludos desde Venezuela

  3. Hola Enrique, tengo una duda, en mi trabajo requiero saber como sacar el tiempo laborado de una persona, con día, mes y año, he encontrado funciones de la formula =SIFECHA con el mismo año, que pasa si quiero saber el tiempo laborado del personal cuando los años no son los mismos, ejemplo si la persona entro el 01/02/14 y su salida de la empresa es el 03/04/16 esta persona trabajo 3 días, 2 meses y 2 años, como le puedo hacer para que la formula me de ese resultado, te agradeceré el apoyo.
    Saludos.

    1. Hola Miguel,
      Lo que se me ocurre es que restes las dos fechas. De esta manera obtendrás una fecha que te indica el número de meses y años transcurridos. Después, simplemente usando la función AÑO, MES y DIA puedes obtener el número concreto de años, meses y días que dicha persona trabajó en la empresa.
      Saludos,
      Quique

  4. Hola!
    Muchas gracias por todo ha sido de muy útil, yo en mi caso aun no puedo con un trabajo que tengo me gustaria recibir un poco de apoyo ya que hasta el momento no encuentro la manera de como solucionarlo, te explico, tengo una columna con varias registros de diferentes fechas que datan datan desde 2012 al 2015, a un lado necesito insertar solo el año de la celda si es menor a 2015, y los de 2015 requiero mes y año, espero me hayas entendido

    1. Hola Jose,
      Si no te he entendido mal necesitarías una función que sea algo así (suponiendo que las fechas están en la columna A) en la columna B:
      =SI(AÑO(A1)<2015;AÑO(A1);AÑO(A1)&"-"&MES(A1))
      Esta función devolvería el número del año si es menor de 2015 y para el año 2015 devolvería el mes y el año en el siguiente formato (para enero de 2015) "2015-1"
      Espero que quede resuelta tú duda.
      Un saludo,
      Quique

Comentarios cerrados.