sábado, agosto 02, 2008

Hipervínculos en Excel

Excel permite crear hipervínculos con facilidad. Todo lo que tenemos que hace es seleccionar una celda y pulsar Ctrl+Alt+K,




o usar el menú contextual pulsando el botón derecho del Mouse sobre la celda



o usar el menú Insertar-Hipervínculo



En este caso



creamos un vínculo a la celda A1 de la hoja Lista en nuestro cuaderno.

De la misma manera podemos crear vínculos a celdas en otras hojas del cuaderno, celdas en hojas de cuadernos remotos y también a páginas en la WEB.



Al señalar la celda con un hipervínculo, podemos ver la información de pantalla, dato que podemos modificar en el diálogo de creación del hipervínculo.

Además podemos agregar hipervínculos no sólo a celdas sino también a otros objetos como gráficos o imágenes, por ejemplo.

Otra forma de crear un hipervínculo es usar la función HIPERVINCULO. Por ejemplo, podemos crear el mismo hipervínculo como en la celda A1, usando el asistente de funciones


Sin embargo al referirse a un rango en una hoja del cuaderno, la función no funcionará





Para solucionar este problema usamos el símbolo # combinado con el nombre de la hoja y la referencia a la celda, en forma de texto, como argumento de la función
=HIPERVINCULO("#Clientes!A1","Pasar a la hoja Clientes)



La ventaja de usar la función en lugar del menú, es que podemos crear vínculos dinámicos.

En esta nota nos referiremos sólo a vínculos dentro del cuaderno activo.

Por ejemplo, supongamos que tenemos un cuaderno con varias hojas, una de ellas llamada "Clientes" y otra llamada "Proveedores".
En lugar de crear dos hipervínculos, uno a cada hoja, podemos crear una estableciendo la hoja a la que queremos pasar en forma dinámica.
Por ejemplo, en la celda A1 creamos una lista desplegable (usando el menú Validación de Datos) con los nombres de las hojas del cuaderno



En la celda C1 ponemos está fórmula con la función HIPERVINCULO

=HIPERVINCULO("#"&A1&"!A1","Pasar a la hoja "&A1)

Como ven, usamos el valor de la celda A1 también para crear la referencia a la hoja y también para crear el nombre descriptivo



Tanto la referencia como el nombre descriptivo cambian de acuerdo a la selección en la celda A1.

Hasta aquí hemos creado hipervínculos que nos llevan a la celda A1 de la hoja buscada. Ahora supongamos que queremos que el vínculo nos lleve automáticamente a la primer celda vacía de una determinada columna.
En la hoja Clientes tenemos una lista de clientes y sus direcciones. Queremos que el hipervínculo nos lleve, en nuestro ejemplo, a la celda A9 de la hoja Clientes



Dado que la columna A de la hoja Clientes contiene valores de texto, podemos usar esta fórmula para encontrar la dirección de la primer celda vacía

=DIRECCION(COINCIDIR("*",Clientes!A:A,-1)+1,1)

En esta fórmula estamos suponiendo que el símbolo * no aparece como texto en ninguna de las celdas del rango de búsqueda.
Ponemos esta fórmula en la celda B1 y la usamos como referencia en la función HIPERVINCULO



En lugar de usar una celda auxiliar, podemos incluir la fórmula de la celda B1 como argumento en la función HIPERVINCULO

=HIPERVINCULO("#"&A1&"!"&DIRECCION(COINCIDIR("*",Clientes!A:A,-1)+1,1),"Pasar a la hoja "&A1)

Finalmente podemos dar un paso más adelante y vincular dinámicamente también la búsqueda de la primer celda libre en función del valor de la celda A1

=HIPERVINCULO("#"&A1&"!"&DIRECCION(COINCIDIR("*",INDIRECTO(A1&"!A:A"),-1)+1,1),"Pasar a la hoja "&A1)
Aquí tenemos que usar la función INDIRECTO para que Excel considere el valor de la celda A1 en la función COINCIDIR.



El archivo con la fórmula se puede descargar aquí





Technorati Tags:

111 comentarios:

  1. Gracias por haber respondido a mi consulta. Como puedo hacer para que en la funcion HIPERVINCULO vaya a la primera posicion libre de la columna A de una hoja llamada Alta. Yo veo que han armado la funcion =HIPERVINCULO("#"&A1&"!"&DIRECCION(COINCIDIR("*",INDIRECTO(A1&"!A:A"),-1)+1,1),"Pasar a la hoja "&A1)pero no logro adaptarla a mi necesidad. Muchas gracias los felicito y que Dios los bendiga. Daniel

    ResponderBorrar
  2. Hola
    tienes que adaptar la función COINCIDIR en función del tipo de datos que hay en el rango de referencia. En la nota se supone que todos los valores de la columna A, donde buscamos la primer celda libre, son texto.
    Fijate en la nota posterior sobre como encontrar el último valor del rango.

    ResponderBorrar
  3. Hola Jorge, al intentar abrir el archivo, me sale un mensaje de error de Visual, donde dice que no se encontró el módulo.

    ResponderBorrar
  4. Se supone que no hay ninguna macro en el archivo. Pero al revisarlo, veo que se ha "pegado" la macro de otro cuaderno (la de crear un índice con las hojas de un cuaderno).
    No tengo la menor idea cómo ha llegado esa macro ahí, pero no es su lugar.
    Abre el editor de Vba y elimina el módulo.

    ResponderBorrar
  5. Hola, tengo problemas con la fórmula. Si bien el hipervinculo marca la correctamente la celda de destino, esta no se abre, sabes cual puede ser el problema???

    =HIPERVINCULO(DIRECCION(COINCIDIR(C8;'[Informe Ecocardiogáfico.xls]Resumen'!$B:$B;0);2;3;1;"'[Informe Ecocardiogáfico.xls]Resumen'");"ver")

    Gracias

    ResponderBorrar
  6. Trata de usar el símbolo # como está indicado en la nota.

    ResponderBorrar
  7. Hola,
    ¿Necesito ayuda para crear un hipervínculo de en una celda (ej:A1de una base de clientes morosos)), que me redireccione directamente a a otra hoja del mismo libro, justo en la celda donde aparce este mismo número de cliente( que por ej: esta en la celda B4575)?.
    Lo he conseguido haciendo el proceso 1 por 1, pero se trata de más de 5000 clientes, es posible hacerlo con una referencia de un rango de celdas. no consigo dar con la fórmula.¿Se ha de crear una macro?
    Muchas gracias

    ResponderBorrar
  8. No, no hace falta una macro. Si lo que necesitas es que el hipervínculo se dirija a una elda específica a partir del valor de una celda, se puede hacer con la función HIPERVINCULO, en forma similar a la que muestro en la nota.
    Como creo que es un tema de interés general estaré publicando una nota mostrando cómo construir la fórmula.

    ResponderBorrar
  9. Lo he intentado, pero no consigo hacer el hipervínculo para todos los clientes. Se trata de que al ir sobre la celda dónde aparece el núm de cliente,y automáticamente me sitúe en la celda de otra hoja (en el mismo libro) donde está ese num. de cliente, pero con otra información adicional. muchas gracias.

    ResponderBorrar
  10. No se si habrás visto la nota que publique ayer (a partir de tu consulta).
    No me queda claro qués es la información adicional que mencionás. ¿Podrías dar un ejemplo?

    ResponderBorrar
  11. Como puedo hacer para crear un hipervínculo a una dircción de correo outlook dependiendo del valor de una celad con una lista validada?

    Espero que me haya explicado.Gracias.

    ResponderBorrar
  12. Cuando ponemos un texto en una celda que coincide que el patrón de una dirección electronica (xxx@yyy.com), Excel lo convierte automáticamente en una hipervínculo de tipo "mail to:" lo que hace que se active el Outlook al apretar el enlace.
    Si creamos la dirección a partir del valor de una lista desplegable hay que dar un pequeño rodeo para que esto funcione.
    Lo mostraré en la próxima nota.

    ResponderBorrar
  13. Como configuro el resultado de la Funcion TextoBaht, para que traduzca en Español

    ResponderBorrar
  14. Estimado
    no se puede configurar TEXTOBATH para que de el resultado en castellano (o en cualquier otro idioma que no sea Thai).

    Puedes fijarte en alguna de mis notas sobre el tema donde hay varias funciones para traducir números a palabras:

    Función números a letras corregida

    la versión para México

    Otra versión

    Por qué Microsoft eligió desarrollar una función que traduce números a texto en tailandés en lugar de castellano e incluirla en el paquete es para mí un misterio.

    ResponderBorrar
  15. ¿Se puede crear un vinculo a un mail en determinado? Me explico, que cuando haga click en una celda determinada me abra un mail (no una dirección de mail, sino un mail recibido) determinado.

    Gracias

    ResponderBorrar
  16. En la medida que el mail sea un archivo guardado en una carpeta que puedas ubicar, todo lo que que hay que hacer es crear el hipervínculo.

    ResponderBorrar
  17. se que desde Excel se puede hacer un hipervinculo a un archivo de Word, pero ¿es posible que el Hipervinculo me abra un parrafo especifico del archivo de Word?

    ResponderBorrar
  18. Si. Para crear un hipervínculo a una página determinada usamos

    C:\carpeta\documento.doc#número de pagina

    Para ir a un parágrafo determinado tenemos que crear un marcador en el documento Word, darle un nombre al marcador y usar

    C:\carpeta\documento.doc#marcador

    ResponderBorrar
  19. Es posible establecer un texto como "Info de Pantalla" Usando la función =HIPERVINCULO()?
    Gracias!

    ResponderBorrar
  20. ¿Se puede conseguir que aparezca un texto al poner el mouse sobre un enlace creado mediante la función =HIPERVINCULO()?

    Lo mismo que sale si usamos "Info. de panalla"
    Gracias

    ResponderBorrar
  21. No con la función HIPERVINCULO, pero podría escribirse una UDF (función definida por el usuario) que te permita hacerlo.

    ResponderBorrar
  22. Gracias Jorge por todo lo que nos enseñas!!
    Realmente es muy útil todo esto.

    Estaría genial que pudieras instruirnos en cómo desarrollar una función de ese estilo, ya que el cartelito con la dirección del hipervínculo puede ser molesto.

    ResponderBorrar
  23. Gino,
    ¿a qué cartelito te referís?

    ResponderBorrar
  24. Hola Jorge, me gustaria que me ayudaras con una duda que tengo, lo que sucede es que tuve que realizar un archivo en excel donde estan hipervinculados demasiados archivos de word que se encuentran en una carpeta especifica...pero tuve que cambiar los documentos de carpeta y ya no me abren supongo que por lo q cambie de ruta, mi preguntaen si seria ¿Como hago para cambiar la ruta de todos los hipervinculos sin necesidad de hacerlo uno por uno? , he escuchado de la funcion hipervinculo ... pero = si tuviera que cambiar de nuevo de carpeta ,..tendria quehacerlo uno por uno...como hago para que en posteriores oportunidad pueda cambiarlo automaticamente....

    ResponderBorrar
  25. Tendrías que usar una macro para hacer los cambios en forma eficiente.
    En futuros cuadernos te convendría usar la función HIPERVINCULO y poner la carpeta como variable en una celda. De esa manera, al cambiar al carpeta de los archivos, bastaría con cambiar el valor de la celda de referencia.

    ResponderBorrar
  26. Hola jorge, excelente las explicaciones que das, queria que me ayudaras con un problema que tengo, estoy haciendo hipervinculos dinamicos con las instrucciones que das, algunos vinculos funcionan perfectamente, pero otros nombres de la lista cuando voy a presionar el hipervinculo aparece una advertencia de excel diciendome LA REFERENCIA NO ES VALIDA, y no me lleva a la hoja que deberia llevarme sino que se queda en la hoja principal. A que se debe esto? agradezco tu oportuna respuesta.

    ResponderBorrar
  27. Hola Camilo,
    es un tanto difícil decirlo sin ver el cuaderno pero tal como aparece en la advertencia el hipervínculo está apuntando a una referencia no válida. Esto puede ser un objeto como un gráfico o un rango en un nombre que ha sido eliminado.

    ResponderBorrar
  28. Andres de la Fuente14 mayo, 2010 06:21

    Hola, dí hace un par de días con tu página y la verdad es que te pasaste, eres un gurú. En base a algunas respuestas que dabas a otros como yo resolví algunos problemas. Sin embargo tengo otro y al que no he podido encontrarle vuelta. En resumen, tengo una planilla de informe semanal que entregar junto a un respaldo fotográfico adjunto. Esta planilla consta de 3000 códigos y para cada uno de estos tuve que tomar entre 4 a 6 fotos las que debía vincularlas al código respectivo. Lógicamente no pude hacerlo con todas así es que lo hice con la mejor para cada código con la función de hipervínculo en la primera, y luego copy/paste. Grabé el respectivo disco para entregarlo pero se me ocurrió probar que haya quedado bien grabado, y ... sorpresa ... no me abrían los vínculos. Pensé que guardando todo, planilla y fotos juntas, me respetaría los vínculos. Qué puedo hacer, cómo hago para que en la ruta del vínculo la unidad sea reconocida siempre (ya que varía según el comutador donde se lea si es D: o E:, etc, la unidad de disco).
    Por favor, ayuda !!!

    ResponderBorrar
  29. Estaré publicando la respuesta en una nota en el blog.

    ResponderBorrar
  30. Esta paguina nunca la habia visto, pero me parece que tiene cosas interesantes ya que a mi me gutsa aprender todo lo relacionado con Excel.

    Mucho agradeceré si me pasan todos los tips que se pueda para aprender mas.

    Saludos cordiales a Todos los lectores de este Blog

    Saludos
    Eduardo Suárez Soto

    ResponderBorrar
  31. Eduardo,
    estás invitado a leer las notas del blog, son "sólo" 437 :)

    ResponderBorrar
  32. Hola Jorge, gracias por tu respuesta.
    Hay posibilidades que cuando ingrese un email, el excel no lo categorice como hipervínculo sino colo como texto? He intentado poner la celda solo Texto pero tampoco funciona.

    ResponderBorrar
  33. Bueno, esto si es una casualidad! Estoy preparando una nota sobre el tema. Espero publicarla en las próximas horas.

    ResponderBorrar
  34. Gracias por el dato, lo esperaré con ansias!

    ResponderBorrar
  35. Hola, muy buenas a todos..este blog me parece una pasada, muy bueno la verdad...ayá voy con mi consulta..

    necesito saber como establecer a partir de una lista desplegable, hipervinculos a diferentes hojas de mi libro...es decir, en la lista salgan varios nombres, y que pinchando en cada uno, me lleve a dicha hoja...no a la misma...

    no lo consigo, ayuda por favor...solo consigo que todos los nombres me lleven a la misma hoja no a hojas diferentes...gracias

    Saludos
    JAvier Minguela

    ResponderBorrar
  36. Hola Javier,
    no me queda claro que es lo que quieres hacer. De una lista desplegable puedes obtenerun único valor. Puedes usar ese valor como argumento en la función HIPERVINCULO para crearlo en forma dinámica.
    Si quieres elegir una serie de nombres de una lista desplegable y que éstos se conviertan en hipervínculos tendrías que usar VBa (macros).

    ResponderBorrar
  37. Vamos a ver, lo que quiero es que al elegir un valor de la lista desplegable(asignaría a la celda ese valor),pueda despues ir a la hoja que estaria relacionada con ese nombre o palabra..es decir, que cada nombre que hay dentro de la lista, este relacionado (a traves de hipervinculos o creo que a traves de macros) con una hoja diferente de mi libro..de manera que al elegir un valor de la lista, posteriormente al apretarlo(con hipervinculos o como sea)me lleve a dicha pagina...gracias por tu ayuda

    Javier

    ResponderBorrar
  38. Con listas desplegables no hace falta usar hipervínculos.
    Suponiendo que la lista desplegable con los nombres de las hojas esta en la celda C3 de un cuaderno, este evento (hay que ponerlo en el módulo de la hoja) hace que al elegir el nombre en la lista, la hoja sea activada

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = Range("C3").Address Then
    Sheets(Target.Value).Select
    End If
    End Sub

    ResponderBorrar
  39. Hola, como se hace cuando los nombres de las hojas contienen espacios? porque no me los toma. Si los que no contienen espacios.

    ResponderBorrar
  40. Cuando creas hipervínculos con la función HIPERVINCULOS y el nombre de la hoja de referencia contiene espacios, tienes que poner al principio y al final del nombre de la hoja un ' (comilla)

    ResponderBorrar
  41. Consulta, necesito utilizar la formula Hipervincluo, pero que cuando hago clik en la celda, me lleve automaticamente a un rango especifico de celdas, en el mismo archivo pero en otro libro

    ResponderBorrar
  42. Fijate en esta nota.
    ¿Qué quieres decir con "el mismo archivo pero otro libro"?

    ResponderBorrar
  43. me explico. Lo que tengo es lo sig.
    hoja 1 lista de datos, hoja 2 lista de datos, hoja 3 lista de datos;
    hoja 4 fotos de lista de la hoja 1, hoja 5 fotos de la lista de la hoja 2, hoja 6 fotos de la lista de la hoja 3.
    En las hojas donde tengo las fotos, tengo
    foto 1, foto 2 foto 3.......
    en las hojas de las listas, tengo
    lista hoja 1... manzana, pera, higo, naranja (link celda "manzana" a hoja 4 celda a1:a20 "foto manzana", link celda "pera" a hoja 4 celda a23:a35 "foto pera".....etc) lo mismo para la hoja 2 vinculadas a la hoja 5 y así..
    Todo me responde perfectamente, la cosa es que quisiera ocultar las hojas donde estan las fotos, que solo se vean las hojas "frutas", "verduras", "legumbres" pero no se muestren las otras a menos que hagas click en el vínculo y solo muestre la foto que quiero, y luego vuelva a desaparecer. Es esto posible?

    ResponderBorrar
  44. Si, es posible pero no con hippervínculos. Tienes que usar una macro para ocultar o mostrar las hojas. Un hipervínculo a una hoja oculta no la hace visible.

    ResponderBorrar
  45. hola quiero saber si es posible poder recibir en mi correo informacion kçque contiene hipervinculos y verla sin ningun problema ...sobre todo un hoja de excel que contenga informacion de un cuadro al cual se le ha creado un hipervinculo de imagenes y al enviarla al mail pueda ver toda la informacion junto a las imagenes.... no se si m explico... ayuda porfa

    ResponderBorrar
  46. No, no se entiende. Al apretar un hipervínculo en un mail abrimos un archivo (Excel o cualquier otra aplicación) o una página en la Internet. Todo lo que veremos es lo que haya en el archivo o en la página.

    ResponderBorrar
  47. HOLA
    TENGO UNA VALIDACION DE DATOS EN EXCEL LA CUAL QUIERO, QUE CUANDO SELECCIONE UN DATO ME ABRA UN PDF EL CUAL ESTA GUARDADO EN LA MISMA CARPETA QUE EL DOCUMENTO DE EXCEL Y ESTA LLAMADO IGUAL QUE EN LA VALIDACION DE DATOS......GRACIAS

    ResponderBorrar
  48. Para que un valor seleccionado de una lista desplegable abra un archivo, tienes que programar un evento. Otra alternativa es usar la técnica descrita aquí para armar el hipervínculo y luego pulsarlo para abrir el archivo.

    ResponderBorrar
  49. Y otra cuestión: no escribas los comentarios en mayúscula; es como si estuvieras gritando.

    ResponderBorrar
  50. Hola

    Gran aporte este, me ha servido bastante, pero tengo un problema

    En algunos casos los hipervinculos me mandan un error de La referencia no es válida.

    Me sucede cuando el nombre de las hojas esta separada por espacios. Creo que es por eso.

    Quisiera saber si hay alguna forma de aplicar un hipervinculo a una hoja con el nombre separado por espacios?

    ResponderBorrar
  51. Tienes que encerrar el nombre de la hoja con comillas ('). Por ejemplo, si tienes una hoja que se llama "clientes ricos", la referencia a la celda A1 sería

    'clientes ricos'!A1

    ResponderBorrar
  52. Me funcionó perfectamente, tenía días de estar intentando hacerlo, y en dos días me lo solucionaste todo.

    Muchas gracias.

    ResponderBorrar
  53. en la hoja1 de un libro tengo en la columna A un valor en algunas celdas y quisiera activar un hipervinculo en la celda de b contigua a la del valor. quisiera que el hipervinculo me situara en la hoja2 en la columna B fila del valor de hoja1 columna ax. Gracias

    ResponderBorrar
  54. Poniendo esta fórmula en la columna B de la hoja1

    =HIPERVINCULO("#"&"Hoja2!B"&FILA();"Ir a hoja 2")

    y copiándola a lo largo del rango relevante.

    ResponderBorrar
  55. Hola, les tengo un reto.
    En un libro llamado: Semi, tengo una hoja que se llama ingreso, en la celda 'I6' quiero crear un hipervinculo que me lleve a otra celda 'B6' en una hoja que se llama datos.
    El punto es, ¿como hago para que automaticamente me aparezca en la celda 'I7' un vinculo que me lleve a la celda 'B7', de la 'I8' a la 'B8' y así sucesivamente. Gracias

    ResponderBorrar
  56. Gracias esta informacion me ayudo muchisimo!!!!!

    ResponderBorrar
  57. La única forma de hacer que algo "aparezca automáticamente" en Excel es programando un evento (macros, hay varias notas sobre el tema en el blog).
    También podrías intentar poblar de antemano la celda I7 con un fórmula que use la función HIPERVINCULO para crear el enlace.

    ResponderBorrar
  58. Exist´ra una función en Excel o agregar una, para contar los hipervínculos de una rango?

    ResponderBorrar
  59. Excel no tiene una función nativa para esa tarea pero podemos crear con facilidad una UDF (función definida por el usuario). Por ejemplo


    Function contar_Hiperv(Rango As Range)

    contar_Hiperv = Rango.Hyperlinks.Count

    End Function

    ResponderBorrar
  60. Hola Jorge,

    Tengo el siguiente caso que me ha dado un dolor de cabeza:

    En la Hoja1 tengo en la columna A unos días habiles del mes, y la columna B tengo una ruta de un archivo que depende de cada uno de los días del mes. Ahora, en la Hoja2, en la celda A1 tengo una lista desplegable y en la A2 tengo la función BUSCARV, donde quiero que dependiendo del día hábil que escoja en la lista desplegable, me busque en el archivo que tengo en la Hoja1, y me arroje el dato que necesito de ese archivo. ¿ Es posible hacer esto?

    Muchas gracias!

    ResponderBorrar
  61. Suponiendo que los cuadernos de los cuales hay que extraer los datos no están abiertos, podrías usar algunas de las alternativas que muestro en esta nota.

    ResponderBorrar
  62. a mi no me funciona el hipervinculo, me envia un mensaje que dice "operacion Cancelada debido a restricciones en este equipo. pongase en contacto con el administrador del sistema"

    ResponderBorrar
  63. En ese caso lo mejor es poerse en contacto con el adninistrador del sistema :)

    ResponderBorrar
  64. Hola, he descubierto el blog y me parece de una gran ayuda. Yo tengo una duda de hipervinculo que seguro que es muy fácil pero no consigo resolverla. Quiero vincular una pagina web en una celda, lo he hecho de varias maneras, insertando hipervinculo, copiar y pegar en la celda,... y hay unas direcciones que si funcionan y las otras no! existe algún truco?
    Gracias. Un saludo

    ResponderBorrar
  65. Si la página existe no veo ningún motivo para que el hipervínculo no funcione.

    ResponderBorrar
  66. Hola, tengo la siguiente macro en la primera hoja de la excel:

    Private Sub Worksheet_Activate()
    Dim i As Integer
    Dim hoja As Worksheet
    i = 0
    'por cada hoja del conjunto Hojas
    For Each hoja In Worksheets
    i = i + 1
    'se graba su nombre a partir de la celda A1 de la Hoja1
    ActiveSheet.Cells(i, 1) = hoja.Name
    'se repite el ciclo
    Next
    End Sub

    y va de maravilla. Ahora como puedo hacer que me funcione con listas desplegables.

    He puesto en el módulo de la hoja lo que habéis publicado y no me funciona.

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = Range("C3").Address Then
    Sheets(Target.Value).Select
    End If
    End Sub

    Gracias.

    ResponderBorrar
  67. Estimado,
    la primer macro todo lo que hace es poner los nombres de las hojas del cuaderno en la columan A, empezando por la celda A1. No veo que relación tiene con hipervínculos.
    En la nota no se mmenciona ninguna macro, así que no se a qué te refieres.
    En cuanto al evento Worksheet_Change tiene que poner

    Sheets(CStr(Target)).Select

    ResponderBorrar
  68. Buenos días, Jorge. Efectivamente la primera macro no tiene nada que ver con los hipervínculos. Lo que yo quiero hacer, y soy un profano en este tema, es poner el hipervínculo a los nombres que me salen de la primara macro que son 184 y que están en una lista.

    ¿Me puedes explicar como sería la segunda macro?

    ResponderBorrar
  69. En esta nota hay un enlace para descargar una macro que hace esa tarea.

    ResponderBorrar
  70. Muchísimas gracias, Jorge. Eres genial.

    ResponderBorrar
  71. Una consulta, he notado que usas los simbolos "#" y "&" me podria alguien ayudar a saber acerca de las funciones de estos simbolos dentro de las formulas.

    Gracias de antemano

    ResponderBorrar
  72. Hola José, el uso de # está explicado en la nota; el operador & se usa para combinar porciones de texto, como tambi[en puede hacerse con la funci[on CONCATENAR.

    ResponderBorrar
  73. Hola !!! sigo todos los pagos la realizar un hipervinculo de una hoja a otra que esta en el mismo documento y sin embargo se registr el mensaje de error:"La referencia No es valida", me podrian explicar el motivo.
    Gracias.

    Atte.

    Ali

    ResponderBorrar
  74. Buenos Dias

    Hombre estoy buscando crear un inicio por listas desplegables, que al terminar la seleccion, la ultima seleccion me de un hipervinculo que al darle clic me envia ala direccion en el mismo libro, donde esta todos los datos de precio y presentaciones de un producto, en definitiva es que por medio de listas desplegables buscamos un determinado producto, y este producto al final nos da un hipervinculo que nos envia a toda la informacion de el producto seleccionado.

    Puede ver el archivo de excel en
    https://docs.google.com/file/d/0Bw7i8yy-CiuKVG9zUnV0U3NfOWs/edit?usp=sharing

    gracias por colaborarme en esto ya que no he encontrado solucion

    ResponderBorrar
  75. Podrías usar el resulado de la elección en la lista desplegable para crear en una celda contigua un hipervínculo con a función HIPERVINCULO.

    ResponderBorrar
  76. Quiero saber como se puede poner un hipervinculo a un archivo PDF que se encuentra como imagen en el mismo archivo excell 7.

    ResponderBorrar
  77. Cllic con el botón derecho sobre la imagen abre el menú contextual; elegir Hipervínculo

    ResponderBorrar
  78. Hola Jorge agradecerte por tu gran aporte!!! quisiera hacer hipervinculo con lista desplegable pero que me envie a hojas de otros libros. se puede? ayudame porfa

    ResponderBorrar
  79. Hola Paulino, se puede usando el valor elegido de lalista desplegable como variable dentro de la función HIPERVINCULO, tal como está explicado en la nota.

    ResponderBorrar
  80. Hola disculpa, me estoy rompiendo la cabeza espero y me auxilies ando buscando la forma (desconosco si se pueda) de utilizar excel como los frames de las paginas web, en la hoja1 crear un hipervicunculo a datos con imagenes de la hoja 2 pero que muestre la información en cierta area de la hoja1, (sin perder de vista lo escrito en la hoja 1) seria como una combinación de información o por medio de alguna pestaña o boton me haga esa función, que cargue la información de la hoja2 u hoja3 en la misma hoja no sin perder los datos que contiene la hoja1 (que lo habra en un area determinar... espro haberme explicado y de ante mano que me eches la mano o si no de una vez volverme loco jaja un saludo y grácias!

    ResponderBorrar
  81. Bien, no termino de entender la consulta. Veamos que he entendido: tener un hipervínculo en alguna celda que al activarlo muestre un rango determinado, que puede estar en otra hoja del cuaderno. Si es así se puede hacer pero usando eventos (macros). Tal vez publique una nota sobre el tema.

    ResponderBorrar
  82. Hola me llamo Juanjo. Soy novato en esto. Me gustaría preguntar si se puede crear en una misma celda varios hipervínculos; por ejemplo, si en una celda tengo tres palabras ¿puedo pinchar en una y que se abra un archivo, y luego pinchar en otra palabra y que se abra otro archivo distinto, y así sucesivamente? También me gustaría saber ¿cuántos hipervínculos es capaz de soportar Excel? Tengo una lista de objetos astronómicos que iré ampliado a lo largo de años (estrellas, nebulosas, galaxias, cúmulos estelares, cráteres lunares, cometas...) y quisiera crearle hipervínculo a cada uno de ellos. Seguramente el Access será el programa más adecuado pero en la vida lo he visto y no se usar nada de él. Muchas gracias por su gran ayuda.

    ResponderBorrar
  83. Los hipervínculos están relacionadas ala celda, no al contenido. Es decir, no se puede crear un hipervínculo relaionado sólo a una palabra dentro de la celda.
    Excel permite crear hasta 66530 hiervínculos por hoja (sheet).
    No sé que tipo de modelo quieres crear, pero para manejar grandes cantidades de datos Access es más adecuado que Excel.

    ResponderBorrar
  84. hola, urgeme tu gentil ayuda, tengo mil datos capturados en exell la columna tiene links a pdf, lo copie a un disco externo para trabajar en otra pc que es win7 y aki no me abrio los links, ahor tampoco los labre en mi pc, hay alguna forma de que se recuperen los links? o tengo k eliminar los links y volverlos a hacr uno x uno hasta mil?, y como los envio x em o dropbox sin que se arruinien los links? ayuda por favor

    ResponderBorrar
  85. Buenas, como hago para que el excel me redirija a un archivo que no este en la pc. Es decir, si yo le envio el excel a una persona y ésta no tiene el archivo en su pc, lo pueda abrir sin tener que descargarlo previamente. Es posible ?
    Ya que utilizando la función de hipervinculo no funciona.

    ResponderBorrar
  86. El hipervínculo tiene que apuntar a un ubicación como Dropbox o similar desde donde tendrá que descargarlo. La persona no puede abrir un archivo que no está en su máquina. Si puede hacerlo usando la nube de Microsoft (OneDrive) y abriendo el archivo en el navegador.

    ResponderBorrar
  87. Excelente pagina y de muchísima ayuda. Muchas gracias de antemano.
    He conseguido crear los vínculos entre un registro concreto de una tabla a otro registro de otra tabla y localizar fila y columna.

    =HIPERVINCULO("#"&"Moldes!"&DIRECCION(COINCIDIR(G2;Moldes[Codigo Articulo];0)+1;COLUMNA(Moldes[Codigo Articulo]);;);BUSCARV(G2;Moldes[Codigo Articulo];1))

    Pero como puedo hacer para cuando abro este vinculo en el Internet Explorer me muestre los valores de un rango de celdas de esa misma fila B2:AJ2y sus encabezados de la tabla B1:AJ1 y asi poder imprimirlo y guardarlo en ese formato.

    =HIPERVINCULO(CONCATENAR("C:\bacup\Cartera Pedidos\Fotos Moldes\";EXTRAE(C2;1;4);".jpg");CONCATENAR("*00";B2))

    =HIPERVINCULO(CONCATENAR("C:\bacup\Cartera Pedidos\Fotos Articulos\";EXTRAE(C2;1;4);".jpg");EXTRAE(C2;1;4))

    Muchísimas gracias Jorge.


    ResponderBorrar
  88. Un hipervínculo puede apuntar a un documento y en el caso de un archivo Excel a una celda determinada. Pero el hipervínculo no "muestra" rangos y tampocopuede usarlo para imprimir un rago determinado del documento. Las tareas de impresión se hacen en el doucmento mismo (excepto que uses Vba para crear una rutina que haga la tarea).

    ResponderBorrar
  89. Hola. Excelentes aportaciones hacéis aquí. Yo tengo una consulta sobre un problema de Excel al que todavía no he sido capaz de dar solución. El tema es el siguiente:
    Trabajo con 3 libros diferentes (uno para cada departamento/oficina) que yo los llamo Base, y un cuarto libro Resumen. Los libros Base cambian cada mes (cada mes creo uno nuevo) y dentro de ellos diferentes hojas. En el libro Resumen tengo creado un hipervínculo variable creado con 3 celdas diferentes (Ubicación del libro, Nombre del libro, Nombre de la hoja). El hipervínculo funciona a la perfección si lo pulso de manera manual, pero he intentado crear una macro para que se ejecute automáticamente al abrir el libro Resumen, donde debe abrir los 3 libros Base que menciono pero dirigiéndose a los libros que consten en los 3 hipervínculos variables. Por ahora sólo me graba que debe seleccionar la celda que contiene el hipervínculo y luego me abre el libro que "mencionaba" el hipervínculo cuando grabé la macro y siempre me abre el mismo. ¿Cómo puedo hacer para que la macro use realmente el hipervínculo variable?
    Os lo agradecería muchísimo. No consigo hacer la macro "variable".

    Muchas gracias.

    ResponderBorrar
  90. Esa es al diferencia entre grabar una macro y programar Vba. Las macros grabadas están limitadas a repetir las acciones que grabamos; si queremos crear rutinas dinámicas deberemos programar códigos con Vba. Como comprenderás, no puedo responder a tu consulta en el marco de un comentario.
    Pero, ¿por qué separar los datos en tres libros? Podrías poner todos los datos en un único libro y simplificar enormemente las cosas.

    ResponderBorrar
  91. No puedo hacerlo puesto que cada libro lo gestiona un departamento diferente (3 jefes de departamento diferentes). Yo simplemente utilizo los datos que necesito de cada uno de ellos para hacer resúmenes diarios y previsiones semanales.Agradezco tu comentario. Seguiré buscando. Creía que sería algo más fácil de lo que pensaba. Pero te doy las gracias.

    ResponderBorrar
  92. Hola .podrías actualizar el link de descarga. no funciona. Gracias.

    ResponderBorrar
  93. Te consulto a ver si me podes ayudar. Tengo un listado de clientes cuyo nombre excede los 31 caracteres y no puedo modificarlos. He creado un hoja para cada cliente con los nombres abreviados ya que el Excel no me permite renombrar las hojas mas allá de 31 caracteres .Ahora tengo el problema de vincular el nombre completo del cliente de la lista con cada una de las hojas de con los nombres de los clientes abreviados. como puedo crear un hipervínculo mediante formula que vincule en nombre de la lista con cada una de las hojas con los nombres de los clientes abreviados ya que son 500 clientes

    ResponderBorrar
  94. En relación a la consulta de los 500 clientes te sugiero que te pongas en contacto conmigo por mail privado (ver los detalles en el enlace Ayuda, en la parte superior del blog).
    En general y sin conocer el objetivo de tu modelo, es mala práctica crear una hoja por cliente. Del punto de vista del manejo de datos es más eficiente manejar todos los datos de los clientes en una única tabla.

    ResponderBorrar
  95. hola buenos días,

    Llevo unos días trabajando en unos test que creé en excel y ahora que estamos casi terminandolo nos ha surgido un problemilla que no sabemos solucionar.
    Hemos hecho que al escribir "Corregir" en una celda te aparezca el resultado del test en otra celda, pero ahora nos gustaría que según la nota que aparezca en la celda se nos redirija a un archivo. Por ejemplo si nos aparece un 5 nos lleve a "x" archivo, si aparece un 6 nos lleve a "y" archivo, etc.

    Muchas gracias de antemano

    ResponderBorrar
  96. Tendrías que crear una lista de ods columnas, una con la nota (5,6, etc.) y otra con la dirección complta del archivo (por ejemplo, D:\archivo.txt). Digamos que esa lista está en el rango A1:B10. En la celda C1 pondrías la nota y en la celda D1 esta fórmula:

    =HIPERVINCULO(BUSCARV(C1,$A$1:$B$10,2,0),"texto de pantalla en la celda").

    Al hacel clic en la celda D1, se abrirá el archivo.

    Para abrir el archivo al ingresar la nota, sin necesidad de hacer clic al hipervínculo, hay que crear un evento.

    ResponderBorrar
  97. El tema está en que hay una celda en la que aparece automáticamente una nota, que varía según la cantidad de respuestas que has acertado en el propio test. Entonces la idea es que automáticamente según el número que aparezca en esa celda te lleve a un archivo u otro sin tener que hacer clic en ninguna otra celda.

    No se si me he explicado bien jeje

    ResponderBorrar
  98. Estimado, como puse al final de mi comentario, habría que crear un evento (macro) para esa tarea. Si no estás familiarizado con el tema de los eventos puedes leer las notas en el blog, empezando por esta.

    ResponderBorrar
  99. Hola, Tengo un problema con la función hipervínculo. En una tabla tengo documentos de personas con sus respectivos mails. En otra tabla a partir de la introducción del documento, utilizando la función BUSCARV() hago que me traiga el mail pero se pierde el hipervínculo generado en la primer tabla. Probe con la función HIPERVINCULO(BUSCARV()) pero tampoco funciono, alguno tiene una idea?

    ResponderBorrar
  100. Hola, Tengo un problema con la función hipervínculo. En una tabla tengo documentos de personas con sus respectivos mails. En otra tabla a partir de la introducción del documento, utilizando la función BUSCARV() hago que me traiga el mail pero se pierde el hipervínculo generado en la primer tabla. Probe con la función HIPERVINCULO(BUSCARV()) pero tampoco funciono, alguno tiene una idea?

    ResponderBorrar
  101. Estimado/a, tienes que usarl al función de esta manera:

    =HIPERVINCULO("mailto:"&BUSCARV(B9,$B$3:$C$5,2,0))

    donde "mailto:" indica que se trata de una dirección de correo electrónico y BUSCARV extrae la dirección (los rangos son al solo efecto del ejemplo).

    Si quieres que en pantalla aparezca sólo la dirección, sin el "mailto:" al principio, usarás esta fórmula

    =HIPERVINCULO("mailto:"&BUSCARV(B9,$B$3:$C$5,2,0),BUSCARV(B9,$B$3:$C$5,2,0))

    ResponderBorrar
  102. Buenos días Jorge
    Excelente pagina y de gran ayuda. Muchas gracias de antemano.
    Me surge una duda, tengo que insertar diferentes hipervínculos a archivos que están en onedrive, y cuando los inserto en celdas independientes, lo hace correctamente, pero cuando lo inserto en celdas que contienen más texto (una explicación breve de a que corresponde el hipervínculo), no se activa la función de hipervínculo, es decir, lo inserta como texto.
    La pregunta es: ¿se puede insertar un hipervínculo en una celda que contenga más texto y que funcione?
    Muchas gracias

    ResponderBorrar
  103. Susana, creo que te referís a poner un hipervínculo a una parte del texto de la celda. Si es aí, no se puede. El hipervínculo está definido para la celda.

    ResponderBorrar
  104. Si, efectivamente me refería a eso.
    Muchas gracias por la respuesta Jorge.

    ResponderBorrar
  105. Guillermo Velarde05 mayo, 2016 18:12

    Hoka Jorge, pues no me sale, como te mando mi archivo ya que sigue dicendo referencia no valida

    ResponderBorrar
  106. Guillermo, por vafor fijate en el enlace Ayuda, en la parte superior del blog.

    ResponderBorrar
  107. Hola Jorge, Gracias por toda tu ayuda.
    Mi pregunta es: Di estoy trabajado en una maquinas y vinculando celdas con hojas pdf de otras carpetas pero toda la nformación esta dentro de una carpeta. y luego quiero seguir tabajando en otra maquina. Como hago para que se mantenga los vinculos pq me da error.
    Saludos

    ResponderBorrar
  108. Hola Jorge, te agradezco por la ayuda que me haz dado, por favor sigue asi, estoy muy contento por los resultdos obtenidos gracias a tu informacion detalla.

    ResponderBorrar

Nota: sólo los miembros de este blog pueden publicar comentarios.