Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Logo Excel Avanzado

Crear hipervínculos con VBA

| Sin comentarios

En estos ejemplos veremos como crear hipervínculos con VBA, tengamos en cuenta que los hipervínculos pueden crear para hacer referencia una ubicación dentro del mismo archivo (u otro oarchivo)  o también  una dirección de internet. 

En este ejemplo podemos observar como en la propiedad Address se coloca el URL completo,  y en la propiedad TextToDisplay se coloca el nombre que debe aparecer en la celda. 

Sub Macro1()

     Range("H4").Select

    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _

        "https://www.excel-avanzado.com", TextToDisplay:="Excel Avanzado"

 End Sub

 

Cuando se necesita que aparezca un ScreenTip ( un recuadro pequeño) se puede añadir esa propiedad tal como se muestra en el siguiente código:

Sub hyper()

With Worksheets(1)

 .Hyperlinks.Add Anchor:=.Range("c7″),  Address:="https://www.excel-avanzado.com", _

 ScreenTip:="Excel Avanzado",   TextToDisplay:="Sitio de Excel Avanzado"

End With

End Sub

Crear Hipervínculo en Excel

En el siguiente ejemplo primero definimos las variables a utilizar,  luego definimos el numero de fila de inicio en este caso iniciara a generar los hipervinculos desde la fila 4 

La macro se aplicará en la hoja activa, como los botones que invocan al macro se encuentran en la hoja1, las macro se ejecutará en la hoja1 (por ser la hoja activa) 

Por medio del código  For Each hoja In Worksheets se realiza una iteración que permite trabajar con cada hoja disponible en el archivo. 

 

Sub generarhipervinculo()

Dim hojaactiva As String

Dim filainicio As Long

filainicio = 4

hojaactiva = ActiveSheet.Name

For Each hoja In Worksheets

' con este hacemos que no utilice la hoja activa, ya que alli se colocaran los hipervinculos, en este caso no considerara la hoja 1

If hojaactiva <> hoja.Name Then

'activamos la celda donde se colocarán los hipervínculos y adicionalmente nos posicionamos en la filainicio (que inicialmente vale 4) y la columa 2

ActiveSheet.Cells(filainicio, 2).Select

'el siguiente código crea el hipervínculo

ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:=hoja.Name & "!A1", TextToDisplay:=hoja.Name

filainicio = filainicio + 1

End If

Next hoja

End Sub

 

Eliminar hipervínculos con VBA

Para efectos del ejercicio anterior, en el que se necesita eliminar los hipervínculos previamente creados podemos usar:

Sub Eliminar_Hipervinculo()

    Columns("B:B").Select

    Selection.Hyperlinks.Delete

End Sub

De esta forma eliminaremos todos los hipervínculos existentes en la columna B de la hoja activa. 

También podemos examinar: Eliminar hipervículos para que independientemente al rango en que se encuentren se pueda proceder a eliminar todos los hipervínculos.

Descargar archivo con ejemplos mostrados: Crear hipervínculos con VBA

 

Deja un comentario

Los campos requeridos estan marcados con *.