2011-04-09 24 views
23

¿Cómo creo una fórmula que no se invalida cuando elimino una fila?Uso de posiciones relativas en las fórmulas de Excel

Por ejemplo, en F12 de células I tienen la fórmula: = F11 + D12-E12

Esto básicamente dice tomar el valor de la celda por encima a continuación, añadir el valor de la celda 2 a la izquierda y restar el valor de la celda directamente a la izquierda.

Sin embargo, debido a que estoy usando direcciones de celda reales, tan pronto como elimino una fila, todas las filas a continuación dejan de ser válidas.

¿Cómo expreso la fórmula por la posición relativa (es decir = "1 anterior" + "2 a izquierda" - "1 a izquierda")

Gracias.

Respuesta

30

puede utilizar cualquiera

  • =OFFSET(F12,-1,0)+OFFSET(F12,0,-2)-OFFSET(F12,0,-1), o
  • =INDIRECT("F11",true)+INDIRECT("D12",true)-INDIRECT("E12",true)
  • =INDIRECT("R11C6",false)+INDIRECT("R12C4",false)-INDIRECT("R12C5",false)
  • =INDIRECT("R[-1]",false)+INDIRECT("C[-2]",false)-INDIRECT("C[-1]",false)

Ambas funciones también permiten especificar rangos, sólo tiene que utilizar todo lo que tiene sus preferencias personales (consulte la Ayuda de Excel) ...

+0

Para construir la cadena para la función 'INDIRECT' primer parámetro, también puede usar la función 'ADDRESS' de varias maneras ...:] – mousio

+1

Para compensación, ¿hay alguna manera de compensar desde la celda actual? ¿Algo así como = OFFSET (esto, -1,0) en lugar de agregar F12 explícitamente? –

+2

Seguro, solo combine con 'indirecto': si' offset (this, -1,0) 'es su objetivo, puede usar' indirect ("R [-1]", false) ', o si realmente lo necesita' offset', entonces sugiero usar 'offset (indirecto (" RC ", falso), - 1,0)'. – mousio

3
  • Puedes cambiar, por ejemplo. al estilo de referencia R1C1 (Opciones de Excel)
  • Utilice la función de desplazamiento (por ejemplo =OFFSET(F12;-1;0) para arriba)
+0

Hola Howard, gracias por su ayuda. La fórmula completa OFFSET para lo que quiero es = OFFSET (F12, -1,0) + OFFSET (F12,0, -2) -OFFSET (F12,0, -1) – FloatLeft

1

lectura entre líneas ... es su problema real de crear un total acumulado de las adiciones y deducciones columnas ?

Usted puede resumir cada columna comenzando con una referencia absoluta y terminando con una referencia relativa

Suponiendo que la fila 11 es la primera, puesto =SUM(D$11:D12)-SUM(E$11:E12) en F12.

Al copiar esta celda, la referencia absoluta permanece igual donde la referencia relativa actualiza automáticamente extendiendo el rango. Incluso puede copiar la fórmula en una línea y también funcionará en la primera línea.

Eliminar e insertar líneas no rompe la fórmula, aunque se incluirán celdas adicionales en SUM().

+0

Si adiviné correctamente echa un vistazo a http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem –

Cuestiones relacionadas