¿Crear hipervínculo para imagen en excel?

En un formato de cotización tengo una base de datos para los productos, pero requiero que dentro de ella se coloque la fotografía de dicho producto; he visto que excel no inserta imagen dentro de una celda (con lo cual podría llamarla) ¿Existe la forma de crear un hipervínculo para que la llame?

Respuesta

Estos ejemplos que he creado te pueden servir

http://www.programarexcel.com/2014/01/macro-abre-explorador-archivos-inserta.html

http://www.programarexcel.com/2013/03/macro-inserta-imagenes-en-excel.html

http://www.programarexcel.com/2013/03/copia-hyperlink.html

Hola: Disculpa mi ignorancia, pero desconozco el como hacer o insertar una macro, no sabría como hacerlo ¿podrías explicarme cuales son los pasos?

Gracias nuevamente.

Sube tu archivo desde http://programarexcel.com/p/contacto.html lo reviso y envío por favor pon en el archivo todos los detalles de la macro que necesitas, de donde salen los datos, donde se pegan que tiene que hacer la macro, etc y haz referencia a esta pregunta.

Mientras visita

http://programarexcel.com

Ya lo subí, muchas gracias.

El código siguiente debes insertarlo en worksheet, igualmente te envié la macro por maril.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'On Error Resume Next
Dim r, busco As String
Dim código As Object
Dim diré
'solo se ejecuta si se selecciona 1 celda de la col C
If Target.Column = 5 And Target.Row > 18 And Target.Columns.Text <> Empty Then
busco = Target.Columns.Text
uf = Sheets("Productos").Range("B" & Rows.Count).End(xlUp).Row
ufc = Sheets("Cotización").Range("B" & Rows.Count).End(xlUp).Row
fila = 3
While Sheets("Productos").Cells(fila, 2) <> Empty And contá = 0
a = Sheets("Productos").Cells(fila, 2)
b = Target.Columns.Text
If busco = a Then
contá = 1
URL = Sheets("Productos").Cells(fila, 3)
Target.Offset(0, 5) = URL
Target.Offset(0, 5).Select
With Selection
.RowHeight = 95
.VerticalAlignment = xlCenter
End With
End If
fila = fila + 1
Wend
If ufc = 19 Then
superior = 334.75
Else
superior = 94.5 * (ufc - 19) + 334.75
End If
Sheets("Cotización").Pictures.Insert(URL).Select
With Selection
.Name = ufc
.Top = superior
.Left = 568
.Width = 19
.Height = 92
End With
End If
End Sub

Visita http://programarexcel.com/ podrás descargar macros de ejemplo que te pueden ayudar.

Hola, ya recibí el archivo, muchas gracias, pero tiene algunos problemas:

1.- El archivo se debe abrir en PC o en Mac, y en mac resulta ser inservible, pues las rutas no son iguales, no se manejan por "C:\" (además de no aceptar el botón, de hecho el archivo se realizó en mac office 2011 mac)

2.- En este momento lo estoy probando en una PC con Office 2010, pero se borraron todas las fórmulas que habían en la tabla, y cuando las pongo no me las acepta.

3.- A la hora de poner el código ya en la hoja de cotización me pone un letrero que dice "error 1004" finalizar o depurar, si ponto finalizar termina por ponerme en la celda la ruta del archivo pero no el archivo (o foto); y si le pongo depurar me muestra el error dentro de la macro sin saber que hacerle.

Agradezco mucho tu ayuda, el café queda pendiente.

Como estás yo trabajo en PC excel 2013, tu no aclaraste que lo necesitabas para mac, con relación a las formulas, yo te mande la muestra, agarra tu archivo original abre el que yo te envié copia todo el código que está en la hoja cotización,

El código funciona cuando realizas un cambio en la columna F de la hoja de cotización, es decir ingresas el cógigo cambias de cedas cuando cuando salgas de la columna F se escribe la dirección y se agrega la foto, eso de que están borradas las formulas es porque yo estuve practicando para poder ubicar la imagen.

Pero es fácil de solucionar, es más lo hago yo y te lo envío, te voy a realizar una modificación agregando un botón para insertar las imágenes, tu carga todos los datos y después apretás ese botón y se van a agregar las fotos, previo debes seleccionar hacer click y seleccionar la ceda con la url, seleccionada apretás el botón y se agrega la imagen.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas