Olá
Uso esta função para localizar determinado arquivo de imagem e inserir o caminho e nome do arquivo em uma TextBox acoplada no formulário.
Conforme comentário no código, quero que o retorno da caixa de diálogo seja apenas o nome do arquivo, e não o caminho completo.
Quero gravar na tabela o caminho relativo, para que, se a pasta do aplicativo for movida, são se percam os endereços das imagens.
Sub getFileName1()
On Error GoTo Trato
' necessário referenciar Microsoft Office 11.0 Object Library
' Exibe a caixa de diálogo Abrir arquivo a fim de escolher um nome
' de arquivo para t2Foto1Local. Se o usuário selecionar um arquivo,
' essa função o exibe no controle Imagem1.
Dim FileName As String
Dim result As Integer
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Selecionar Foto1"
.Filters.Add "Todos os arquivos", "*.*"
.Filters.Add "JPEGs", "*.jpg"
.Filters.Add "Bitmaps", "*.bmp"
.FilterIndex = 2
.AllowMultiSelect = False
'fncOrigem = Application.CurrentProject.Path & strLocal
'retorna X:\PastaDoSistema\Imagem\
.InitialFileName = fncOrigem(mImagem)
result = .Show
If (result <> 0) Then
'aqui retorna o caminho e o nome do arquivo
'quero que FileName retorne apenas o nome do arquivo
FileName = Trim(.SelectedItems.Item(1))
Me.t2Foto1Local.Visible = True
Me.t2Foto1Local.SetFocus
Me.t2Foto1Local.Text = FileName
Me.Park.SetFocus
Me.t2Foto1Local.Visible = False
Me.MsgFoto1.Visible = False
Me.Imagem1.Visible = True
Me.Imagem1.Picture = FileName
End If
End With
Exit Sub
Trato: ExplicaErro
End Sub
Obrigado!