lunes, octubre 31, 2011

Convertir hipervínculos a texto

Hace un poco más de un año atrás publiqué una nota mostrando una técnica para seleccionar celdas que contienen un hipervínculo.

Uno de mis lectores me consulta ahora cómo convertir la dirección del hipervínculo a texto que aparezca como valor de la celda. En otras palabras, queremos que en las celdas de la columna B aparezca las direcciones de los hipervínculos de las celdas en la columna A



Excel no tiene una función nativa para esta tarea por lo que tendremos que usar una UDF, es decir, escribir nuestra propia función.

Esta función es muy sencilla

Function hyp_to_text(rngCell As Range) As String
  
    hyp_to_text = rngCell.Hyperlinks(1).Address

End Function



Para usarla podemos ponerla en una módulo común del cuaderno Personal y la aplicamos usando el asistente de funciones con la categoría "Definidas por el usuario"





y finalmente apretamos Aceptar


Si la celda no contiene un hipervínculo, el resultado es #¡VALOR!

2 comentarios:

  1. Excelente!!! Gracias por compartir siempre con nosotros artículos de gran valor agregado para quienes usamos y amamos Excel. Gracias.

    ResponderBorrar
  2. Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    Selection.Offset(0, 1) = Target.Address
    End Sub

    ResponderBorrar

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