Excel: convierta una columna con hipervínculos para mostrar solo los enlaces

Excel: convierta una columna con hipervínculos para mostrar solo los enlaces

En Excel, tengo una columna de enlaces que muestran texto en lugar del enlace real.

De hecho, necesito los enlaces. ¿Hay alguna forma de convertir de forma masiva toda la columna para que los enlaces queden expuestos? De lo contrario, tendré que hacer clic en cada enlace, abrirlo en un navegador y copiar y pegar la dirección...

Además, estoy en Excel 2008 para Mac, por lo que parece que no puedo hacer macros...

Respuesta1

Respuesta corta:no puedes automatizar esto sin VBA.

Manual

Esto es en una computadora con Windows 7; simplemente reemplace los accesos directos con sus correspondientes homólogos de Mac.

  1. Resalte una celda con un hipervínculo.
  2. Pulsa CTRL+ K. Esto abre el cuadro de diálogo de hipervínculo (ver imagen a continuación). Una vez que se abra, encontrará que su cursor ya está en el campo Dirección.
  3. Presione CTRL+ Apara resaltar la URL completa.
  4. Presione CTRL+ Cpara copiarlo.
  5. Presione ESCo Enterpara cerrar el cuadro de diálogo Hipervínculo.
  6. Pegue la URL en algún lugar a través de CTRL+ V.

ingrese la descripción de la imagen aquí

Vba

Aquí hay una solución VBA para aquellos que puedan usarla.

Cree un módulo VBA con el siguiente código:

Public Function GetURL(c As Range) As String
    On Error Resume Next
    GetURL = c.Hyperlinks(1).Address
End Function

Para usarlo, ingrese lo siguiente en cualquier celda:

=GetURL(A1)

donde A1 contiene un hipervínculo.

La función en el trabajo:

ingrese la descripción de la imagen aquí

Respuesta2

Esto puede parecer un método de fuerza bruta, pero es la mejor manera que se me ocurrió. (Descubrí esta página cuando yo mismo tenía la misma pregunta hace una hora... podrías pasar todo el día buscando, pero a veces es más fácil hacerlo y terminar de una vez).

1) Copie y pegue solo las celdas que contienen los hipervínculos en una nueva hoja de cálculo.

2) Exporte la hoja de cálculo, haga clic en "Cambiar tipo de archivo", seleccione "Guardar como otro tipo de archivo" y guárdela como una página web (también conocida como archivo HTML).

3) Abra la página web en su navegador y vea la fuente.

4) Copie y pegue la fuente en un editor de texto.

5) Usando la función Buscar/Reemplazar del editor de texto, elimine el texto inicial y final de cada hipervínculo. (En otras palabras, reemplace dicho texto por nada: "") Tenga en cuenta que este texto debe ser idéntico para cada hipervínculo.

6) Ahora debería tener un archivo de texto con nada más que hipervínculos. Copie y pegue según sea necesario nuevamente en su hoja de cálculo original o úselo como y donde desee.

Editado para indicar que realmente puede exportar a un archivo separado que es HTM. Cierra el archivo y vuelve a abrirlo en Excel y resolverá el problema. La fórmula = Hipervínculo desapareció y los enlaces se convierten en enlaces normales. Este método me ahorró horas y fue muy simple y no tuve que lidiar con scripts, fórmulas, VBA o macros.

Respuesta3

Utilizo una Mac y esto funcionó para mí: resalte la columna que necesita convertir, en el menú Insertar, abra "Hipervínculo". Elimine cualquier texto que aparezca en el cuadro Mostrar. Dirá "[múltiples celdas seleccionadas]" si el texto que se muestra es diferente entre las celdas. Una vez que haga clic en Aceptar, solo aparecerán los enlaces en su hoja de trabajo. Si necesita convertir celdas individuales en lugar de una columna completa, resalte todas las celdas que necesita convertir, haga clic derecho, seleccione "editar hipervínculo" y siga los mismos pasos para eliminar el texto en el cuadro de visualización.

Respuesta4

En los años transcurridos desde que se hizo esta pregunta a Excel, alguien de mi empresa agregó esta =GetURL(cell)función a nuestro archivo XLAM global y pensé que era parte de Excel base. Aquí está el VBA...

Public Function GetURL(cell As Range, Optional default_value As Variant) As Variant
      Dim output As Variant
      If (cell.Range("A1").Hyperlinks.Count <> 1) Then
          output = default_value
      Else
          output = cell.Range("A1").Hyperlinks(1).Address
      End If
      GetURL = output
End Function

información relacionada