1 votos

¿Cómo ordenar las filas en Numbers sin afectar a la fórmula?

Tengo una tabla con una fórmula básica:

enter image description here

La séptima columna ( 1038€94 ) se calcula con la fórmula 1133€34 - 94€40 + (empty cell) . En otras palabras, la séptima columna se calcula mediante (value in the row above) - (value of the 4th cell of the row) + (value of the 5th cell of the row) .

Todas las filas tienen la misma fórmula en la 7ª columna.

La primera columna es una fecha. Si elijo ordenar las filas en función de esta fecha, la fórmula se rompe porque Numbers mantiene un puntero a las celdas antes de ordenar los datos:

enter image description here

¿Hay alguna manera de ordenar las filas sin romper la fórmula? ¿O hacer que la fórmula utilice la celda de arriba sin especificar la línea en la fórmula?

Gracias

2voto

Alper Puntos 81

Creo que no hay una solución fácil para esto dentro de Numbers. Debes copiar tu tabla a otra hoja como valores (resultados de la fórmula) cada vez que necesites ordenarla o recrear tus fórmulas usando, por ejemplo, el vlookup() (también revisa la función hlookup() y otras funciones de referencia en Numbers en caso de ser necesario) si necesitas ordenar en el lugar. En la segunda solución, en lugar de obtener 1133,34 mediante una referencia directa a su celda, lo obtendrías (y cualquier otro número que no esté en la misma fila en la fórmula que produce 1038,94) a través de un "vlookup" separado cada uno. Además, todos los "vlookup" deben crearse a prueba de ordenación específicamente contra las ordenaciones basadas en columnas.

Por ordenación por columnas me refiero a que las referencias a las celdas dentro de los "vlookup" deben referirse directamente sólo a las celdas de la misma fila o de toda la tabla. Entonces, asumiendo que las fórmulas en la columna donde se calcula 1133,34 son paralelas, puedes usar la misma fórmula para todas las celdas de la misma columna copiándola y pegándola.

A continuación se muestra una fórmula de ejemplo si desea tomar la segunda opción. Simplemente añade dos valores de la columna "alguna variable". El primer valor es de la fila actual y el segundo de dos días antes. Tenga en cuenta el uso exacto de las referencias absolutas de las celdas en la fórmula (los signos $, necesarios para que la misma fórmula se pueda utilizar en otras celdas de la misma columna mediante copiar y pegar) y cómo se hace referencia a la fecha de dos días antes en el vlookup de la fórmula.

enter image description here

Aquí tienes una copia de la misma fórmula en texto por si tienes problemas para recrearla y quieres copiar y pegar desde aquí:

= B5+VLOOKUP($A5−2,$A$2:$C$5,2,0)

Y aquí está el aspecto de la tabla y la misma fórmula cuando la tabla se ordena en función de la fecha:

enter image description here

2voto

SuperDuck Puntos 1026

En el caso de las celdas a las que desee hacer referencia en una fórmula utilizando su posición relativa con respecto a la celda actual, tendrá que construir referencias basadas en el número de fila y columna de la celda actual. A continuación, puede utilizar la función INDIRECT() para obtener el valor de la celda en esa referencia.

Por ejemplo, supongamos que la fórmula de la celda G24 es

= G23 - D24 + E24 ,

y después de la clasificación, esto se convierte, por ejemplo, en una célula G5 cuya fórmula se desea que sea

= G4 - D5 + E5 ,

independientemente de dónde se encuentre la fila original 23 termina después de la clasificación. Entonces puede utilizar la siguiente fórmula para la celda G24 :

= INDIRECT( "G" & (ROW()-1) ) - D24 + E24 .

Así, después de la clasificación, cuando G24 se convierte, por ejemplo, en G5 la fórmula se convierte en

= INDIRECT( "G" & (ROW()-1) ) - D5 + E5 ,

que le da el resultado deseado.


Para mantener las referencias relativas que implican columnas potencialmente cambiante del orden, puede utilizar el RxCy notación de referencia de celdas, donde x es el índice de la fila y y es el índice de la columna. Para utilizarlo, debe especificar FALSE (o su equivalente, por ejemplo 0 ) como segundo argumento de INDIRECT() .

Por ejemplo, si la célula E7 tiene la fórmula

= E6 + D7

Entonces puedes hacer todo (fila) y columna) referencias relativas utilizando la siguiente fórmula en su lugar:

= INDIRECT( "R"&(ROW()-1) & "C"&COL(), FALSE ) + INDIRECT( "R"&ROW() & "C"&(COL()-1), FALSE ) .

-1voto

john Puntos 11

Si no utiliza el signo del dólar en sus fórmulas, la clasificación debería mantener su álgebra correcta. Si hace clic en una celda de fórmula, verá un pequeño cuadro de color con un símbolo desplegable. Vea la imagen de abajo. Me refiero a la caja azul.

enter image description here

Si hace clic en el triángulo que apunta hacia abajo, obtendrá el siguiente panel:

enter image description here

Asegúrese de que ninguna de las dos casillas está marcada.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X