MODIFICAR HIPERVÍNCULOS de forma MASIVA - Curso de Excel avanzado
Вставка
- Опубліковано 16 вер 2024
- Tutorial para modificar cientos de hipervinculos (que no están con la función hipervínculo).
La función para extraer el hipervínculo:
Conviértete en miembro de este canal para apoyarlo y disfrutar de ventajas:
/ @aprendizdeexcel
------------
Function ExtraerHipervinculo(Rango As Range)
Dim Hipervinculo As String
Hipervinculo = Rango.Hyperlinks(1).Address
ExtraerHipervinculo = Hipervinculo
End Function
--------------
La macro para pegar el hipervínculo:
-----------
Sub CrearHipervinculos()
'Crear hipervinculos. Dirección en la columna A, nombre en la columna B
Application.ScreenUpdating = False
N = Range("a1").End(xlDown).Row
For i = 1 To N
ActiveSheet.Hyperlinks.Add _
Cells(i, "C"), Cells(i, "A"), TextToDisplay:=CStr(Cells(i, "B"))
Next
Application.ScreenUpdating = True
End Sub
----------------
Tutorial para crear hipervinculos de forma masiva:
ua-cam.com/video/ukM0hi3-g3w/v-deo.html
Guau! este trucazo ha sido lo mejor de la semana! GRACIAS!
Gracias a ti por ver el vídeo y comentarlo 😉
Salu2
Excelente explicacion, nunca habia hecho nada por visual basic. Y funciono a la primera la extraccion de la ruta del hipervinculo y posterior modificacion
Me alegro 😊
Gracias por comentarlo 😉
Excelente, mil gracias!! funciono súper bien! gracias por compartir
Es justo lo que necesitaba!! Bravo!!
Me alegro que te funcionara
Gracias por comentarlo!
Muchas Gracias, aún no se nada de excel y queria sacar los hipervínculos de unos datos para poderlos enlazar con la funcion buscar, me ayudo mucho el primer codigo
Saludos crack
Me alegro!
Gracias por comentarlo!
ME FUNCIONÓ A LA PERFECCIÓN. MUCHAS GRACIAS AMIGO
Me alegro!
Gracias por comentarlo!
Un saludo 😉
Gracias maestro excelente informacion, Dios lo Bendiga
Gracias Jairo!
Salu2
Genial. tenía que cambiar 300 vínculos y en segundos lo he hecho.
👏👏👏
Felicidades!
Gracias por comentarlo 😉
Me has salvado la vida! Acabo de reclasificar 2000 hipervínculos en un plis gracias a tí!
Gracias por comentarlo y por suscribirte Francesc 😉
Me alegro que te haya funcionado.
Salu2
Excelente a mi también me funcionó.
Me alegro!
Gracias por comentarlo ☺
Muchas gracias por el tutorial! Una duda, hay forma de poder hacerlo con archivos alojados en la nube? necesitaría pasarlos del c: a un e: y no me los encuentra cuando lanzo la búsqueda para reemplazarlo por la nueva carpeta
Genial. Quirero la plantilla.
Buen video, interesante. Gracias por hacerlo y compartir. Solo me queda una duda, que beneficio tiene hacer el vínculo directo vs la función hipervinculo? Gracias por la orientación. Saludos!
Gracias Moises!
Hacerlo con fórmula es más sencillo, fácil de configurar, rápido, pero a la vez tiene sus inconvenientes.
Si enlazas nombre y dirección con celdas y alguien por error las modificas te quedas sin el hipervínculo
Tener una fórmula implica un cálculo. Cada vez que calcules algo en tu hoja (cada vez que ingreses un valor o le des a grabar si lo tienes en automático) te calcula todas ls fórmulas, incluidas las de los hipervínculos. Si tienes una hoja pesada o cientos de hipervínculos puede ser un handicap.
Por último, si es una hoja para mostrar quizás sea más elegante que estos aparezcan sin fórmulas
Salu2
@@AprendizdeExcel Gracias por el tiempo y la cortesía de la respuesta. Ofrecen consultoría/tutoría personalizada en línea para ayudar a resolver casos específicos? De ser así, me envías tu correo para escribirte.
@@AprendizdeExcel Estaba practicando tu video y me di cuenta de un beneficio bueno con el vínculo directo. Y es que se puede cambiar lo que se lee al pasar por encima del vínculo. Con la fórmula se ve toda la ruta y nombre del archivo (al menos yo no si se puede cambiar). De forma directa en la sección de "Info de pantalla" está la opción de poner el texto que uno guste. Nuevamente, gracias.
pudieras actualizar tú? o puedes compartirnos como se puede adecuar tu macro para que la info de pantalla (screentip) sea igual a la información de la columna B. Sería adecuar esta macro ActiveSheet.Hyperlinks(1).ScreenTip = " " para que funcione en todas la celdas de la columna C. Muchas gracias!
saludos si la dirección del hipervínculo excede los 255 caracteres la funcion hiperviculo no funcionara
Hola, buenisima la explicacion,, gracias,, tengo una duda, sabes que tengo un excel con hipervinculos en muchas celdad pero de distintas direcciones de carpetas, quiero moverlo a otra carpeta sin romper los vinculos de manera facil, es imposible no? el motivo de moverlo es para que onedrive me lo backupee cada vez que actualice los datos
Gracias
Si lo entiendo bien es que tienes varias celdas con hipervínculos que no están de forma consecutiva como el ejemplo y necesitas cambiar todos esos hipervínculos de forma rápida, ¿es así?
Si es así yo haría un código que saque la dirección de esas celdas y los hipervínculos para posteriormente reemplazarlas de forma masiva por los nuevos hipervínculos.
La semana que viene intento grabarte un vídeo
Gracias por responde, si asi es, bueno ojala se pueda. La otra solución que voy a intentar es ver si onedrive me deja seleccionar la carpeta que quiero que se guarde
Muchas gracias
Hola, yo no se nada de nada de visual basic, con lo justo se algo basico de excel. Por eso me parecio genial tu tutorial. Me salio todo, menos el ultimo macro donde me aparece " error 13 en tiempo de ejecución, no coinciden los tipos"
Las diferentes versiones de Excel hacen ligeras modificaciones también en el código de VBA que hacen que no sea posible utilizar ciertas cosas en versiones anteriores.
El código que te he pasado funciona con Office 365, Office 19 y creo que también Office 16 y 2013 (este último no lo se).
No tengo el Office 2010 instalado y no tengo forma de probar otro código que pudiera funcionarte.
Te invito a que actualices tu versión.
Sorry y felices fiestas
Gracias! Una duda, me sale una direccion diferente a la que realmente está el archivo, ¿sabes la causa? Hay alguna manera, para que la ubicación del archivo sea indiferente, es decir una dirección relativa.
Está cogiendo mal la URL.
¿Has probado a ejecutarlo paso a paso con F8 para comprobar dónde podría estar el error?
Es posible que la URL la esté cogiendo de la columna que no debe
cual es la diferencia entre que sea con la funcion Hipervinculo o q aparesca como si lo hiciste de manera manual ???
Hola! Cuando le doy a la macro crear hipervinculos, solo me genera el hipervinculo de la primera fila. Tengo 8700 filas. Alguna idea de que puedo estar haciendo mal?
¿Qué pone tu For?
¿Está recorriendo bien hasta el final?
Ejecutala paso a paso con el menú depuración
ua-cam.com/video/Kg07P1jP_ro/v-deo.html
Y comprueba que variable está fallando
Pregunta Rapida: Si hay alguna celda que esta vacía, como lo hacemos para evitar que se pare el Macro? Gracias!
Si quieres que vaya hasta la última línea de datos pon esto:
For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
Eso ejecutará todos los pasos, si quieres que las filas en blanco no las ejecute pon un control en medio, por ejemplo un IF. Quedaría así:
For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
If Range("A" & i).Value "" Then
(tu código macro)
Else
End If
Next
Hola yo tengo un caso similar lo único que cuando cambia de ubicación o de ordenador se pierde el hipervínculo como se puede hacer un hipervínculo dinámico?
Necesitas tener un dato de dónde tienes los nuevos archivos.
Los archivos los cambias de ordenador, pero también de ubicación. Este cambio suele ser debido a pasar de un fijo a un portatil. Si algo sencillo como eso yo prepararía un desplegable que active una u otra URL. El nombre del archivo y la extensión se comparte, solo tendrías que decirle que la mitad de la URL sea de una columna o de otra.
Si lo quieres más abierto a cualquier tipo de ubicación en cualquier momento se la debes dar tú la dirección o que sea la misma que el
archivo Excel. El archivo Excel puede leer donde está. La instrucción es esta:
ActiveWorkbook.Path
Para montar la ruta completa necesitas sacar el nombre y la extensión con fórmulas. Te dejo este vídeo:
ua-cam.com/video/__aMWUXeUDM/v-deo.html
y luego montas la URL así. Si quieres macro le pones un for delante
valorCelda = Worksheets("hoja1").Range("b2").Value
RutaArchivo = ActiveWorkbook.Path & "\" & valorCelda & ".pdf"
Espero que te sirva
Gracias por suscribirte 😉
Hola. ¿tienes algún video en el que expliques cómo crear hipervínculos masivos mediante una macro? NO sé cómo se crea una macro, me parece muy complicado y debo realizar 1800 hipervínculos desde Excel a 1800 documentos pdf. Si pudiera ayudarme te lo agradecería enormemente.
Esta tarde intento grabarte y subirte un vídeo
Aquí tienes el vídeo, espero que te sirva
ua-cam.com/video/ukM0hi3-g3w/v-deo.html
lo realize como esta en el video pero al usar ExtraerHipervinculo no me da la direccion del archivo . ayuda porfavor
¿Y por qué no te funciona?
¿El hipervínculo está dentro de la celda?
Saludos amigo muy buen video, muchas gracias, la macro me funciono bien pero necesite hacerlo más de tres veces en un mismo archivo, y después del tercero me dice "Se ha producido el error '1004' en tiempo de ejecución: Error definido por la aplicaci6n o el objeto ", es decir ejecuto las tres primeras macros para crear hipervínculos en tres columnas diferentes y me funcionan bien, pero de la cuarta en adelante cuando la voy a ejecutar me da el error antes indicado y no corre la macro, ayúdame por favor para ver como soluciono este error
Hola Rene, es probable que el problema no sea por el número de veces que lo lanzas, si no por otro argumento que hace que falle. ¿Es posible que cambies de hoja cada vez que lo lanzas? Si es así, comprueba esta parte del argumento:
N = Range("a1").End(xlDown).Row
For i = 1 To N
¿Puedes tener más datos adicionales en la columna A que pueden hacer que la macro continúe por encima de lo que debe? ¿Has probado a poner ese For fijo, es decir For i = 1 to 10?
Hola …y si están desordenados …y si varios se repiten …???
lo he realizado con excel 2016 y 2019 y me da el mismo error
No entendí nada, pero nada de nada.-
Vaya!
Lo siento 😐