El texto sin envolver no fluirá a las celdas vinculadas

2

He vinculado celdas que tienen texto que fluye a celdas adyacentes vacías en el original.

En la hoja de destino, las celdas vacías mostraban ceros y el texto fluido desapareció.

Suprimir los ceros en las opciones de Excel no solucionó el problema, parece que el enlace en las celdas de destino detiene el ajuste.

La única forma de ver el texto es eliminar el enlace, pero no se actualizará si cambio el original.

¿Alguien conoce una solución alternativa para forzar el flujo de la celda de destino si la celda adyacente original está vacía (es decir, el valor del enlace devuelve 0)?

¿O (segunda opción) para forzar que las celdas de destino seleccionadas fluyan independientemente del contenido de las celdas adyacentes?

Piecevcake
fuente
1
No estoy seguro de seguir su pregunta, pero el texto (y solo el texto) fluirá a las celdas adyacentes, pero solo si las celdas adyacentes están vacías. Si la celda adyacente contiene algo, incluido 0, nulo ("") o cualquier otra cosa, el texto no fluirá. Si no entiendo la pregunta, sería útil incluir una captura de pantalla o describir completamente las celdas de origen y destino y las celdas adyacentes.
Fixer1234

Respuestas:

0

Creo que @ fixer1234 lo describió correctamente,

El texto solo fluye en celdas vacías . Vacío no incluye 0, en blanco o que contiene una fórmula que resulta en blanco, cero, "" o lo que sea.

Entonces, la única opción es eliminar las fórmulas (y cualquier otra cosa) en las celdas donde desea que fluya. (lo que podría no ayudarte ... pero esa es la limitación)

Aganju
fuente
0

Estoy totalmente de acuerdo con la otra respuesta: esto no es algo que Excel hace de forma nativa. Sin embargo, tengo un par de sugerencias:

I. Funciones elegantes de la hoja de trabajo

En la hoja de destino,

  • poner =IF(A1<>"", LEFT(A1,5), "")en la primera celda,
  • poner =IF(B1<>"", LEFT(B1,5), MID(A1,6,5))en la segunda celda,
  • poner =IF(C1<>"", LEFT(C1,5), IF(B1<>"", MID(B1,6,5), MID(A1,11,5))) en la tercera celda,
  • etc.

la sustitución de A1, B1, C1, etc., con las referencias a la hoja de origen. Es decir, estaría haciendo que el texto (sobre) fluya "manualmente". Esto se verá horrible a menos que use una fuente de ancho constante, como Courier o Consolas, y ajuste los anchos de columna para que tengan 5 caracteres de ancho en la fuente seleccionada (o ajuste el 5 para que coincida con los anchos de columna). Si desea que los anchos de columna sean diferentes, esto se vuelve más complicado.

Si desea que el texto se ajuste cuando no puede desbordarse, esto se vuelve mucho más complicado.

II VBA

Ya sea:

  1. Abandone la idea de usar la capacidad de Excel para vincular una celda a otra (s). Defina una subrutina VBA para copiar la hoja de origen a la hoja de destino. 
  2. Escriba una subrutina VBA para hacer lo que sugiere la otra respuesta: para cada celda de la hoja de destino, mire la celda correspondiente en la hoja de origen. Si la celda de origen está en blanco, configure la celda de destino correspondiente en blanco. Si la celda de origen no está en blanco, establezca la celda de destino correspondiente en una referencia a la celda de origen.

Es posible que desee ejecutar cualquiera de estos cada vez que cambie la hoja de origen; o puede hacerlo a pedido. Debería pensar en cómo manejar las celdas de origen que se evalúan en una cadena en blanco sin estar vacías; por ejemplo, contienen =""o algo parecido =IF(Q42>=100, "red hot", "").

Mi opinión personal: la opción 2 es mejor.


PD: es posible que desee ver Display Blank cuando haga referencia a la celda en blanco en Excel , si aún no lo ha hecho. AFAIK, no responde directamente a su pregunta, pero su discusión de temas relacionados puede ser útil para usted.

Scott
fuente