Trabalhar com imagens em formulários e relatórios

Neste exemplo pretendo demonstrar como trabalhar com imagens em forumários e relatórios.
Para tal criei uma tabela para registo de vendedores, onde constam vários campos para identificação de cada vendedor e um campo para inserir a fotografia.
Para colocar uma nova imagem clicamos em adicionar foto e escolhemos uma imagem à escolha no nosso computador. Esta imagem fica ligada à base de dados e não incorporada, pelo que caso se mude a base de dados de localização as imagens deixam de estar disponíveis.
Para adicionar a imagem utilizei o seguinte código:

Dim strCaminho As String, strPastaInicial As String
strPastaInicial = “C:Meus Documentos”
strCaminho = Buscar(Me.hwnd, “Inserir foto”, strPastaInicial, _
“Arquivos gráficos (*.bmp; *.gif; *.jpg)” & vbNullChar & “*.bmp; *.gif; *.jpg”)
If Len(strCaminho) > 0 Then
Me.Localfoto = strCaminho
Me.FOTO.Picture = Me.Localfoto
Me.FOTO.Visible = True
End If

O código acima serve para carregar a imagem, mais própriamente colocar o caminho (localização) num campo de texto. Através dessa localização é mostrada a imagem correspondente.
Depois, necessitamos de actualizar a imagem à medida que vamos mudar de registo, para isso usei o seguinte código:

msgerro.Visible = False ‘Esconde a mensagem de erro, que só aparece caso não encontre a imagem na localização especificada

On Error GoTo Err_mostraimagem

If IsNull(Me.Localfoto) = False Then
Me.FOTO.Picture = Me.Localfoto
FOTO.Visible = True
SEMFOTO.Visible = False
Else
Me.FOTO.Picture = “”
SEMFOTO.Visible = True
FOTO.Visible = False

End If

Exit_mostraimagem:
Exit Sub

Err_mostraimagem:
Select Case Err.Number
Case 2220 ‘ Não encontra a imagem
FOTO.Visible = False
SEMFOTO.Visible = True
msgerro.Visible = True
Resume Exit_mostraimagem:
Case Else ‘ Outro Erro.
MsgBox Err.Number & ” ” & Err.Description
Resume Exit_mostraimagem:
End Select

Download: Fotos