Restar celdas solo si tienen un valor en Excel

7

Quiero restar dos celdas en Excel pero solo si ambas celdas tienen un valor. Más específicamente en mi caso, la fórmula en la celda E2 es actualmente = D2-C2, pero solo quiero que esto se calcule cuando D2 tiene un valor. (D2 = ganancias, C2 = participación y E2 = ganancias / pérdidas. No quiero que se calcule la pérdida de ganancias hasta que se complete la celda de ganancias).

¿Alguien puede ayudar por favor?

Steve

Rack
fuente

Respuestas:

8

Coloque la siguiente fórmula en la celda E2 para lograr lo que desea:

=IF(ISBLANK(D2),"",D2-C2)

Si quieres que ambas celdas tengan un valor:

=IF(OR(ISBLANK(D2),ISBLANK(C2)),"",D2-C2)
Mehper C. Palavuzlar
fuente
Si se requiere que tanto C2 como D2 tengan un valor, no debería usar =IF(AND(ISBLANK(D2),ISBLANK(C2)),"",D2-C2) ¿en lugar?
3498DB
1
@Gareth: No. Si usas AND aquí, significa: si ambos D2 y C2 están en blanco, devuelve una celda vacía, de lo contrario (ambos O uno de ellos tiene un valor) devuelve D2-C2. Tenemos que usar OR por lo que queremos decir: si algún miembro del conjunto (D2 o C2) está en blanco, devuelva una celda vacía. De lo contrario (ambos tienen un valor), devuelva D2-C2.
Mehper C. Palavuzlar
Gracias por su ayuda, pero estos no parecen funcionar. Vuelve FALSO. ¿Puede proporcionar una solución por favor?
Rack
Perdóname todo terriblemente. Las soluciones de Mehper funcionaron muy bien. No sé lo que pasó antes. Creo que necesito irme a la cama. Estoy muy agradecido de que seas una estrella!
Rack
0

Prueba esto en la celda E2:

=IF(AND(D2<>"",C2<>""),D2-C2,"")
chris neilsen
fuente
Me temo que esto tampoco ayuda ... gracias por su ayuda. ¿Algunas ideas?
Rack
@Gareth ¿Puedes ayudarme otra vez?
Rack
Ah en realidad esto también funcionó. Gracias por su tiempo y esfuerzo. No sé por qué no pensé que funcionó antes.
Rack
@Rack, si fue la respuesta, ¿puede marcarla como respuesta? Saludos
Arjang
@Rack solo para señalar que solo edité la respuesta, la respuesta en realidad vino de @chris neilsen :)
3498DB
0

Puedo pensar en dos posibles razones por las que ambas soluciones no funcionaron al principio: 1) El cálculo se estableció en Manual 2) Una celda en cuestión no estaba realmente en blanco (tal vez tenía un espacio o tabulación sobrante de la importación)

1 no es demasiado probable. Puede cubrir 2 utilizando ISNUMBER en lugar de ISBLANK, y AND en lugar de OR (digamos que diez veces más rápido ...), de la siguiente manera:

=IF(AND(ISNUMBER(D2),ISNUMBER(C2)),D2-C2,"")
KnomDeGuerre
fuente
Gracias por tu ayuda
Rack