Insertar imagen en una celda de Excel

Mi idea es intentar insertar una imagen (jpeg) dentro de una celda de excel, para que se adapte a la forma de esta celda.

Cuando me coloco en una celda y doy al botón "insertar imagen", Excel lo que hace es superponer la imagen "por encima" de la celda, pero no la mete dentro de la celda (como sí hace con el texto).

¿Cómo podría hacer esto? Es decir, mi intención es poner los logotipos de distintas empresas en la misma celda (o grupo de celdas combinadas), para hacer un informe para cada una de ellas, y que la imagen insertada, sea cual sea, tenga siempre el mismo tamaño (la de la celda donde la inserto).

1 respuesta

Respuesta
1

Esta es tu solución: En mi ejemplo estoy insertando una imagen en la celda D5 mediante la macro que te adjunto. En la macro nos preocupamos de ajustar la imagen a la esquina superior izquierda de la celda y cuando está insertada, solo tienes que estirar el alto de la fila 5 y el ancho de la columna D, de esta manera la foto está perfectamente ajustada a la celda D5. Además para otras celdas ya sabes el ancho y alto que debes poner.

Sub imagen()

tope = Range("d5").Top

izq = Range("d5").Left

ActiveSheet.Pictures.Insert("C:\Users\Luis\Pictures\fotoluis.jpg").Select

Selection.ShapeRange.Top = tope

Selection.ShapeRange.Left = izq

Selection.ShapeRange.Height = 120
End Sub

Por favor recuerda finalizar y puntuar mi labor

Muchas gracias por tu pronta respuesta.

Por lo que indicas, tendría que modificar el alto y ancho de la celda D5 cada vez que inserto una imagen nueva, ¿no?

En mi caso, tengo que hacer bastantes informes iguales (cuadros de mando) pero uno para cada una de las empresas de las que tengo datos. Quiero que su logotipo salga en la portada, en una zona determinada y que ocupen un espacio determinado.

Mi idea era, en realidad, combinar unas cuantas celdas en la portada, insertar la foto dentro de ese área combinada y, además, si fuera posible, indicarle a Excel que centre la imagen en ese área combinada (tanto en vertical como en horizontal).

¿Sería posible hacerlo?

Muchas gracias y recibe un cordial saludo,

Mi consejo es intentar trabajar sin combinar celdas, puedes hacerlo perfectamente en celdas independientes y además si las fotos va a estar en una misma columna, puedes modificar su ancho y alto de todas a la vez, y luego se podría construir una macro para insertar una foto en cada una de las celdas.

Muchas gracias por tu respuesta. La macro para insertar las fotos ya la tengo hecha. En el informe, tengo que poner una foto cada vez en un sitio determinado.

Por lo que dices, podría coger una celda de referencia para insertar las imágenes y centrarlas en esa celda. La pregunta sería: ¿cómo centro la imagen en esa celda?

Muchas gracias y recibe un cordial saludo,

Pues si no quieres que esté ajustada totalmente a los bordes de la ceda puedes optar por lo siguiente: He añadido un +3 a los valores de top y left para que no esté pegado al borde, solo queda ajustar alto y ancho para futuras imágenes.

Sub imagen()
tope = Range("d5").Top +3
izq = Range("d5").Left +3
ActiveSheet.Pictures.Insert("C:\Users\Luis\Pictures\fotoluis.jpg").Select
Selection.ShapeRange.Top = tope
Selection.ShapeRange.Left = izq
Selection.ShapeRange.Height = 120
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas