Buscar una Imagen en excel que esta dentro del mismo libro según el nombre de la imagen

Necesito una mega ayuda a ver si con una macro se puede
tengo un libro de excel con dos hojas
hoja1 de nombre "bdimagenes", tiene dos columnas la primera el código del producto y la segunda la imagen
de ese código a cada imagen le coloque el nombre del código.
Hoja2 de nombre "catalogo" tengo un resumen de por lo menos 10 código los cuales varían, me gustaría de ser posible hacer que cuando me pare sobre cualquier código del resumen que se encuentra en la hoja2 me muestre la imagen que esta en la hoja1 y la ajuste esa imagen a un rango de varia celda ejemplo "H11:k22".
Entiendo que hay otras formas pero necesito enviar ese archivo a varias persona y que cuando selecciones los códigos de la hoja2 en el resumen muestre la imagen que corresponda a cada código.

1 respuesta

Respuesta
1

Te anexo la macro para que la pongas en los eventos de tu hoja2 "catalogo"

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Range("A2:A11")) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        If Target.Value = "" Then Exit Sub
        On Error Resume Next
        ActiveSheet.DrawingObjects("muestra").Delete
        On Error GoTo 0
        Set h = Sheets("bdimagenes")
        Set b = h.Columns("A").Find(Target.Value, lookat:=xlWhole)
        Set r = Range("H11:K22")
        If Not b Is Nothing Then
            For Each img In h.DrawingObjects
                If img.Name = Target.Value Then
                    img.Copy
                    ActiveSheet.Paste
                    Selection.Name = "muestra"
                    Selection.ShapeRange.LockAspectRatio = False
                    Selection.Top = r.Top
                    Selection.Left = r.Left
                    Selection.Width = r.Width
                    Selection.Height = r.Height
                    Exit For
                End If
            Next
        End If
    End If
End Sub

Cambia en la macro este rango "A2:A11", por el rango de celdas donde tienes el resumen de códigos.

Cambia en la macro este rango "H11:K22", por el rango donde deseas mostrar la imagen

Si la imagen no se muestra como la quieres, borra de la macro esta línea y vuelves a probar.

Selection.ShapeRange.LockAspectRatio = False

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet("catalogo")
  4. En el panel del lado derecho copia la macro

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

¡Gracias! Guao yo pensé que no era posible seguí paso a paso su recomendación y fue un existo, muchísimas gracias, el único detalle pero creo que se puede vivir con eso es que debo darle clip a cada código para que muestre la imagen, seria super genial que la mostrara si le colocara el culsor encima del código.

Si es posible me mustaria de los contarios muchas gracias...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas