IMAGEM EM CELULA VBA

SOARESDIVIS 27/04/2012 18:07:42
#400941
Olá pessoal, qual o código que uso para abrir uma imagem em uma determinada célula ?
Tenho as imagens em uma pasta, já sei puxar via código para a planilha, porém, não consigo fazer o insert em uma dada célula.
No meu código, vou carregar uma planilha com os dados de um produto e a foto, tudo na mesma linha mas em células diferentes e depois mudo de linha e carrego outro produto, isso já funciona, uso banco access, mas não sei como coloco a foto em uma determinada célula.
Obrigado pela ajuda.
FILMAN 28/04/2012 09:14:09
#400959
Cara nunca vi uma imagem dentro de uma célula mais creio que deve existir! só desconheço no momento
não sei como você esta inserindo as imagens na sua planilha essa Macro abaixo Inseri uma imagem na célula que você quiser no entanto é um objeto imagem

verifica se isso serve ai é só adaptar


Sub Insere_Imagem()
Dim Pict
Dim Imagem As Object
Dim ImgFileFormat As String
Dim Celula As String

Celula = [Ô]A7[Ô] [ô]Aqui é a celula que você quer inserir é só adaptar conforme for pulando linha

ImgFileFormat = [Ô]Image Files JPG (*.jpg),*.jpg, Image Files GIF (*.gif),*.gif, Image Files BMP (*.bmp),*.bmp[Ô]

Pict = Application.GetOpenFilename(ImgFileFormat)
If Pict = False Then End

Set Imagem = ActiveSheet.Pictures.Insert(Pict)

Imagem.Top = Range(Celula).Top
Imagem.Left = Range(Celula).Left
Imagem.ShapeRange.LockAspectRatio = msoFalse

Imagem.Height = Range(Celula).Height * 1 [ô]1 = Quantidade de linhas...
Imagem.Width = Range(Celula).Width * 1 [ô]1 = Quantidade de colunas...
End Sub
SOARESDIVIS 28/04/2012 22:07:04
#400976
Obrigado por sua resposta, vou explicar melhor, tenho em uma pasta várias fotos de vários produtos e quero resgatar a foto do produto correspondente quando digitar o código deste produto, na verdade eu já consegui resolver com o código abaixo, porém, não estou conseguindo criar um If se a foto não existir, você poderia me ajudar com base no meu código abaixo ?

foto = Range([Ô]H2[Ô])
Set r = Cells(7, 6)
MyPath = ([Ô]F:\Empresa\FOTOS\[Ô] & foto & [Ô].jpg[Ô])
ActiveSheet.Unprotect [Ô][Ô]
With ActiveSheet.Pictures.Insert(MyPath).ShapeRange
[ô]If ActiveSheet.Pictures.Insert(MyPath).ShapeRange Then
.LockAspectRatio = True
.Top = r.Top
.Left = r.Left
.Height = r.RowHeight * r.MergeArea.Rows.Count
[ô].Height = r.RowHeight [ô] r.MergeArea.Rows
[ô]flag = True
End With
Tópico encerrado , respostas não são mais permitidas