1. Faro

Nivel 4 · Claves de mes y aniversarios con TEXT y EDATE

La solicitud

De Timothy Ross, Estratega de contenidos

“Vamos a lanzar un correo de 'un año con Harbor & Pine', enviado en el aniversario de registro de cada cliente. Para este lote necesito dos cosas por cliente: el mes de registro como 2024-02 para poder agruparlos, y la fecha exacta del aniversario.”

Tu objetivo

En E2:E29, devuelve el mes de registro de cada cliente como texto con el formato yyyy-mm (TEXT sobre la signup_date de la columna D). En F2:F29, devuelve con EDATE la fecha un año después del registro, usando el número de meses de I1.

  • Llena E2:F29 con los valores correctospendiente
  • Con fórmulas, no con números escritospendiente
  • Usa TEXT EDATEpendiente

Tu hoja

Excel
La hoja de este nivel
ABCDEFGHIJ
1customer_idfirst_namelast_namesignup_datesignup_monthanniversaryMonths until the email12
2702CatherineKelly2024-02-14
3703MarcusJenkins2024-02-16
4704JasonDavis2024-02-16
5705SofiaLee2024-02-17
6706GraceRuiz2024-02-17
7707DanielGallagher2024-02-18
8708SarahHudson2024-02-19
9709ElizabethHoward2024-02-21
10710SusanCollins2024-02-21
11711KatherineGomez2024-02-22
12712SofiaThomas2024-02-22
13713JustinHayes2024-02-22
14714StevenAlvarez2024-02-23
15715SophiaCollins2024-02-23
16716JessicaLewis2024-02-24
17717LindaGray2024-02-24
18718SofiaAnderson2024-02-26
19719JasonEdwards2024-02-28
20720AbigailGomez2024-02-29
21721AlexanderCooper2024-02-29
22722MarkLong2024-03-01
23723StephenJones2024-03-02
24724CatherineFoster2024-03-03
25725SamanthaPerez2024-03-04
26726RobertHernandez2024-03-04
27727KimberlyNelson2024-03-04
28728ChristineMorales2024-03-04
29729MeganHayes2024-03-04
30
31

Cargando el editor…

    ResultadoPresiona Comprobar para comparar E2:F29

    Mote revisa tu resultado

    Presiona Comprobar. Cada celda correcta se vuelve una luciérnaga en tu linterna.

    La lección

    El correo de Timothy sale en el aniversario de cada cliente, y su informe agrupa a los clientes por el mes en que se unieron. Ambos son problemas de fechas, y ambos se vuelven más fáciles cuando sabes qué es realmente una fecha en una hoja de cálculo.

    Una fecha es un número

    Excel guarda una fecha como el número de días desde el inicio de 1900. El día 1 es el 1 de enero de 1900, y cada día posterior suma uno. D2 muestra 2024-02-14, pero el valor de la celda es 45336. El yyyy-mm-dd que ves es un formato puesto encima de ese número. Cambia el formato de la celda a General y ves el número en sí.

    Como las fechas son números, la aritmética funciona con ellas: =D2+1 es el día siguiente, y =D3-D2 es el número de días entre dos fechas. Las horas son fracciones de un día, así que el mediodía es 0.5. Google Sheets usa los mismos números.

    Para extraer una parte de una fecha, usa las funciones de partes:

    Fórmula Resultado para D2 (2024-02-14)
    =YEAR(D2) 2024
    =MONTH(D2) 2
    =DAY(D2) 14
    =WEEKDAY(D2,2) 3 (lunes = 1, así que miércoles)

    Una clave de mes con TEXT

    Para agrupar clientes por mes quieres un valor por mes que se ordene cronológicamente. Pegar las partes es la forma tentadora:

    =YEAR(D2)&"-"&MONTH(D2)

    Devuelve 2024-2. Junto a 2024-11 eso es un problema: ordenado como texto, 2024-11 va antes que 2024-2, porque el carácter 1 va antes que el 2. Usa TEXT con un formato en su lugar:

    E2   =TEXT(D2,"yyyy-mm")

    Devuelve 2024-02, con el cero inicial, así que las claves siempre se ordenan en orden de calendario. Recuerda que TEXT devuelve texto: E2 son los caracteres 2024-02, no una fecha. Eso sirve para agrupar y para etiquetas, pero no puedes sumarle días.

    Aniversarios con EDATE

    EDATE(start, months) devuelve la fecha un número de meses completos después (o antes, con un número negativo):

    F2   =EDATE(D2,$I$1)

    I1 contiene 12, así que F2 muestra 2025-02-14. El $ mantiene todas las filas en I1 al rellenar hacia abajo.

    ¿Por qué no =D2+365? Porque los años no tienen todos 365 días. Febrero de 2024 tuvo 29 días, así que para los registros del 14 al 28 de febrero, sumar 365 cae un día antes: D2+365 es 2025-02-13. EDATE cuenta meses, no días.

    Mira las filas 20 y 21: Abigail Gomez y Alexander Cooper se registraron el 2024-02-29. No hay 29 de febrero en 2025, así que EDATE devuelve el último día de febrero, 2025-02-28. Esa es la regla que también debería seguir tu herramienta de correo.

    Su hermana EOMONTH(start, months) devuelve el último día de un mes: =EOMONTH(D2,0) es 2024-02-29, el fin del mes de registro, y =EOMONTH(D2,-1)+1 es su primer día.

    Errores comunes

    • MONTH solo como clave. MONTH(D2) es 2 para febrero de todos los años. Con varios años, incluye siempre el año.
    • Claves sin cero inicial. 2024-2 y 2024-11 se ordenan al revés. TEXT con "yyyy-mm" lo rellena.
    • +365 para “un año después”. Falla por uno alrededor de cada día bisiesto. Usa EDATE.
    • Tratar la clave como una fecha. TEXT devuelve texto. Para conservar una fecha real del mes, usa =EOMONTH(D2,-1)+1 y dale formato yyyy-mm.

    Elige qué puede ejecutarse en este sitio. Puedes cambiarlo cuando quieras desde "Configurar cookies", al pie de cada página.