Clases Excel
Lunes, 01 Diciembre 2014 03:11

Aplicaciones prácticas de la función SIFECHA

Valora este artículo
(5 votos)

En un artículo anterior te explicamos cómo calcular fácilmente diferencias de días, meses y años con la función SIFECHA. En este dejamos la teoría y pasamos a la práctica, mostrándote cómo resolver los problemas que más frecuentemente se te pueden presentar al usar la función.

La función SIFECHA 1

 

SIFECHA en acción

Como indicamos en el primer artículo de esta serie, la función SIFECHA devuelve la cantidad de días, meses completos o años completos dentro de un período, pero no las tres cantidades a la vez, sino una de ellas.

 

Repasemos su estructura básica:

SIFECHA(fecha inicial;fecha final;unidad de tiempo)

 

Para saber, por ejemplo, la cantidad de meses completos entre el 15/06/2006 y el 10/04/2010 deberíamos escribir:

SIFECHA("15/06/2006";"10/04/2010";"m")

 

El resultado que retorna la fórmula anterior es lisa y llanamente 45. Si deseamos que devuelva un resultado más específico, por ejemplo: "45 meses", tendríamos que agregar el texto " meses" a continuación de la función SIFECHA. Una de las formas más fáciles de hacerlo es la siguiente:

SIFECHA("15/06/2006";"10/04/2010";"m")&" meses"

 

La función SIFECHA 2

 

 

El símbolo & (conocido como et o ampersand) es un operador que sirve para unir texto. A esta operación se le denomina concatenación. Lo que hace la fórmula es unir el resultado de la función SIFECHA (45) con el texto " meses"; una forma de personalización básica, pero útil.

 

 

¿Cuándo usar las unidades de tiempo ym, yd y md?

Las unidades de tiempo d, m y y son bastante sencillas de entender.

d (=days) devuelve la cantidad total de días entre la fecha inicial y la final.

m (=months) devuelve la cantidad de meses completos entre la fecha inicial y la final.

y (=years) devuelve la cantidad de años completos entre la fecha inicial y la final.

 

Pero supongamos que necesitamos saber la cantidad de meses y días que pasaron entre el 01/01/2014 y el 10/06/2014. ¿Sería correcta la siguiente fórmula para obtener ese resultado?

=SIFECHA("01/01/2014";"10/06/2014";"m")&" meses " &SIFECHA("01/01/2014";"10/06/2014";"d")&" días"

 

La función SIFECHA 3

 

 

No, no sería correcta. Entre el 01/01/2014 y el 10/06/2014 transcurrieron 5 meses y 9 días. Sin embargo, la fórmula anterior nos da como resultado 5 meses y 160 días. Esto corresponde a la cantidad de meses completos del período (5) y a la cantidad total de días del mismo período (160). El problema es que en la cuenta de los días no se excluyen los meses ya considerados. La primera parte está bien, porque queremos obtener la cantidad de meses completos entre ambas fechas; pero los días que forman parte de los meses contados no podemos contarlos de nuevo.

 

En este caso es necesario usar md como unidad de tiempo en lugar de d. La unidad de tiempo md excluye los años y los meses completos al calcular los días transcurridos entre dos fechas.

=SIFECHA("01/01/2014";"10/06/2014";"m")&" meses " &SIFECHA("01/01/2014";"10/06/2014";"md")&" días"

 

La función SIFECHA 4

 

 

Análogamente, las unidades de tiempo ym y yd no toman en cuenta la diferencia de años al hacer el cálculo. ym retorna cantidad de meses completos entre la fecha inicial y la final, sin considerar los años. yd devuelve la cantidad de días entre la fecha inicial y la final, sin considerar los años.

 

 

Varias SIFECHA en la misma fórmula

Vayamos un poco más lejos: ¿Cómo podemos obtener en una sola fórmula la cantidad de días, meses y años transcurridos entre dos fechas? Ya hemos considerado todos los elementos necesarios para lograrlo. El resultado sería una fórmula similar a la siguiente, donde B3 contiene la fecha inicial y C3 la fecha final del período:

=SIFECHA(B3;C3;"y")&" años "&SIFECHA(B3;C3;"ym")&" meses " &SIFECHA(B3;C3;"md")&" días"

 

La función SIFECHA 5

 

 

Si todavía te quedan dudas sobre algún aspecto de esta fórmula, te aconsejo repasar el artículo anterior: Cómo calcular fácilmente diferencias de días, meses y años con la función SIFECHA.

 

 

Cómo suprimir los ceros

La fórmula anterior funciona muy bien, pero tiene un problema cuando el número de meses o de años es igual a cero. Por ejemplo, si la cantidad de meses y años fuera cero y la cantidad de días fuera 15, la fórmula anterior retornaría:

0 años 0 meses 15 días

 

Cuando lo más adecuado sería que devolviese:

15 días

 

El resultado: 0 años 8 meses 10 días, debería mostrarse como: 8 meses 10 días; el resultado: 8 años 0 meses 10 días, debería mostrarse como: 8 años 10 días, y así por el estilo.

 

Para suprimir las unidades de tiempo con valor cero, podemos emplear la siguiente fórmula:

=SI(SIFECHA(inicial;final;"y")=0;"";SIFECHA(inicial;final;"y")&" años ") &SI(SIFECHA(inicial;final;"ym")=0;"";SIFECHA(inicial;final;"ym")&" meses ") &SI(SIFECHA(inicial;final;"md")=0;"";SIFECHA(inicial;final;"md")&" días")

 

Hay que reconocer que es una fórmula bastante intimidante, al menos en un primer momento. Lo que hace es evaluar el resultado de cada SIFECHA y solamente lo muestra si es mayor que cero. Pero lo bueno es que no es necesario entenderla para que funcione: solo hay que copiarla tal cual y sustituir la palabra inicial por la fecha de inicio y la palabra final por la fecha del fin del período.

 

 

Cálculo de la edad

El cálculo de la edad de una persona es muy simple con SIFECHA, pues basta hallar los años de diferencia entre la fecha de nacimiento y la fecha de hoy.

 

Para que la fórmula se actualice de forma automática a medida que pasan los días, es conveniente usar como segundo argumento la función HOY, que siempre devuelve la fecha actual del sistema. (Puedes obtener más información sobre esto en el artículo: La función HOY y sus aplicaciones prácticas.)

=SIFECHA(fecha nacimiento;HOY();"y")

 

Con la función SIFECHA también es posible calcular la edad de una persona en años, meses y días, de la siguiente manera:

=SIFECHA(fecha nacimiento;HOY();"y")&" años "&SIFECHA(fecha nacimiento;HOY();"ym")&" meses "&SIFECHA(fecha nacimiento;HOY();"md")&" días"

 

La función SIFECHA 6

 

 

La oveja negra

La función SIFECHA está disponible en Excel al menos desde 1995. Pero un dato curioso es que Microsoft, salvo contadas excepciones, ha ignorado la existencia de esta función y casi no ha publicado información sobre ella. ¿Por qué se oculta? Aunque hay muchos rumores, el por qué nunca se supo a ciencia cierta. Lo concreto es que, por algún motivo, la función SIFECHA es tratada como la oveja negra de la familia: Excel la sigue manteniendo en existencia, pero nunca habla de ella.

 

Otra curiosidad es que, en español, el nombre de la función no está bien traducido. En inglés la función se llama DATEDIF, aludiendo a la diferencia (DIF) entre fechas (DATE). Pero por descuido el DIF se interpretó como un IF (que significa SI) y de ahí la traducción derivó en SIFECHA. (Puedes conocer otras rarezas de Excel en el artículo 9 curiosidades sobre Excel.)

 

Afortunadamente nada de esto impide que nos sea de mucha utilidad. ¡Larga vida a la encubierta y valiosa SIFECHA!

 

 

Descarga los artículos en PDF y el libro de trabajo de Excel

En vista de la casi inexistente información oficial sobre la función SIFECHA, hemos reunido esta serie de dos artículos en un archivo PDF, que puedes descargar para tener siempre a mano.

 

También te invito a descargar el libro de trabajo con los ejemplos presentados en ambos artículos, para evitarte la tediosa tarea de empezar a copiarlos desde cero. "Jugar" con la función SIFECHA directamente en un libro de Excel te ayudará a comprender mejor cómo trabaja.

 

Este material se hace disponible de forma totalmente libre y sin fines de lucro. Pero apreciamos mucho cada Me Gusta y cada tweet efectuado, porque nos ayuda a ampliar su difusión. Y si te sirvió nuestro aporte ¿por qué no lo compartes con tus amigos? Puede que a ellos también les sea útil.

 

Descarga los artículos en PDF

Descarga el libro de trabajo en Excel

 

Visto 14990 veces Modificado por última vez en Domingo, 20 Marzo 2016 03:16

Deja un comentario

Los campos imprescindibles están marcados con asterisco (*). Tu dirección de correo nunca será publicada.

5 comentarios

  • Enlace al Comentario Henry Tacsi Viernes, 02 Diciembre 2016 23:24 publicado por Henry Tacsi

    Son muy interesantes sus artículos, gracias por compartirlos....

  • Enlace al Comentario Clases Excel Lunes, 10 Octubre 2016 01:43 publicado por Clases Excel

    Hola, Adela. Me alegra que los artículos te sean útiles. Muchas gracias por comentarlo. ¡Saludos!

  • Enlace al Comentario Adela Ruiz Jueves, 06 Octubre 2016 13:35 publicado por Adela Ruiz

    Buenos dias, muy util las publicaciones de Clases Excel, me ha guiado bastante en mis deseos de aprender cada dia sobre las bondades de excel. Es muy explicita la forma en que usted nos guia en cada clase. Gracias.

  • Enlace al Comentario Clases Excel Jueves, 28 Mayo 2015 15:43 publicado por Clases Excel

    Hola, Kita.

    Antes que nada, gracias por tus apreciaciones.

    El equivalente de SIFECHA en inglés es DATEDIF.

    Lo curioso es que esta función, pese a sus virtudes, está muy poco documentada. Excel ni siquiera la incluye en el asistente de funciones y por eso se la conoce poco.

    Gracias por avisarnos que no figura en el Diccionario de funciones, así la agregamos.

  • Enlace al Comentario Kita Jackson Lunes, 25 Mayo 2015 15:40 publicado por Kita Jackson

    Buenos dias, Gracias por su pagina ha sido de utilidad y es muy agradable en la forma de explicar.
    Referente a esta formula, uso Excel 2010 en Ingles y no he logrado encontrar cual es la formula.
    Revise incluso el diccionario que ustedes crearon con todas las funciones, y tampoco aparece.
    Agradezco dejarme saber cual es la funcion en ingles.

Suscríbete a nuestro Boletín gratuito

Recibe periódicamente en tu email los últimos artículos, tutoriales y otras novedades de Excel.


Tus datos son confidenciales, nunca serán compartidos con nadie.

Inicio    Contacto    Términos y condiciones    Mapa del sitio

Ir arriba

Desarrollado por www.espectradesign.com