2012-04-16 15 views
6

¿Es posible crear un hipervínculo dentro de una celda de Excel que solo usa una sección del texto de la celda para el enlace en el que se puede hacer clic? ES DECIR. ¿representaría la maqueta de la tabla a continuación algo que se puede construir fácilmente en Excel 2010?¿Crear un hipervínculo dentro de una celda de Excel?

a mock up http://dl.dropbox.com/u/14119404/misc/Microsoft%20Excel%20-%20Book1_2012-04-16_14-24-47.jpg

sé que toda una célula se puede convertir en un hipervínculo con facilidad, pero no una parte específica de la célula por lo que yo sé.

Por hipervínculo I también se refieren a cualquiera de los dos

  • (a) de otra célula o,
  • (b) una URL web.

Gracias

+0

Lamentamos informar - pero el enlace a dropbox devuelve 404 –

Respuesta

3

Esto no es posible en Excel. Los hipervínculos están asociados con celdas completas.

Si mira el documentation for the Excel hyperlink object, puede ver que está asociado a un Rango. Si fuera posible asociar hipervínculos con un lapso dentro de la celda, el objeto Hyperlink necesitaría tener un objeto Range asociado y Characters.

+0

Gracias por la respuesta. ¡Tendrá que ingresar una solicitud de función! – llawliet

14

Después de crear el hipervínculo, puede formatear el texto en la celda para que solo las palabras de interés estén subrayadas/azules. El hipervínculo seguirá funcionando, pero obviamente aún puede tener un solo enlace por celda y hacer clic en cualquier parte del texto activará el hipervínculo.

Por ejemplo:

enter image description here

Sub Tester() 

    Dim rng As Range 

    Set rng = ActiveSheet.Range("A1") 

    rng.Parent.Hyperlinks.Add Anchor:=rng, Address:="", SubAddress:= _ 
     "Sheet1!A10", TextToDisplay:="this is long text" 

    With rng.Font 
     .ColorIndex = xlAutomatic 
     .Underline = xlUnderlineStyleNone 
    End With 

    With rng.Characters(Start:=9, Length:=4).Font 
     .Underline = xlUnderlineStyleSingle 
     .Color = -4165632 
    End With 

End Sub 
+0

+1 buena solución. – brettdj

+0

Apreciar el trabajo visual en busca de enlaces individuales por celda, aunque eso es bastante difícil. :-) – llawliet

3

que necesitaba para enlazar a un nombre de archivo que se muestra en una celda, así que aquí es lo que funcionó para mí:

ActiveSheet.Hyperlinks.Add Anchor:=Cells(row, column), Address:=file.Path, TextToDisplay:=file.Path 
0

Lo anterior un trazador de líneas fue muy útil ... ya que soy nuevo, no pude comentar. Así que aquí está mi variación de lo anterior que toma cada fila en una hoja de trabajo y construye una URL a partir de un valor en la fila.

CHGRow = 3 
Worksheets("Page 1").Select 
Cells(CHGRow, 1).Select 

Do Until Application.CountA(ActiveCell.EntireRow) = 0 

    URLVal = "https://our_url_here?some_parameter=" & Cells(CHGRow, cNumber) 
    URLText = Cells(CHGRow, cNumber) 
    ActiveSheet.Hyperlinks.Add Anchor:=Cells(CHGRow, cURL), Address:=URLVal, TextToDisplay:=URLText 

    CHGRow = CHGRow + 1 
    Cells(CHGRow, 1).Select 

Loop 
Cuestiones relacionadas