Página 1 de 1

VBA busca fotos

Enviado: 20 Mai 2019 às 11:58
por LeoHenrique
Bom dia a todos !

O código abaixo, busca a foto do item na "rede" da empresa no caminho informado. Porém quando salvo a planilha e envio a outra pessoa, as fotos não abrem... Provavelmente é devido a não estarem na mesma "rede" que eu !
Mas é possível resolver ? Existe outra forma ? Ou somente se copiar todas fotos para a planilha ?

Fico no aguardo,

Segue código !

'Colocar fotos


'Definir intervalo onde estão os códigos das imagens
Dim TodosCod, Cod As Range
Set TodosCod = ActiveSheet.Range("B2:B512")

'Definir variáveis para o procedimento de inserção de fotos
Dim Pasta, Ext, TxtCod As String
Dim Fig As Shape
Dim FigJaExist As Boolean
Pasta = "S:\Comercial\Usuários\Leandro\Fotos\"
Ext = ".jpg"

'Inserir a imagem baseado no código da imagem
For Each Cod In TodosCod
TxtCod = Cod.Value
FigJaExist = False

'Checar a existência do arquivo
If Not Dir(Pasta & TxtCod & Ext) = "" Then

'Checar se há alguma foto na célula de destino
For Each Fig In ActiveSheet.Shapes
If Fig.TopLeftCell.Address = Cod.Offset(0, 1).Address Then FigJaExist = True
Next Fig

'Se não houver foto na célula, inserir o arquivo
If FigJaExist = False Then
With ActiveSheet.Pictures.Insert(Pasta & TxtCod & Ext)
.Left = Cod.Offset(0, 1).Left
.Top = Cod.Offset(0, 1).Top
'...caso queira determinar a largura e altura da imagem
.ShapeRange.LockAspectRatio = msoFalse
.ShapeRange.Width = 105
.ShapeRange.Height = 62
End With
End If
End If
Next Cod



Dim rng As Range
Dim shp As Shape
For Each shp In ActiveSheet.Shapes
Set rng = shp.TopLeftCell
shp.Left = rng.Left + (rng.Width - shp.Width) / 2
shp.Top = rng.Top + (rng.Height - shp.Height) / 2
Next shp

Re: VBA busca fotos

Enviado: 22 Mai 2019 às 11:28
por LeoHenrique
Bom dia !
Complementando a pergunta, se é possível após o código puxar as fotos para a planilha, "copiar" as mesmas e salvar na planilha para ficar fixa, pois como importou por código VBA, está como um link.
Como se fosse "copiar e colar especial valores" para manter as fotos ! Existe uma forma ?

Se alguém puder ajudar,

Obrigado

VBA busca fotos

Enviado: 30 Mai 2019 às 11:29
por JCabral
O problema muito provavelmente está na definição do caminho para o servidor onde estão as fotos, no seu computador o caminho é "S:\Comercial\Usuários\Leandro\Fotos\", no do seu colega pode ser "T:\Comercial\Usuários\Leandro\Fotos\", pelo que o caminho dever ser o "geral" do local onde estão as fotos e não o que está mapeado no seu computador.

Tive esse problema na minha empresa e foi assim que resolvi....passou a funcionar em todos os computadores

Abraço
Jorge Cabral

Re: VBA busca fotos

Enviado: 30 Mai 2019 às 13:32
por LeoHenrique
Boa tarde a todos !

JCabral, obrigado pelo retorno, mas acabei criando outro post, onde formulei a pergunta melhor, o nosso colega do forum "Osvaldomp", resolveu o problema com um pequeno código, mas perfeito !!

O outro post é "Link de foto - VBA"

Abraço