06/03/2024
Trabajar con fechas en Excel es una tarea cotidiana para muchos, y a menudo surge la necesidad de extraer componentes específicos de estas, como el día, el año o, el protagonista de nuestro artículo, el mes. Ya sea para organizar datos, realizar análisis por periodos o simplemente para presentar información de manera más clara, saber cómo obtener el mes de una fecha es una habilidad fundamental. Excel, con su amplia gama de funciones y herramientas, nos ofrece diversas maneras de lograrlo, desde las más directas y sencillas hasta las más avanzadas y automatizadas. En este artículo, exploraremos cada una de estas opciones, brindándote ejemplos prácticos y consejos para que puedas aplicar este conocimiento de forma efectiva en tus hojas de cálculo.

- La Función MES(): Tu Aliada Principal para el Número
- Obteniendo el Nombre del Mes con la Función TEXTO()
- Diferencias Clave: Número vs. Nombre del Mes
- Extracción Visual: El Formato de Celdas
- Combinando Funciones para Mayor Potencia
- Escenarios Avanzados para Extraer el Mes
- Tabla Comparativa de Métodos
- Errores Comunes y Soluciones
- Aplicaciones Prácticas y Casos de Uso
- Preguntas Frecuentes (FAQ)
- Conclusión
La Función MES(): Tu Aliada Principal para el Número
La forma más directa y común de extraer el número del mes de una fecha en Excel es utilizando la función MES(). Esta función es increíblemente sencilla de usar y devuelve un número entero que representa el mes (del 1 para enero al 12 para diciembre) de una fecha dada. Es perfecta cuando necesitas el valor numérico del mes para cálculos, filtros o simplemente para una representación compacta.
Sintaxis de la Función MES()
La sintaxis es muy simple:
=MES(fecha_serie)
fecha_serie: Es la fecha de la cual deseas extraer el mes. Puede ser una celda que contenga una fecha, el resultado de otra función que devuelva una fecha, o una fecha introducida como texto entre comillas (aunque esto último no es lo más recomendable, es mejor referenciar celdas o usar funciones de fecha comoFECHA()).
Ejemplos Prácticos con MES()
Imaginemos que tienes una fecha en la celda A1, por ejemplo, "15/03/2023".
Para obtener el número del mes (que en este caso es 3), simplemente escribirías en otra celda:
=MES(A1)El resultado sería: 3
Si tuvieras varias fechas en un rango, por ejemplo, de A1 a A5, y quisieras obtener el mes para cada una de ellas, podrías arrastrar la fórmula hacia abajo. Por ejemplo, en la celda B1 pones =MES(A1) y luego arrastras hasta B5.
También puedes usar la función MES() con fechas generadas por otras funciones:
=MES(HOY())Esto te devolverá el número del mes de la fecha actual.
=MES(FECHA(2024; 7; 20))Esto devolverá: 7
Obteniendo el Nombre del Mes con la Función TEXTO()
Mientras que MES() te da el número, a menudo querrás el nombre del mes (Enero, Feb, Marzo, etc.) para informes o visualizaciones más amigables. Aquí es donde la función TEXTO() se vuelve invaluable. Esta función te permite convertir un valor numérico (como una fecha) en un texto con un formato específico.
Sintaxis de la Función TEXTO()
La sintaxis es la siguiente:
=TEXTO(valor; formato)
valor: Es el valor que quieres convertir a texto. En nuestro caso, será la fecha.formato: Es el código de formato que especifica cómo quieres que se muestre el valor. Para los meses, usamos códigos específicos.
Formatos de Texto para Meses
Para obtener el nombre del mes, utilizamos los siguientes códigos en el argumento formato:
"M": Muestra el mes como un número sin ceros iniciales (1-12). Ejemplo: "3" para marzo."MM": Muestra el mes como un número con ceros iniciales si es necesario (01-12). Ejemplo: "03" para marzo."MMM": Muestra el mes como una abreviatura de tres letras. Ejemplo: "Mar" para marzo."MMMM": Muestra el nombre completo del mes. Ejemplo: "Marzo" para marzo.
Ejemplos de Uso de TEXTO()
Usando la fecha "15/03/2023" en la celda A1:
Para obtener el mes abreviado:
=TEXTO(A1; "MMM")El resultado sería: Mar
Para obtener el nombre completo del mes:
=TEXTO(A1; "MMMM")El resultado sería: Marzo
Si quisieras el mes como número con dos dígitos:
=TEXTO(A1; "MM")El resultado sería: 03
Diferencias Clave: Número vs. Nombre del Mes
Es crucial entender la diferencia entre el resultado de MES() y TEXTO():
- La función
MES()devuelve un valor numérico. Esto es útil para realizar cálculos matemáticos (por ejemplo, sumar ventas por mes numérico), ordenar datos cronológicamente por mes, o usarlo en funciones lógicas donde necesitas un número. - La función
TEXTO()devuelve una cadena de texto. Aunque visualmente es más agradable, este resultado no es un número y no se puede usar directamente en cálculos que requieran valores numéricos (a menos que se convierta de nuevo). Es ideal para etiquetas en gráficos, encabezados de informes o para mostrar nombres completos en listas.
La elección entre una u otra dependerá de tu objetivo final. Si tu propósito es analizar datos y necesitas una representación numérica, MES() es tu opción. Si es para presentar información de forma legible para humanos, TEXTO() es la ideal.
Extracción Visual: El Formato de Celdas
A veces, no necesitas extraer el mes en una celda separada, sino simplemente cambiar la forma en que se muestra una fecha. Esto se logra con el formato de celdas. Es importante destacar que esta opción solo cambia la apariencia de la celda, no su valor subyacente. La fecha completa sigue estando presente en la celda, lo que es útil si necesitas usar esa fecha completa en otros cálculos pero solo quieres ver el mes.
Cómo Aplicar Formato de Celdas para Mostrar el Mes
- Selecciona la celda o el rango de celdas que contienen las fechas.
- Haz clic derecho sobre la selección y elige "Formato de Celdas..." (o presiona
Ctrl + 1). - En la pestaña "Número", selecciona "Personalizada" en la lista de categorías.
- En el campo "Tipo", introduce el código de formato deseado para el mes:
momm: Muestra el mes como un número (1-12 o 01-12).mmm: Muestra el mes abreviado (Ene, Feb, Mar).mmmm: Muestra el nombre completo del mes (Enero, Febrero, Marzo).- Haz clic en "Aceptar".
Advertencia importante: Recuerda que, aunque solo veas el mes, la celda sigue conteniendo la fecha completa. Si copias y pegas esta celda como "Valores", se pegará la fecha completa, no solo el mes. Si necesitas el mes como un valor independiente para otras operaciones, debes usar las funciones MES() o TEXTO().
Combinando Funciones para Mayor Potencia
Las funciones de Excel son más poderosas cuando se combinan. Puedes usar MES() o TEXTO() dentro de otras fórmulas para crear análisis más complejos. Por ejemplo, podrías querer mostrar el mes junto con el año:
=TEXTO(A1; "MMMM") & " " & AÑO(A1)Si A1 contiene "15/03/2023", el resultado sería: Marzo 2023
Otro ejemplo podría ser contar cuántas entradas hay por mes:
=CONTAR.SI(MES(RangoFechas); 3)Nota: Para que esta fórmula funcione correctamente en un rango, a menudo necesitarás usarla como una fórmula de matriz (Ctrl+Shift+Enter) o en un contexto como una tabla dinámica o Power Query. Una forma más robusta sería añadir una columna auxiliar con =MES(Fecha) y luego usar CONTAR.SI en esa columna.
Escenarios Avanzados para Extraer el Mes
Para usuarios más avanzados o para manejar grandes volúmenes de datos, Excel ofrece herramientas más robustas que también pueden extraer el mes.
Con Power Query (Obtener y Transformar Datos)
Power Query es una herramienta de ETL (Extracción, Transformación y Carga) integrada en Excel que es excelente para limpiar y transformar datos. Si tienes una tabla de datos con fechas, puedes usar Power Query para añadir una nueva columna con el mes.
- Selecciona tu tabla de datos y ve a la pestaña "Datos" > "Desde una tabla o rango".
- Esto abrirá el Editor de Power Query.
- Selecciona la columna de fechas.
- Ve a la pestaña "Agregar columna" > "Fecha" > "Mes". Aquí puedes elegir "Mes" (para el número) o "Nombre del mes" (para el nombre completo).
- Power Query creará una nueva columna con el mes extraído.
- Haz clic en "Cerrar y cargar" en la pestaña "Inicio" para llevar los datos transformados de vuelta a Excel.
Power Query es ideal para automatizar este proceso si tus datos se actualizan regularmente.
Con VBA (Macros)
Para automatizar la extracción del mes en escenarios donde necesitas procesar muchas celdas o integrar esto en un flujo de trabajo más grande, puedes usar VBA (Visual Basic for Applications).
Sub ExtraerMeses() Dim RangoFechas As Range Dim Celda As Range ' Define el rango de fechas, por ejemplo, A1:A10 Set RangoFechas = Range("A1:A10") ' Itera a través de cada celda en el rango For Each Celda In RangoFechas ' Asegúrate de que la celda contiene una fecha válida If IsDate(Celda.Value) Then ' Extrae el número del mes y lo pone en la columna B Celda.Offset(0, 1).Value = Month(Celda.Value) ' Extrae el nombre del mes y lo pone en la columna C Celda.Offset(0, 2).Value = Format(Celda.Value, "MMMM") Else ' Opcional: Manejar celdas no válidas Celda.Offset(0, 1).Value = "No es fecha" Celda.Offset(0, 2).Value = "No es fecha" End If Next Celda End Sub Este código VBA recorrerá las celdas en el rango A1:A10 y colocará el número del mes en la columna B y el nombre del mes en la columna C, al lado de cada fecha.
Tabla Comparativa de Métodos
Para ayudarte a elegir el método adecuado, aquí tienes una tabla comparativa:
| Método | Resultado | Ventajas | Desventajas | Mejor Uso |
|---|---|---|---|---|
MES() | Número (1-12) | Sencillo, rápido, ideal para cálculos y filtros numéricos. | No muestra el nombre del mes directamente. | Análisis numérico, filtros, condiciones. |
TEXTO() | Texto (nombre o número formateado) | Flexible para formatos de texto, muestra nombres de mes. | El resultado es texto, no se puede usar en cálculos numéricos directos. | Informes, etiquetas, visualizaciones. |
| Formato de Celdas | Solo visual (cambia la apariencia) | No altera el valor subyacente de la fecha, fácil de aplicar. | No extrae un valor independiente, solo visual. | Mejorar la legibilidad sin cambiar datos. |
| Power Query | Nueva columna (número o nombre) | Potente para grandes datasets, automatización, limpieza de datos. | Curva de aprendizaje inicial, requiere tabla de origen. | Transformación y preparación de datos, automatización de informes. |
| VBA | Nueva celda/columna (número o nombre) | Máxima flexibilidad y automatización para tareas complejas. | Requiere conocimientos de programación, puede ser complejo para usuarios novatos. | Procesamiento por lotes, soluciones personalizadas. |
Errores Comunes y Soluciones
Al trabajar con fechas, es posible encontrarse con algunos errores. Aquí los más comunes y cómo resolverlos:
#¡VALOR!: Este error suele aparecer cuando la celda a la que haces referencia no contiene una fecha válida, sino texto que Excel no puede interpretar como fecha. Asegúrate de que tus fechas estén en un formato reconocido por Excel. Puedes usar la funciónESFECHA()para verificar si un valor es una fecha antes de aplicarMES()oTEXTO().- Fechas como texto: Si tus fechas están almacenadas como texto (ej. "2023-03-15" pero Excel no las reconoce como fechas), las funciones de fecha no funcionarán. Puedes intentar convertirlas usando "Texto en Columnas" (Pestaña Datos > Herramientas de datos) o funciones como
VALOR.NUMERO()combinada conFECHANUMERO()si el formato es consistente.
Aplicaciones Prácticas y Casos de Uso
Extraer el mes de una fecha abre un mundo de posibilidades para el análisis y la organización de datos:
- Filtrado y Ordenamiento: Puedes añadir una columna con el mes (numérico o textual) y usarla para filtrar rápidamente tus datos por un mes específico o para ordenar cronológicamente por mes.
- Tablas Dinámicas: Al crear una tabla dinámica, Excel es inteligente y a menudo agrupa automáticamente las fechas por mes, trimestre y año. Si no lo hace, o si quieres un control más granular, puedes añadir una columna calculada con
MES()oTEXTO()a tu tabla de origen y luego usar esa columna en tu tabla dinámica para agrupar o filtrar por mes. Esta es una de las aplicaciones más poderosas de extraer el mes. - Cálculos Agregados: Sumar ventas por mes, promediar gastos mensuales, contar ocurrencias por cada mes. Una vez que tienes el mes extraído, puedes usar funciones como
SUMAR.SI.CONJUNTO,PROMEDIO.SI.CONJUNTOoCONTAR.SI.CONJUNTO. - Creación de Gráficos: Los gráficos que muestran tendencias mensuales son muy comunes. Tener una columna de meses (especialmente los nombres de los meses) facilita la creación de estos gráficos con etiquetas claras en el eje X.
- Reportes Personalizados: Para generar informes que requieren desgloses por mes, ya sea en formato numérico o de texto, la extracción del mes es el primer paso.
Preguntas Frecuentes (FAQ)
¿Cuál es la forma más rápida de obtener el mes?
La forma más rápida para un uso ocasional es la función MES() si quieres el número, o TEXTO() si quieres el nombre. Para grandes volúmenes de datos o si necesitas automatización, Power Query o VBA son más eficientes.
¿Puedo obtener el mes de una fecha en otro formato, como "20230315"?
Sí, pero primero debes convertir ese texto a una fecha real que Excel pueda entender. Puedes usar funciones como FECHANUMERO() o IZQUIERDA(), EXTRAE(), DERECHA() para separar año, mes y día, y luego FECHA() para construir la fecha. Una vez que es una fecha, aplica MES() o TEXTO().
¿Cómo agrupo datos por mes en una tabla dinámica?
Si tu campo de fecha está reconocido correctamente en la tabla dinámica, puedes arrastrarlo a las Filas o Columnas. Luego, haz clic derecho sobre cualquier fecha en la tabla dinámica, selecciona "Agrupar", y elige "Meses" y "Años" (si quieres agrupar también por año). Si esto no funciona, crea una columna auxiliar en tu tabla de datos original usando =MES(Fecha) o =TEXTO(Fecha; "MMMM") y úsala como campo en la tabla dinámica.
¿Qué hago si la fecha es un texto y me da error?
Verifica el formato del texto. Si es consistente (ej. "DD-MM-AAAA"), puedes usar "Datos > Texto en Columnas" y configurar el formato de fecha durante el proceso. Otra opción es usar fórmulas como FECHANUMERO(A1) o una combinación de FECHA(VALOR(EXTRAE(A1;7;4)); VALOR(EXTRAE(A1;4;2)); VALOR(IZQUIERDA(A1;2))) si el texto es "DD-MM-AAAA", y luego aplicar MES() o TEXTO() al resultado.
¿Hay alguna diferencia entre Excel para Windows y Mac al extraer el mes?
Las funciones MES() y TEXTO(), así como el formato de celdas y Power Query, funcionan de manera idéntica en Excel para Windows y Excel para Mac. Las únicas diferencias podrían estar en la interfaz de usuario para acceder a ciertas opciones, pero la lógica y las fórmulas son las mismas.
Conclusión
Dominar la extracción del mes de una fecha en Excel es una habilidad esencial que te permitirá organizar, analizar y presentar tus datos de manera mucho más eficiente. Ya sea que necesites el número del mes para cálculos precisos o el nombre completo para informes legibles, Excel te ofrece la herramienta adecuada. Desde la simplicidad de la función MES() hasta la versatilidad de TEXTO(), pasando por las opciones avanzadas de Power Query y VBA, tienes un abanico de posibilidades. Te animamos a practicar con cada método para encontrar el que mejor se adapte a tus necesidades y flujo de trabajo. ¡Tus hojas de cálculo y tus análisis te lo agradecerán!
Si quieres conocer otros artículos parecidos a Cómo Extraer el Mes de una Fecha en Excel puedes visitar la categoría Cálculos.
