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

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)

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,"")

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,"")

Gracias por tu ayuda
Rack
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.