Cómo lidiar con celdas en blanco en una declaración IF (OR)

Cómo lidiar con celdas en blanco en una declaración IF (OR)

Tengo una fórmula que funciona, pero mi problema está en la columna G.

Si la celda está en blanco en la columna G, entonces devuelve#VALOR.

¿Alguien sabe alguna forma sencilla de solucionar este problema?

La fórmula está a continuación:

=IF(OR(L$3 < $G4,L$3 > $H4-1,$D4="None"),0,IF($D4="Once",IF(L$3=$G4,$F4,0),IF($D4="Daily",$J4,IF($D4="Weekly",$J4,IF($D4="Monthly",$J4,IF($D4="Quarterly",$J4))))))

¡Muchas gracias!

Respuesta1

jatulle tiene razón, envolverlo en un iferror funcionará y es una respuesta completa. Sin embargo, también enmascarará cualquier otro error que ocurra en cualquiera de las fórmulas de anidamiento. Esto puede ser de tu agrado o no.

Una forma diferente de envolver es poner un cheque en blanco en el frente.

  • if($g4="","", {Resto de la fórmula original },"")

a partir de la fórmula, por lo que $g4 está vacía, la celda permanece en blanco. Si tengo varias celdas y quiero hacerlo solo cuando todas tengan valores, entonces uso un OR como

  • if(or($g4="",L$3=""),{Resto de la fórmula original },"")

Por último, si voy a usar esto en varios lugares, lo convertiré en un nombre [usando el administrador de nombres en la cinta]

  • Válido=o($g4="",L$3)

entonces se usaría como

  • If(Válido,{Resto de la fórmula original },"")

Prefiero usar un nombre como Valid en lugar de or($g4=""), más fácil de usar más adelante si necesito modificar algo.

Por último, seguí usando $g4="" en lugar de isblank($g4). Se podría utilizar ISblank si se lee mejor.

Respuesta2

Envuelva toda la fórmula IFERROR( anything , "value if error" )así:

=IFERROR(IF(OR(L$3 < $G4,L$3 > $H4-1,$D4="None"),0,IF($D4="Once",IF(L$3=$G4,$F4,0),IF($D4="Daily",$J4,IF($D4="Weekly",$J4,IF($D4="Monthly",$J4,IF($D4="Quarterly",$J4)))))), "" )

información relacionada