Fijar vínculos entre hojas de cuadernos Excel

sábado, mayo 26, 2012

Al crear vínculos entre rangos de distintos cuadernos, como vimos en esta nota, puede presentarse un problema al introducir cambios en el cuaderno de origen.

Vamos a mostrarlo con un ejemplo. Supongamos dos cuadernos, Origen y Base. En la celda C2 de la hoja1 de Base creamos un vínculo a la celda C2 de la hoja1 de Origen



En la barra de las fórmulas podemos ver que el valor se refiere a la celda C2 del cuaderno Origen.

Guardamos y cerramos el cuaderno Base. Abrimos el cuaderno Origen y movemos le valor de la celda C2 a la celda D2. Guardamos el cuaderno Origen y lo cerramos.

Al volver a abrir el cuaderno Base veremos que el cambio en Origen no se refleja en la celda vinculada y por lo tanto muestra un valor erróneo



Esto se debe a que efectuamos el cambio en Origen después de haber cerrado el cuaderno Base. El vínculo en Base sigue refriéndose a la celda C2 de Origen.

Una solución a este problema es mantener ambos cuadernos abiertos hasta finalizar de realizar todos los cambios.

Una solución más segura es usar nombres. En nuestro caso creamos un nombre que se refiere al rango C2 en la hoja Origen (“DatoParaBase”)



Si movemos el valor de la celda C2 en origen y guardamos el cuaderno, al abrir Base veremos que la referencia se ajusta automáticamente (en lugar de la referencia C2 aparece el nombre que se refiere al rango)



Esta técnica funcionará también si Origen esta cerrado al abrir Base.

13 comments:

mundoantonio 26 mayo, 2012 17:32  

Muy buen post. Esto confirma que, en Excel, el uso de nombres en los rangos fortalece la integridad de la información.

Marco Antonio 29 mayo, 2012 16:28  

Hola Jorge
¿Y cómo sería para un rango dinámico?, pensando en el ejemplo de la nota anterior, en que el inventario de productos va creciendo.
saludos y gracias.

Jorge L. Dunkelman 29 mayo, 2012 18:15  

El nombre puede referirse a un rango dinámico (por ejemplo, los que se construyen con DESREF o con INDICE). Hay varias notas en el blog sobre el tema.

Alberto Morales 28 agosto, 2013 16:31  

Hola, tengo un problema pero no se si es parecido a esto. Tengo una celda con un vínculo a la hojax de ese mismo cuaderno y quiero pegar esa celda en diferentes cuadernos pero que vinculen siempre a la hojax del cuaderno donde estoy pegando el vínculo y no me sale. Quiero que siempre sea =hojaxp!$C$2 , un saludo y gracias

Jorge Dunkelman 29 agosto, 2013 20:50  

Alberto, no estoy seguro de entender, pero en cada cuaderno tenés que crear el vínculo a la celda y no al revés.

Alberto Morales 30 agosto, 2013 11:44  

Yo tengo un cuaderno Master donde he creado ya los vínculos desde la hoja1 a la hoja2 y quiero repetir la operación en otros muchos cuadernos. Pero al copiar las celdas con los vínculos al resto de cuadernos me enlaza siempre con el cuaderno Master. Siento no explicarme mejor. Quiero evitar crear los vínculos de uno en uno para 100 cuadernos.

Jorge Dunkelman 31 agosto, 2013 16:00  

Ese el comportamiento de los hipervínculos. El vínculo está almacenado como texto y po eso no cambia. Pero no me queda claro que buscas al copiar. ¿Cómo sabe Excel a qué cuaderno referirse?

Alberto Morales 31 agosto, 2013 17:08  

Yo tengo un archivo que se llama Libro1.xlsx en donde hay una celda con esta formula <=Hoja2!A1>, si copio esa celda a otro archivo llamado Libro2.xlsx, la formula "se convierte" en <=[Libro1.xlsx]Hoja2!A1>.
Yo al copiar la celda en el Libro2 quiero que lea la celda "A1" de la "Hoja2" del "Libro2.xlsx".....si así no queda claro lo que yo pretendo me rendiré!!!!

Jorge Dunkelman 01 septiembre, 2013 07:36  

Alberto, al copiar la fórmula Excel mantiene el vínculo al cuaderno original, como ya has descubierto. La técnica para copiar el vínculo, sin que Excel cree una referencia al cuaderno de origien, es la siguiente:
1 - Seleccionas la celda con la fórmula
2 - aprtietas F2 (entrar en modo de edición)
3 - con el mouse seleccionas todo el texto en la barra de las fórmulas, incluido el signo igual (=) y lo copias (Ctrl+C)
4 - En el Libro2 seleccionas la celda requerida y pegas el texto, que se convertirá en fórmula sin referencia al libro de origen

Alberto Morales 02 septiembre, 2013 18:29  

Ya se que así lo puedo hacer, pero no es una celda la que tengo que copiar, son casi 100 y tengo que hacerlo en 80 archivos. Por eso quería hacerlo copiando la tabla completa. Gracias de todos modos.

Jorge Dunkelman 02 septiembre, 2013 19:35  

Hola Alberto,

por lo general la mejor solución para las tareas repetitivas es usar una macro.

Supongo que se tratan de archivos ya existentes y más o menos complejos. Es decir que estás modificando algo existente. De no ser así, hay otras soluciones, como crear una plantilla.

Lennon 04 marzo, 2014 06:11  

Hola, leyendo el artículo me cogió una duda. Cómo fijas referencias a un rango de un Tabla?

Es decir, por ejemplo: Tabla1[Monto], cuál sería su equivalente al típico A$4:A$28 (por decir algo)?

Saludos.

Jorge Dunkelman 04 marzo, 2014 07:37  

Tabla1[Monto] es el equivalente a A$4:A$28. Sin embargo habrás notado que se copias o arrastras la referencia, el rango no se mantiene.La explicación del por qué y como manejarse en esos casos es un poco larga para resumirla en un comentario, Veré de publicar algo sobre el tema.

Publicar un comentario

Google+ Followers

Seguidores

Google+ Badge

Términos Legales

  © Blogger template On The Road by Ourblogtemplates.com 2009

Back to TOP