2010-04-07 18 views

Respuesta

237

Si no desea crear una macro y siempre que no le importe una columna adicional, simplemente cree una nueva columna junto a su columna de URL.

En la nueva columna escriba en la fórmula =HYPERLINK(A1) (reemplazando A1 con la celda que le interese). Luego copie la fórmula por el resto de las 200 entradas.

NOTA: Esta solución no funciona si la celda A1 contiene una cadena de más de 255 caracteres. Resulta en un error #VALUE!

+2

Si mi columna A contiene 200 valores de vínculo, es posible escribir una fórmula que hiperenlace los 200 valores y volver a escribir en la columna A, en lugar de crear una nueva columna? – developer

+2

¡Gracias! Eso funcionó bien en 30,000 células. –

+13

Esto no funciona si la URL tiene más de 255 caracteres. – Nathan

14

OK, aquí hay una solución hokey, pero simplemente no puedo encontrar la manera de que Excel evalúe una columna de URL como hipervínculos en bloque.

  1. Crear una fórmula, ="=hyperlink(""" & A1 & """)"
  2. Arrastre hacia abajo
  3. copia nueva columna de fórmula
  4. pegar valores especiales sólo sobre la columna original
  5. columna Resaltar, haga clic Ctrl - H (para reemplazar), encontrar y reemplazar = con = (de alguna manera fuerza la reevaluación de las celdas).
  6. Ahora se debe poder hacer clic en las celdas como hipervínculos. Si desea el estilo azul/subrayado, simplemente resalte todas las celdas y elija el estilo de hipervínculo.

El estilo de hipervínculo por sí solo no se convertirá en enlaces clicables, y el cuadro de diálogo "Insertar hipervínculo" no puede usar el texto como la dirección de un montón de celdas al por mayor. Aparte de eso, F2 y Ingrese en todas las celdas lo haría, pero eso es tedioso para muchas celdas.

+3

Simplemente hacer = (HIPERVÍNCULO (INDIRECTO (DIRECCIÓN (ROW(), COLUMN() + 1)), "Vestir" y ROW())) es más fácil –

+0

¡Esta debería ser la respuesta aceptada! – Ma3x

20

Aquí hay una manera que encontré. Estoy en una Mac usando Excel 2011. Si la columna B tenía los valores de texto que desea que sean hipervínculos, coloque esta fórmula en la celda C1 (o D1 o lo que sea, siempre que sea una columna libre): =HYPERLINK(B1,B1) Esto insertará un hipervínculo con la ubicación como el texto del enlace y el "nombre descriptivo" como el texto del enlace. Si tiene otra columna que tiene un nombre descriptivo para cada enlace, puede usarla también. Luego, podría ocultar la columna de texto si no desea verla.

Si usted tiene una lista de ID de algo, y las direcciones URL estabas http://website.com/folder/ID, tales como:

A1 | B1 
101 | http://website.com/folder/101 
102 | http://website.com/folder/102 
103 | http://website.com/folder/103 
104 | http://website.com/folder/104 

usted podría utilizar algo como =HYPERLINK("http://website.com/folder/"&A1,A1) y usted no necesitaría la lista de URL. Esa era mi situación y funcionó bien.

De acuerdo con esta publicación: http://excelhints.com/2007/06/12/hyperlink-formula-in-excel/ este método también funcionará en Excel 2007.

+0

Funciona en Windows, Excel 2013 y es una excelente alternativa a una columna adicional. – mdisibio

+0

FYI, para Open Office, lo anterior dio un error, pero parece que = HYPERLINK (C1) funciona si se le da solo un parámetro – tonypdmtr

-5

Hay una forma muy simple de hacerlo. Cree un hipervínculo y luego use el Copiar formato para copiar el formato. Creará un hipervínculo para cada artículo.

+1

No lo hago funcionar. ¿Puedes elaborar? –

+8

Esto no funciona, simplemente copia el formato para que parezcan hipervínculos. – reergymerej

67

crear la macro como en este caso:

En el menú Herramientas en Microsoft Excel, elija macro y, a continuación, haga clic en Editor de Visual Basic. En el menú Insertar, haga clic en Módulo. Copie y pegue este código en la ventana de código del módulo. Se nombrará automáticamente a sí mismo HyperAdd.

Sub HyperAdd() 

    'Converts each text hyperlink selected into a working hyperlink 

    For Each xCell In Selection 
     ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=xCell.Formula 
    Next xCell 

End Sub 

Cuando haya terminado de pegar la macro, haga clic en Cerrar y volver a Microsoft Excel en el menú Archivo.

A continuación, seleccione las celdas necesarias y haga clic en macro y haga clic en ejecutar.

NOTA ¡NO seleccione la columna completa! Seleccione SOLAMENTE las celdas que desea cambiar a enlaces clicables, de lo contrario terminará en un ciclo interminable y tendrá que reiniciar Excel. ¡Hecho!

+0

Funcionó fantásticamente. Muchas gracias. – Bharathi

+0

Agregue Dim xCell As Range si está utilizando la opción explícita. +1 para una solución que cambia la celda (según lo solicitado) y proporciona el código que lo hace. – Praesagus

+0

Esto funcionó bien para mí, concedió que tenía aproximadamente 50,000 enlaces en una hoja de cálculo que necesitaba actualizarse y que tenía que hacerlo en fragmentos o que se colgaría. – ssaviers

6

Este método funciona para mí usando la función de hipervínculo:

=HYPERLINK("http://"&B10,B10) 

Dónde B10 es la celda que contiene la versión de texto de la dirección URL (en este ejemplo).

+0

= HYPERLINK ("http: //" & B10, B10) no trabajo en mi Excel 2013, sin embargo, = HYPERLINK ("http: //" & B10) funcionó. – agibsen

4

Con Excel 2007 en Windows, encontré estos pasos más simples;

  1. Seleccione células con las URL no activos
  2. Copia
  3. Pegar como hipervínculo
+1

En una versión posterior (estoy usando Office 2011), esto no funciona: acabo de obtener un hipervínculo a un archivo de escritorio (este), no a la url que se muestra en la celda. p.ej. file: // localhost/Users/xxxx/Desktop/Blahblahblah File Name.xlsx - Sheet1! A2 – Dannid

1

Puede insertar la fórmula =HYPERLINK(<your_cell>,<your_cell>) a la célula adyacente y se arrastra a lo largo de todo el camino hasta la parte inferior . Esto le dará una columna con todos los enlaces. Ahora puede seleccionar su columna original haciendo clic en el encabezado, haciendo clic con el botón derecho y seleccionando Hide.

-3

La manera más simple en Excel 2010: Seleccione la columna con el texto URL, luego seleccione Estilo de hipervínculo desde la pestaña Inicio. Todas las URL en la columna ahora son hipervínculos.

Al hacer doble clic en cada celda al final del texto de la URL y agregar un espacio en blanco o simplemente ingresar también se generará un hipervínculo. Similar a la forma en que debe crear enlaces URL en correos electrónicos de MS Outlook.

+4

No son hipervínculos, se parecen a los hipervínculos. Eso es solo estilo. – Erica

15

manera bastante fácil para las listas más cortas:

  1. doble clic en la caja donde la url es
  2. Introduzca

Usted tiene su enlace;)

+9

Uso F2 para editar una celda, luego ingrese, varias veces para ejecutar rápidamente mi lista. Sencillo. ¡Gracias! –

+1

Esto más el comentario sobre F2 me acaba de llegar a una columna de 160 hipervínculos en aproximadamente un minuto. Así que sí, este es el camino a seguir si la columna es lo suficientemente corta. –

+0

excelente solución! –

0

Si copia el contenido del texto en una nueva columna y uso:

=HYPERLINK("http://"&B10,B10) 

en su columna original. A continuación, utilice el $ para la columna por lo que se ve así:

=HYPERLINK("http://"&$B10,$B10) 

Esa es la única forma en que trabajó para mí en Excel 2010 en Windows 7. Puede copiar la fórmula hacia abajo.

-1

La manera más fácil aquí

  • Resalte toda la columna
  • clic '' inserción ''
  • clic '' hipervínculo ''
  • clic '' lugar en este documento ''
  • haga clic en Aceptar
  • eso es todo
+0

Eso no funciona, a menos que el enlace sea a algo DENTRO del documento. – Erica

+0

Estoy de acuerdo en que la pregunta estuvo mal redactada, pero el objetivo previsto es claramente el del texto en sí. –

2

Prueba esto:

= HYPERLINK ("mailto:" & A1, A1)

Reemplazar A1 con el texto de la celda de dirección de correo electrónico.

1

Descubrí que ninguno de los métodos aquí funcionaba si el hipervínculo no incluía http: // ya que se vinculaban a ubicaciones locales.

También quería engañar a la secuencia de comandos ya que los usuarios no podrían mantenerlo ellos mismos y yo no estaría disponible.

Solo se ejecutará en las celdas de un rango seleccionado si contienen un punto y no hay espacios. Solo funcionará hasta 10,000 celdas.

Sub HyperAdd() 
Dim CellsWithSpaces As String 
    'Converts each text hyperlink selected into a working hyperlink 
    Application.ScreenUpdating = False 
    Dim NotPresent As Integer 
    NotPresent = 0 

    For Each xCell In Selection 
     xCell.Formula = Trim(xCell.Formula) 
     If xCell.Formula = "" Or InStr(xCell.Formula, ".") = NotPresent Then 
     'Do nothing if the cell is blank or contains no dots 
     Else 
      If InStr(xCell.Formula, " ") <> 0 Then 
       CellsWithSpaces = CellsWithSpaces & ", " & Replace(xCell.Address, "$", "") 
       GoTo Nextxcell 
      End If 

      If InStr(xCell.Formula, "http") <> 0 Then 
       Hyperstring = Trim(xCell.Formula) 
      Else 
       Hyperstring = "http://" & Trim(xCell.Formula) 
      End If 

      ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=Hyperstring 

     End If 
     i = i + 1 
     If i = 10000 Then Exit Sub 
Nextxcell: 
     Next xCell 
    If Not CellsWithSpaces = "" Then 
     MsgBox ("Please remove spaces from the following cells:" & CellsWithSpaces) 
    End If 
Application.ScreenUpdating = True 
End Sub 
0

poner la URL en una tabla HTML, cargar la página HTML en un navegador, copiar el contenido de esa página, pegar en Excel. En este punto, las URL se conservan como enlaces activos.

solución fue propuesta el http://answers.microsoft.com/en-us/mac/forum/macoffice2008-macexcel/how-to-copy-and-paste-to-mac-excel-2008-a-list-of/c5fa2890-acf5-461d-adb5-32480855e11e por (Jim Gordon Mac MVP) [http://answers.microsoft.com/en-us/profile/75a2b744-a259-49bb-8eb1-7db61dae9e78]

encontré que funcionó.

que tenían estas URL:

https://twitter.com/keeseter/status/578350771235872768/photo/1 https://instagram.com/p/ys5ASPCDEV/ https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg https://twitter.com/ranadotson/status/539485028712189952/photo/1 https://instagram.com/p/0OgdvyxMhW/ https://instagram.com/p/1nynTiiLSb/

los puse en un archivo HTML (links.html) como este:

<table> 
<tr><td><a href="https://twitter.com/keeseter/status/578350771235872768/photo/1">https://twitter.com/keeseter/status/578350771235872768/photo/1</a></td></tr> 
<tr><td><a href="https://instagram.com/p/ys5ASPCDEV/">https://instagram.com/p/ys5ASPCDEV/</a></td></tr> 
<tr><td><a href="https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg">https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg</a></td></tr> 
<tr><td><a href="https://twitter.com/ranadotson/status/539485028712189952/photo/1">https://twitter.com/ranadotson/status/539485028712189952/photo/1</a></td></tr> 
<tr><td><a href="https://instagram.com/p/0OgdvyxMhW/">https://instagram.com/p/0OgdvyxMhW/</a></td></tr> 
</table> 

Luego cargué los links.html en mi navegador, copié, pegué en Excel y los enlaces estuvieron activos.

2

Para mí solo copié toda la columna que tiene las URL en formato de texto en otra aplicación (digamos Evernote), y cuando se pegaron allí se convirtieron en enlaces, y luego simplemente los copié en Excel.

Lo único que debe hacer es asegurarse de que los datos que copia se alinean con el resto de las columnas.

1

Gracias Cassiopeia por el código. Cambié su código para trabajar con direcciones locales e hice pequeños cambios a sus condiciones. Quité siguientes condiciones:

  1. Cambio http:/-file:///
  2. eliminado todo tipo de condiciones de espacio en blanco
  3. cambiado 10k rango de celdas condición a 100k

Sub HyperAddForLocalLinks() 
Dim CellsWithSpaces As String 
    'Converts each text hyperlink selected into a working hyperlink 
    Application.ScreenUpdating = False 
    Dim NotPresent As Integer 
    NotPresent = 0 

    For Each xCell In Selection 
     xCell.Formula = Trim(xCell.Formula) 
      If InStr(xCell.Formula, "file:///") <> 0 Then 
       Hyperstring = Trim(xCell.Formula) 
      Else 
       Hyperstring = "file:///" & Trim(xCell.Formula) 
      End If 

      ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=Hyperstring 

     i = i + 1 
     If i = 100000 Then Exit Sub 
Nextxcell: 
     Next xCell 
    Application.ScreenUpdating = True 
End Sub 
+0

Trabajando perfectamente, hice ~ 7000 hipervínculos en solo unos segundos. :) Gracias Cassiopeia. – Junaid

1

Si adding an extra column with the hyperlinks es no es una opción, si tiene Notepad ++ instalado, puede:

  • Copiar la columna de direcciones de Notepad ++
  • Mantener ALT - SHIFT presionado, extendió el cursor desde la esquina superior izquierda a la esquina inferior derecha, y el tipo =hyperlink(". Esto agrega =hyperlink(" al comienzo de cada entrada.
  • Abrir menú "Sustituir" (Ctrl - H), activar expresiones regulares (ALT - G), y reemplazar $ (fin de línea) con "\). Esto agrega una comilla cerrada y un paréntesis cerrado (que debe escaparse con \ cuando se activan las expresiones regulares) al final de cada línea.
  • Pegue los datos en Excel. En la práctica, simplemente copie los datos y seleccione la primera celda de la columna donde desea que terminen los datos.
3

Para cualquiera de aterrizar aquí con Excel 2016, sólo tiene que poner de relieve la columna, a continuación, haga clic en la pestaña situada en la HyperlinkHome cinta en el cuadro Styles.

enter image description here

+1

Eso solo le da a la celda estilos, no hace que se pueda hacer clic en la URL. – stenlytw

Cuestiones relacionadas