Funciones if anidadas en arrayformula.
Tengo esta fórmula (1) en Google Sheets:
=SI($A2="","",SI(Y(($G2 <= FIN.MES(HOY();-5));($G2 <> "");O($H2 > FIN.MES(HOY();-5);$H2 = "");O($E2 > FIN.MES(HOY();-5);$E2 = ""));1;0))
que quiero convertir a una fórmula de matriz. Intenté esta fórmula (2) pero obtengo un error “#N/A no coincidencia”:
=ARRAYFORMULA (
SIES (
FILA(A:A) = 1; "Contrato publicado, " & TEXT(EDATE(HOY();-5);"mmm-yy");
SI(Y((G:G <= FIN.MES(HOY();-5));(G:G <> "");O(H:H > FIN.MES(HOY();-5);H:H = "");O(E:E > FIN.MES(HOY();-5);E:E = ""));1;0))
)
También intenté esta fórmula (3), pero obtengo un error “Error de análisis de fórmula”:
=ARRAYFORMULA (
SI(FILA(A:A) = 1; "Contrato publicado, " & TEXT(EDATE(HOY();-5);"mmm-yy");
SI(Y(G:G <= FIN.MES(HOY();-5));G:G <> "";SI(H:H > FIN.MES(HOY();-5);H:H = "";SI(E:E > FIN.MES(HOY();-5);E:E = ""));1;0))
)
¿Alguien tiene una idea de lo que estoy haciendo mal, o cómo puedo convertir la fórmula (1) en una fórmula de matriz?
davy.ai
El principal problema con las fórmulas (2) y (3) es que contienen errores de sintaxis. Aquí hay algunas sugerencias para corregir las fórmulas y convertir la fórmula original (1) en una fórmula de matriz:
IFs
porIFS
y elimina la coma después del último argumento (1,0)). La fórmula corregida es:Esta fórmula utiliza la función
IFS
, que te permite probar múltiples condiciones y devolver diferentes resultados según cuál condición sea verdadera. Ten en cuenta que se utilizan los operadores*
y+
para combinar los resultados de varias pruebas. Además, en esta fórmula no se utiliza la funciónIF
.*
y+
, como en la fórmula (2). Además, elimina el paréntesis de cierre adicional al final. La fórmula corregida es:Esta fórmula prueba las condiciones para cada fila en los rangos especificados ($A2:$A, $G2:$G, etc.) y devuelve el resultado como una matriz de 1’s y 0’s. La función
ARRAYFORMULA
te permite aplicar la fórmula a toda la columna en lugar de copiar y pegar la fórmula en cada fila.