TL;DR —
INTyTRUNCeliminan ambas la parte fraccionaria de un número, pero no se ponen de acuerdo con los negativos:INTredondea hacia menos infinito (así queINT(-2.5)es-3), mientras queTRUNCsimplemente corta hacia el cero (así queTRUNC(-2.5)es-2). Para números positivos son idénticas.MODdevuelve el resto de la división, y el truco de Excel es que el resto toma el signo del divisor, no el del número, así que=MOD(-1, 3)es2, no-1. Ese único detalle difiere de la mayoría de los lenguajes de programación y es la sorpresa principal de MOD. Las tres funcionan en todas las versiones.
=INT(-2.5) ' -> -3 suelo: hacia menos infinito
=TRUNC(-2.5) ' -> -2 corte: hacia el cero
=MOD(-1, 3) ' -> 2 el resto toma el signo del divisor
Estas tres son los caballos de batalla del "dame la parte entera" y el "dame lo que sobra". Parecen triviales, hasta que aparece un número negativo, o portas una fórmula desde otra herramienta, y la respuesta se desvía en uno o cambia de signo sin motivo visible. Ambas sorpresas vienen de en qué dirección se inclina cada función. Esta guía empieza por ese modelo mental y sigue con las trampas que se derivan de él.
Lo que vas a aprender
- El modelo mental: cortar hacia el cero frente a caer hacia menos infinito
- Por qué
INTyTRUNCcoinciden en los positivos y se separan en los negativos - El segundo argumento de
TRUNC: cortar a un número fijo de decimales MODcomo el resto, y la regla del signo del divisor que pilla a todo el mundo- Dos victorias del día a día: separar fecha de hora y las filas con bandas
- El criterio: suelo, corte o resto
El modelo mental: cortar frente a caer
Tanto INT como TRUNC "quitan los decimales", pero responden a una pregunta
distinta cuando el número es negativo:
TRUNCcorta: borra los dígitos tras la coma y conserva el signo. Siempre hacia el cero.TRUNC(2.9)→2,TRUNC(-2.9)→-2.INTcae al suelo: devuelve el mayor entero menor o igual que el número. Siempre hacia menos infinito.INT(2.9)→2,INT(-2.9)→-3.
' positivo: idénticas
=INT(2.9) ' -> 2
=TRUNC(2.9) ' -> 2
' negativo: divergen
=INT(-2.9) ' -> -3 (el entero POR DEBAJO de -2.9)
=TRUNC(-2.9) ' -> -2 (solo borra el .9)
Para números positivos puedes usar cualquiera de las dos y no notarás nada. En cuanto aparece un negativo —una pérdida, una temperatura, una coordenada— se separan, y elegir la equivocada es el silencioso error de "desfase de uno en los negativos".
Nota: en la versión en español de Excel, estas funciones se llaman ENTERO (INT), TRUNCAR (TRUNC) y RESIDUO (MOD).
La regla: elige según lo que quieres decir con los negativos
La decisión es sencilla en cuanto la nombras. Si quieres decir "redondea
siempre hacia abajo en la recta numérica" —un suelo verdadero, como funciona
la edad en un calendario o el recuento de escalones— usa INT. Si quieres decir
"conserva solo la parte entera, con su signo" —quitarle los céntimos a un importe
que podría ser un abono o un cargo— usa TRUNC.
=INT(-1.2) ' -> -2 "un paso completo más abajo" (suelo)
=TRUNC(-1.2) ' -> -1 "la parte entera" (corte)
Una buena pista: si te molestaría que un resultado de -1,2 se volviera más
negativo, querías TRUNC. Si te molestaría que se volviera menos negativo,
querías INT. Esta es la misma división entre hacia-el-cero y hacia-el-infinito
que separa ROUNDDOWN de un suelo verdadero; consulta
Excel ROUND, ROUNDUP y ROUNDDOWN.
El segundo argumento oculto de TRUNC
A diferencia de INT, TRUNC admite un segundo argumento opcional: cuántas
posiciones decimales conservar antes de cortar. No redondea: corta.
=TRUNC(3.14159, 2) ' -> 3.14 conserva 2 decimales, sin redondear
=TRUNC(3.149, 2) ' -> 3.14 NO 3.15 — corta, nunca redondea
=TRUNC(1234.5, -2) ' -> 1200 negativo: corta hasta las centenas
Para números positivos, TRUNC(x, 2) coincide con ROUNDDOWN(x, 2), pero la
intención es distinta: TRUNC dice "corta aquí", ROUNDDOWN dice "redondea hacia
el cero". Cuando quieres específicamente truncar —tomar los primeros decimales de
un ID, o descartar precisión a propósito— TRUNC lo deja claro.
MOD: el resto, y la trampa del signo
MOD(number, divisor) devuelve lo que queda tras dividir: el resto. =MOD(7, 3)
es 1 porque 7 = 2×3 + 1. Sencillo, hasta que entra un negativo.
=MOD(7, 3) ' -> 1
=MOD(-1, 3) ' -> 2 NO -1
=MOD(1, -3) ' -> -2 el signo sigue al DIVISOR
En Excel, el resto toma el signo del divisor, porque MOD se define como
number - divisor * INT(number / divisor), y ese INT cae al suelo hacia menos
infinito. Esto es distinto del operador Mod de C, Java y VBA, donde el resto
sigue al dividendo (así que el -1 Mod 3 de VBA es -1). Si has portado una
fórmula o una macro y los resultados del módulo cambiaron de signo, este es el
motivo. Cuando necesites el comportamiento al estilo de esos lenguajes,
calcúlalo explícitamente en lugar de dar por hecho que MOD coincide.
Dos victorias del día a día
Separa una fecha de una hora. Excel almacena una fecha-hora como un número
cuya parte entera es la fecha y cuya fracción es la hora. INT y MOD las
separan:
=INT(A2) ' -> la fecha (quita la hora)
=MOD(A2, 1) ' -> la hora del día (quita la fecha)
Filas con bandas o agrupar cada N filas. MOD contra un número de fila da un
ciclo que se repite, perfecto para formato condicional o agrupaciones:
=MOD(ROW(), 2) = 0 ' TRUE en cada fila par -> filas con bandas
=MOD(ROW() - 2, 3) = 0 ' TRUE cada 3 filas desde arriba
=MOD(value, 2) = 0 ' ¿value es par?
Estos dos patrones —separar fecha/hora y agrupar de forma cíclica— son donde
INT y MOD se ganan el sueldo mucho más allá de "quitar el decimal".
El criterio: suelo, corte o resto
Tres opciones limpias. ¿Quieres la parte entera, con el signo preservado?
TRUNC (y usa su segundo argumento para cortar a un número fijo de decimales).
¿Quieres un suelo verdadero hacia menos infinito, o extraer una fecha de una
fecha-hora? INT. ¿Quieres lo que sobra —patrones periódicos, par/impar,
hora del día, "cada N"? MOD, recordando que el resto sigue el signo del divisor.
La única trampa de verdad es usar INT donde querías TRUNC (o al revés) sobre
datos que pueden ser negativos, así que deja que el signo de tus datos, no la
costumbre, elija la función.
Cómo ayuda ExcelMaster
La intención detrás de estas suele ser concreta —quita la hora de esta marca de
tiempo, marca cada tercera fila, toma las unidades enteras y maneja el resto
por separado— y los errores son la dirección de los negativos y la regla del
signo de MOD. ExcelMaster traduce la frase a la función correcta: INT para
un suelo o una fecha, TRUNC para conservar la parte entera de un valor con
signo, MOD para ciclos y restos con el comportamiento del signo bien tenido en
cuenta. Tú dices qué quieres del número; él escribe la versión que sobrevive a
los negativos.
Preguntas frecuentes
¿Cuál es la diferencia entre INT y TRUNC en Excel?
Ambas quitan los decimales. INT redondea hacia menos infinito (un suelo
verdadero), así que INT(-2.5) es -3. TRUNC corta hacia el cero, así que
TRUNC(-2.5) es -2. Son idénticas para los números positivos y solo difieren
en los negativos.
¿Por qué MOD devuelve un número positivo para una entrada negativa?
El MOD de Excel da al resto el signo del divisor, así que =MOD(-1, 3) es
2. Esto difiere de VBA y de la mayoría de los lenguajes de programación, donde
el resto sigue al dividendo.
¿Cómo extraigo la parte de la hora de una celda con fecha-hora?
Usa =MOD(A2, 1) para la hora del día y =INT(A2) para la fecha. Excel almacena
la fecha en la parte entera del número y la hora en la fracción.
¿Cómo trunco a 2 decimales sin redondear?
Usa =TRUNC(number, 2). A diferencia de ROUND, corta los dígitos sobrantes en
lugar de redondearlos, así que =TRUNC(3.149, 2) es 3.14.
¿Cómo compruebo si un número es par o impar?
Usa MOD con un divisor de 2: =MOD(A2, 2) = 0 es TRUE para los números pares
y FALSE para los impares. (Excel también tiene las funciones específicas
ISEVEN e ISODD.)
Probado en
Probado en: Excel 365 (Windows 11) — última verificación: 27/06/2026.
Guías relacionadas: Excel ROUND, ROUNDUP y ROUNDDOWN · Excel MROUND, CEILING y FLOOR · Excel IF · Excel SUMIFS
