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.