01 / 14Nueve Líneas, Dos Fallos, un Total

Resolución de Problemas
Excel
Fórmulas

Excel no calcula: cálculo manual y celdas con texto

El Presupuesto Cerrado Salió en 63.504,00 £ Con Totales de Hacía Tres Semanas y una Línea Que Nunca Llegó a Ellos, Porque el Libro Estaba en Cálculo Manual y una Celda Tenía Formato de Texto

7 oct 202616 min de lectura

UsaSUMAPRODUCTOSUMAVALORCONTAR, CONTARA

Thurlby Joinery presupuestó la reforma de un hotel en 63.504,00 £ y lo firmó como precio cerrado. La hoja que había detrás tenía los costes buenos y los totales malos, y en pantalla no se dijo nada.

Los costes estaban al día. La lista de precios de la madera del 3 de marzo se tecleó en la columna C esa mañana — 5.360,00 £ más repartidos en cuatro líneas — y el presupuesto salió al día siguiente.

Lo que nunca ocurrió fue un recálculo. El libro estaba en Manual, heredado de la plantilla de la que se copió, así que cada cifra de la columna E seguía siendo la que Excel calculó el 12 de febrero.

Coste en la hoja                     54.440,00
El presupuesto que justifican        73.494,00
El presupuesto que se mandó          63.504,00

Cuatro líneas estaban desfasadas, 7.236,00 £ entre las cuatro. Una quinta, la del lacado, llevaba =C10*D10 como texto y no como fórmula, así que sus 2.754,00 £ no estaban en ningún total.

MedidaEl presupuesto mandadoLos costes de la propia hoja
Líneas presupuestadas99
Líneas dentro del total89
Presupuesto63.504,00 £73.494,00 £
Margen sobre coste9.064,00 £19.054,00 £

El fichero se abrió, se recorrió y se imprimió como cualquier otro libro de la carpeta. Excel no marca una celda desfasada, y la única palabra que lo habría dicho está en una esquina de la barra de estado que nadie lee.

01Nueve Líneas, Dos Fallos, un Total

Nueve Líneas Presupuestadas, Ocho en el Total

La hoja de presupuesto de la reforma de Fairhaven: la línea, el material, el coste tal y como estaba el 4 de marzo, el margen de 1,35 que lleva cada línea y la cifra presupuestada que mostraba la hoja. Las dos últimas columnas son lo que devuelven esas mismas fórmulas cuando el libro recalcula, y lo que contenía cada celda en realidad. Los costes están en A2:D10 y la columna presupuestada es E2:E10. Cuatro líneas están desfasadas porque el libro estaba en cálculo manual y los precios del roble, el Accoya y el tulipwood cambiaron el 3 de marzo. La novena, la fila 10, lleva su fórmula como texto. SUMA(E2:E10) devuelve 63.504,00 £, los costes de C2:C10 al margen de D2:D10 suman 73.494,00 £, y los 9.990,00 £ de diferencia son dos fallos distintos en la misma columna.

ABCDEFG
1
Line
Material
Cost
Markup
Quoted
After F9
What the cell held
2
Staircase
Oak
18400
1.35
21060
24840
Oak went up £2,800.00 on the 3 March price list. The formula is right, the cost is right, and the result is the one Excel worked out on 12 February
3
Window frames
Accoya
9680
1.35
11070
13068
Up £1,480.00 the same morning. Stale by £1,998.00, which is more than the margin on the two bought-in lines put together
4
Internal doors
Bought in
6400
1.35
8640
8640
Unchanged since February, so the stale value and the recalculated value agree. Five of the nine lines look like this, which is what made the sheet look fine
5
Skirting and architrave
Tulipwood
3660
1.35
4185
4941
Up £560.00. The smallest of the four stale lines and the easiest to lose in a column of plausible numbers
6
Ironmongery
Bought in
2480
1.35
3348
3348
Unchanged. Nothing to see, and nothing wrong with the formula in it either
7
Glazing
Subcontract
7200
1.35
9720
9720
Unchanged. The subcontract price was agreed in January and holds to the end of the job
8
Handrail
Oak
3420
1.35
3915
4617
Up £520.00 with the rest of the oak. The fourth and last stale line; together the four are £7,236.00 of quote
9
Fixings
Bought in
1160
1.35
1566
1566
Unchanged, and the only line anybody checked by hand before the quote went out
10
Lacquer and finishing
Subcontract
2040
1.35
=C10*D10
2754
Added last by pasting a row in from the finisher's email, which brought a Text format with it. The formula typed into E10 is nine characters of text, so SUM skips it and £2,754.00 is in no total on the sheet

fxLas celdas con fórmulas están resaltadas en verde

Pasa el mouse sobre las celdas con fórmulas para ver la fórmula y resaltar las celdas referenciadas

La columna E es lo que llevaba el presupuesto. La columna F es lo que devuelven esas mismas fórmulas cuando la hoja recalcula, y las dos columnas coinciden en cinco de las nueve filas.

Las cuatro que no coinciden son las líneas de madera cuyo coste cambió el 3 de marzo. La que falta del total entera es la fila 10, donde la fórmula es un trozo de texto.

Escenario: Pon =SUMAPRODUCTO(C2:C10;D2:D10)-SUMA(E2:E10) debajo del total de tu propia hoja de precios, con tus columnas de coste, margen y total en lugar de esas tres. Devuelve 0 en una hoja que ha recalculado y un número en una que no.

Pruébalo en la cuadrícula

02Cuál de los Tres Fallos Es, en Diez Segundos

Tres cosas distintas se describen como «la fórmula no funciona», y no tienen nada que ver entre sí. Lo que hay en pantalla te dice cuál tienes:

Lo que vesLo que esLo que lo arregla
Un número verosímil pero viejoEl cálculo está en ManualF9
Una celda con el texto de la fórmula, a la izquierdaEsa celda tiene formato de TextoVolver a introducir la celda
Todas las celdas con texto de fórmula y columnas anchasMostrar fórmulas está activadoCtrl y el acento grave
Un número que se niega a sumarEl número es textoVALOR, o Texto en columnas

El primero es el peligroso, porque los otros tres se anuncian solos. Un total desfasado es un número normal en una celda normal, y sobrevive a cualquier revisión que lea la hoja en vez de leer su aritmética.

Escenario: Pulsa F9 en el libro del que menos te fíes y mira los totales. Si se mueve alguna cifra, el fichero estaba en manual y todos los números que has leído hoy de él eran viejos. Después pon Fórmulas ▸ Opciones para el cálculo ▸ Automático.

Pruébalo en la cuadrícula

03El Cálculo Manual y Dónde Está el Interruptor

El ajuste está en la pestaña Fórmulas, en Opciones para el cálculo, y tiene tres posiciones: Automático, Automático excepto en las tablas de datos y Manual. Las mismas tres están en Archivo ▸ Opciones ▸ Fórmulas.

El manual existe por algo. En un libro que tarda cuarenta segundos en recalcular, cada edición cuesta cuarenta segundos, y pasarlo a manual mientras trabajas es la diferencia entre una mañana y un día.

Lo que lo hace peligroso es que es invisible. Hay que tener abierta esa pestaña de la cinta para verlo, y las celdas siguen mostrando su último resultado como si no hubiera cambiado nada.

La barra de estado pone Calcular cuando quedan resultados pendientes. Es una palabra, en una barra gris, abajo a la izquierda, y es lo único que hace Excel para avisarte.

Un consuelo: «Recalcular libro antes de guardar» viene activado, así que un fichero que se guarda suele quedar al día al cerrarse. Uno que se abre, se lee, se presupuesta y se cierra sin guardar, no.

Escenario: Abre Fórmulas ▸ Opciones para el cálculo en el libro con el que presupuestas y lee cuál de las tres está marcada. Si es Manual, pulsa Ctrl+Alt+F9 antes de mirar otro número suyo.

Pruébalo en la cuadrícula

04El Modo Viaja Con el Primer Fichero Que Abres

El modo de cálculo se guarda dentro del libro, pero se aplica a todo Excel. El primer libro que se abre en una sesión fija el modo de todos los que se abran después, y una plantilla guardada en manual le pasa el manual a todo.

Así pasó en Thurlby. El fichero del presupuesto se copió de Quote_Template.xlsx, que se guardó en manual una tarde lenta de 2024, y todos los presupuestos hechos con ella desde entonces se abren igual.

Así que el fallo casi nunca está en el fichero que uno está mirando. Está en el que se abrió primero esa mañana, que puede llevar horas cerrado.

Escenario: Abre tu plantilla de precios sola, mira Opciones para el cálculo, ponla en Automático si no lo está y guárdala. Todos los ficheros copiados de ella después empiezan limpios.

Pruébalo en la cuadrícula

05F9, Mayús+F9 y Ctrl+Alt+F9 No Son la Misma Tecla

Excel lleva la cuenta de qué celdas están «sucias» — cambiadas, o dependientes de algo cambiado — y un recálculo normal solo visita esas. Eso suele ser justo lo que quieres, y de vez en cuando es la razón de que refrescar no arregle nada.

TeclaQué recalcula
F9Las fórmulas sucias de todos los libros abiertos
Mayús+F9Las fórmulas sucias de la hoja activa
Ctrl+Alt+F9Todas las fórmulas de todos los libros abiertos, sucias o no
Ctrl+Alt+Mayús+F9Reconstruye el árbol de dependencias y luego lo recalcula todo

Ctrl+Alt+F9 es el que se pulsa antes de que un número salga de la oficina. Ignora por completo la lista de sucias, lo que significa que también pilla los casos en los que esa lista estaba mal: una función personalizada, una referencia construida con INDIRECTO, un vínculo a un fichero que cambió mientras este estaba cerrado.

En Mac funcionan las mismas teclas, con fn pulsada cuando las teclas de función están puestas como controles multimedia.

Escenario: Coge el libro que más mandas fuera, pulsa Ctrl+Alt+F9 y compara el total con lo que ponía un segundo antes. Cualquier movimiento es un número que llevas tiempo mandando mal.

Pruébalo en la cuadrícula

06Una Celda con Formato de Texto Se Queda Tu Fórmula

Da formato de Texto a una celda, escribe =C10*D10 dentro y Excel guarda nueve caracteres. No hay resultado, no hay error, no hay #¡VALOR!: solo el texto que escribiste, pegado al borde izquierdo de la celda como hace el texto.

Nada de la hoja protesta. SUMA ignora el texto, así que el total es simplemente menor de lo que debería, y una columna de números a la derecha con una fórmula a la izquierda no parece mala de un vistazo.

El formato Texto llega solo. Una columna de un CSV importada como texto, una fila pegada de un correo, una columna pasada por Texto en columnas eligiendo Texto en el paso 3, una columna de tabla que hereda el formato de la fila de arriba: ninguna se anuncia tampoco.

Dos funciones lo ven. =ESFORMULA(E10) devuelve FALSO en una celda que solo parece una fórmula, y =FORMULATEXTO(E10) devuelve #N/A donde una fórmula de verdad volvería como texto.

=SUMAPRODUCTO(--ESFORMULA(E2:E10))   →  8      nueve líneas presupuestadas
=ESFORMULA(E10)                      →  FALSO
=FORMULATEXTO(E10)                   →  #N/A

ESFORMULA y FORMULATEXTO necesitan Excel 2013 o posterior; las dos están en Microsoft 365 y ninguna existe en Excel 2010. En un fichero más antiguo, =ESTEXTO(E10) devolviendo VERDADERO en una celda que debería llevar un número es la misma noticia con peores palabras.

Escenario: Pon =SUMAPRODUCTO(--ESFORMULA(E2:E10)) al lado de cualquier columna calculada y compáralo con el número de filas. Si se queda corto, una de las celdas es texto, y un formato condicional con =NO(ESFORMULA(E2)) te la señala.

Pruébalo en la cuadrícula

07Cambiar el Formato No Convierte la Celda

Esta es la parte que gasta la tarde. Selecciona la celda, ponla en General y no pasa nada: el texto de la fórmula sigue ahí exactamente igual que antes.

Un formato de número decide cómo se muestra un valor, no qué es. Cambiarlo le dice a Excel qué hacer con lo próximo que escribas en esa celda, y no dice nada de lo que ya hay dentro.

La celda hay que volver a introducirla. Para una celda eso es F2 y Entrar, que le entrega a Excel los mismos caracteres para interpretarlos, esta vez con un formato General.

Para una columna, Texto en columnas hace esa reintroducción de una pasada: selecciona la columna, ponla en General, y después Datos ▸ Texto en columnas, Delimitados, con todas las casillas de separador vacías, y Finalizar. No se parte nada y se relee cada celda.

Texto en columnas escribe en las columnas de la derecha de la que seleccionaste si la división produce más de una columna. Con todos los separadores quitados produce exactamente una, así que no se pisa nada — pero mira la casilla Destino antes de pulsar Finalizar, porque el cuadro recuerda lo último que hizo.

Buscar y reemplazar hace lo mismo sobre una selección: reemplaza = por =, con Buscar dentro de Fórmulas. Cada celda que toca se reescribe, que es suficiente para que Excel vuelva a interpretarla.

Escenario: Da formato de Texto a una celda suelta, escribe =1+1 dentro, luego ponla en General y mira cómo no cambia nada. Pulsa F2 y Entrar, y se convierte en 2. Esa es la sección entera en dos pulsaciones.

Pruébalo en la cuadrícula

08Mostrar Fórmulas Pone la Hoja Entera en Código

Si todas las celdas de la hoja enseñan su fórmula y las columnas se han puesto anchas, no hay nada roto. Ctrl y la tecla de acento grave — la de encima del tabulador, a la izquierda del 1 — activan y desactivan Mostrar fórmulas, igual que Fórmulas ▸ Mostrar fórmulas.

Es un ajuste de vista, guardado por hoja, que se guarda con el fichero y lo usa la impresora. Un compañero que te manda un libro con eso activado te ha mandado un libro que funciona y que parece un listado.

Las columnas anchas las pone Excel y vuelven a su sitio al desactivarlo. Lo único que hay que saber es que es por hoja: arreglar la que estás mirando no arregla las otras once.

Escenario: Pulsa Ctrl y el acento grave en cualquier hoja, mira una columna de fórmulas que escribiste hace meses y vuelve a pulsarlo. Es la forma más rápida de auditar una hoja sin entrar en una sola celda.

Pruébalo en la cuadrícula

09El Apóstrofo y el Espacio Delante del Igual

Un apóstrofo delante le dice a Excel que trate el resto de la celda como texto. No se ve en la celda y no forma parte del valor: aparece solo en la barra de fórmulas, como '=C10*D10.

Un espacio delante hace lo mismo a plena vista. =C10*D10 empieza por un carácter que no es =, así que Excel no tiene motivo para leerlo como fórmula y lo archiva como texto.

Los dos llegan pegando. Copia una fórmula de un correo, de una web o de un PDF y el apóstrofo o el espacio vienen con ella, y la celda en la que cae parece igual que las demás de la columna.

La solución es la de la sección 7: volver a introducir la celda. ESPACIOS no ayuda aquí, porque el contenido es texto de todas formas — ESPACIOS limpia los espacios de dentro de un valor que ya ha aceptado como texto.

Escenario: Haz clic en cualquier celda que esté enseñando texto de fórmula y lee la barra de fórmulas en vez de la celda. Si hay un apóstrofo o un espacio delante del =, bórralo, pulsa Entrar y la celda calcula.

Pruébalo en la cuadrícula

10Los Números Guardados Como Texto Suman Cero

El mismo fallo se mueve una columna. Un coste guardado como "18400" y no como 18400 es texto, SUMA lo salta en silencio y el total se queda corto exactamente una línea.

Dos recuentos lo encuentran. =CONTAR(C2:C10) cuenta números y =CONTARA(C2:C10) cuenta cualquier cosa, así que 8 frente a 9 significa que una celda de esa columna no es del tipo que crees.

Las búsquedas reaccionan distinto, y más honestamente. BUSCARX, BUSCARV e INDICE/COINCIDIR devuelven #N/A cuando una clave de texto se compara con una numérica, porque un error es la respuesta correcta a una pregunta sin coincidencia.

Las funciones con criterios ni eso. CONTAR.SI, CONTAR.SI.CONJUNTO, SUMAR.SI y SUMAR.SI.CONJUNTO devuelven 0 para un criterio que no casa con nada, y un 0 es un número que entra en un informe sin decir nada.

Tres arreglos, en el orden que merece la pena. =VALOR(ESPACIOS(C2)) para un espacio perdido, =VALOR.NUMERO(C2;",";".") cuando el fichero viene de otra configuración regional, y Pegado especial ▸ Multiplicar por una celda con un 1 para convertir un bloque en su sitio.

=CONTAR(C2:C10)        →  8
=CONTARA(C2:C10)       →  9
=LARGO(C2)             →  6     "18400 " con un espacio al final
=VALOR(ESPACIOS(C2))   →  18400

Escenario: Pon =CONTAR(C2:C10) y =CONTARA(C2:C10) juntos encima de cualquier columna de cifras que importes. Iguales es aprobado; la diferencia es el número de celdas que se van a ir de tus totales sin avisar.

Pruébalo en la cuadrícula

11Cuatro Comprobaciones Que Pillan una Hoja Vieja

La reconciliación. Una celda que reconstruye el total a partir de las entradas y le resta el total de la hoja:

=REDONDEAR(SUMAPRODUCTO(C2:C10;D2:D10)-SUMA(E2:E10);2)     →  9990

Es 0 en una hoja que ha recalculado, sean cuales sean los costes, y pilla una celda desfasada y una fórmula de texto con la misma aritmética.

El veredicto. Envuélvela para que una persona lea una palabra en vez de un número, con LET nombrando la diferencia una sola vez:

=LET(hueco; SUMAPRODUCTO(C2:C10;D2:D10)-SUMA(E2:E10);
     SI(REDONDEAR(hueco;2)=0; "Al día"; "RECALCULAR"))

El recuento de fórmulas. =SUMAPRODUCTO(--ESFORMULA(E2:E10)) frente al número de filas presupuestadas. Ocho de nueve es una celda que alguien pisó, pegó o puso en formato Texto.

La marca de hora. =AHORA() en una celda con formato dd/mm/aaaa hh:mm y etiquetada Calculado. Recalcula con todo lo demás, así que en manual se congela, y una marca de hace tres semanas es el aviso que no te da nada más.

SI.ERROR no pinta nada en ninguna de ellas. Una comprobación que no puede dar error es una comprobación que no puede decirte nada, y =SI.ERROR(VALOR(E10);"no es un número") va en la reparación, no en la auditoría.

Escenario: Añade la celda de reconciliación y la marca =AHORA() a tu plantilla de presupuestos, da formato condicional rojo a la primera cuando no sea 0, y guárdala. Todos los presupuestos hechos con ella llevan después su propia alarma.

Pruébalo en la cuadrícula

12Ocho Cosas Que Muerden

  1. Leer un total sin pulsar F9. En manual, el número de la pantalla es un documento histórico, y es idéntico a uno al día.
  2. Dar por hecho que está en automático porque este fichero lo está. El modo lo fijó el primer libro de la sesión, y ese fichero puede llevar horas cerrado.
  3. Fiarse solo de F9. Recalcula lo que Excel marcó como sucio; Ctrl+Alt+F9 recalcula el resto, que es donde viven las funciones personalizadas y los vínculos externos.
  4. Cambiar el formato de una celda para arreglar su contenido. General se aplica a lo siguiente que se escriba. El texto que ya hay dentro sigue siendo texto hasta que la celda se vuelve a introducir.
  5. Pegar una fila de un correo en una columna de precios. El pegado trae un formato, el formato suele ser Texto, y la siguiente fórmula que se escriba ahí no se ejecuta nunca.
  6. Confundir Mostrar fórmulas con un desastre. Es una vista guardada, se imprime, y Ctrl con el acento grave lo deja como estaba.
  7. Dejar que SUMA sea la comprobación. SUMA ignora el texto sin quejarse, así que una línea que falta y una línea mal escrita se ven igual: un total un poco bajo.
  8. Dejar el manual puesto en una plantilla. Un fichero guardado así en 2024 lleva fijando el modo de cálculo de todos los presupuestos hechos con él desde entonces.

13Mini Ejercicios

  1. Pon una celda suelta en Texto, escribe =1+1 y después ponla en General. Comprueba que sigue poniendo =1+1, pulsa F2 y Entrar, y comprueba que pone 2.
  2. En la hoja de ejemplo, escribe =SUMAPRODUCTO(C2:C10;D2:D10)-SUMA(E2:E10). Espera 9990; después arregla la fila 10, recalcula y espera 7236.
  3. Construye los dos recuentos sobre la columna E: =CONTAR(E2:E10) y =SUMAPRODUCTO(--ESFORMULA(E2:E10)). Espera 8 y 8 frente a nueve líneas presupuestadas.
  4. Pasa una copia del libro a manual, cambia un coste en C2 y lee la barra de estado. Busca la palabra Calcular, después pulsa F9 y mírala desaparecer.
  5. Añade =AHORA() etiquetado Calculado encima del total, pasa a manual, edita un coste y comprueba que la marca no se mueve. Ese sello congelado es el artículo entero en una celda.

Lo Que Hay Que Llevarse

Una fórmula que no calcula casi nunca es una fórmula rota. Es un ajuste — cálculo manual, un formato de Texto, una vista activada, un apóstrofo — y todos ellos dejan la fórmula en sí perfectamente correcta.

Por eso el síntoma al que hay que temer es el silencioso. Una celda que enseña =C10*D10 da vergüenza y es inofensiva; una celda que enseña 21.060 cuando la respuesta es 24.840 sale en un presupuesto y se firma.

Así que comprueba la aritmética, no las celdas.

Una fórmula de reconciliación, una marca con =AHORA() y un Ctrl+Alt+F9 antes de que nada salga de la oficina habrían sido la diferencia entre 63.504,00 £ y 73.494,00 £ — en una hoja donde todos los costes estaban bien, todas las fórmulas estaban bien y nadie había hecho nada mal desde el 12 de febrero.

Comparte este artículo:
Volver al Blog
Reto diario · Día 65

Poner en cola las solicitudes de reparación de un equipo de mantenimiento por prioridad sin tocar el registro

Un ejercicio nuevo cada día, resuelto en una cuadrícula real.

Resolver el reto de hoy