Las referencias de celda se pueden construir mediante programación utilizando una combinación de las funciones concatenar(), text() e indirect() con alguna fórmula numérica. Esto funciona bien, pero puede hacer que la fórmula de llamada parezca abarrotada y torpe. También evita que la dirección de la celda referida se actualice automáticamente cuando la celda de destino se mueve (arrastra) en la hoja de cálculo.
Por ejemplo, haga una celda igual a B2:
=INDIRECT(CONCATENATE("B", TEXT(3-1,"0")))
3-1
es para fines ilustrativos; la fórmula real es más complicada
¿Hay alguna manera de crear la referencia de manera más directa, es decir, sin ir al dominio de manipulación de TEXTO, algo como:
=("B"):(3-1)
¿Y con esto también preservar la referencia automática de una celda B1 movida?
Respuesta1
No estoy seguro de si esto ayuda, pero también podría sugerir el uso de la función OFFSET.
OFFSET(cell reference, rows, cols [, height [, width]])
por ejemplo, puede usar =OFFSET(B3,-1,0)
y la referencia de la celda se actualizará a medida que sus datos se muevan
Respuesta2
Su ejemplo es directamente equivalente a
=INDIRECT("B"&(3-1))
Respuesta3
Puede usar INDEX, que se actualizará si lo arrastra, por ejemplo
=INDEX(B:B,3-1)
arrástrelo y cambiará a C:C, D:D, etc.