Un usuario preguntaba por la forma de modificar el texto mostrado en unas celdas con un listado de vínculos a una URLs.
El objetivo es que el hipervícunlo siga dirigiéndonos a la misma URL, pero el texto mostrado quede reducido al nombre de la página concreta...
Insertamos un módulo estándar, y en esta ventana de código añadiremos nuestra macro:
Relevante es la condición que nos permite detectar si la celda tiene un hipervínculo:
If celda.Hyperlinks.Count > 0 Then
y por otra parte la descomposición de la URL aprovechándonos de las barras /
Split(texto, "/")(3)
el tres nos permite recuperar la parte final de la URL...
El resto es simple al recomponer el hipervínculo con los valores tratados.
El objetivo es que el hipervícunlo siga dirigiéndonos a la misma URL, pero el texto mostrado quede reducido al nombre de la página concreta...
Insertamos un módulo estándar, y en esta ventana de código añadiremos nuestra macro:
Sub LimpiarHipervinculos() 'recorremos cada celda del rango seleccionado For Each celda In Selection 'determinamos que la celda Sí contiene un vínculo If celda.Hyperlinks.Count > 0 Then 'asignamos el texto del vínculo texto = celda.Hyperlinks(1).Name 'y lo tratamos para quedarnos con un texto final a mostrar 'con la función Split separamos las partes de la url 'y nos quedamos con la tercera con www.xxxxx.xxx nuevo = Replace(Split(texto, "/")(3), ".htm", "") 'finalmente construimos el vínculo en la celda 'con el mismo vínculo pero con un texto mostrado nuevo ActiveSheet.Hyperlinks.Add Anchor:=celda, _ Address:=texto, _ TextToDisplay:=nuevo End If Next celda End Sub
Relevante es la condición que nos permite detectar si la celda tiene un hipervínculo:
If celda.Hyperlinks.Count > 0 Then
y por otra parte la descomposición de la URL aprovechándonos de las barras /
Split(texto, "/")(3)
el tres nos permite recuperar la parte final de la URL...
El resto es simple al recomponer el hipervínculo con los valores tratados.
No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.