Seleção de arquivos, pastas e salvar arquivos com o FileDialog VBA
Especialista em Excel

Seleção de arquivos, pastas e salvar arquivos com o FileDialog VBA
Objetivo: Demonstrar o uso do objeto FileDialog para seleção de arquivos, pastas e salvar arquivos.
//
O objeto fileDialog tem por função permitir de forma simples a utilização dos objetos do Windows referentes a conhecida janela de seleção de arquivos, pasta e salvar arquivos.
Este objeto é muito útil para permitir a interação com o usuário, por exemplo: você tem uma planilha que realiza a importação de dados de um arquivo texto e abre ele em colunas e depois gera um relatório. Com esta função você pode permitir que o usuário selecione o arquivo texto através de um atalho na própria planilha e que a importação seja disparada assim que for selecionado o arquivo.
No próprio código fonte eu coloquei a explicação de cada um dos procedimentos passo-a-passo conforme abaixo:
'Procedimento para salvar arquivos
Sub lsSalvar()
Dim fDlg As FileDialog
Set fDlg = Application.FileDialog(FileDialogType:=msoFileDialogSaveAs)
'Nome padrão para salvar o arquivo
fDlg.InitialFileName = ActiveWorkbook.Name
fDlg.Show
End Sub
'Procedimento para selecionar arquivos
Sub lsSelecionarArquivo()
Dim fDlg As FileDialog
Dim lArquivo As String
'Chama o objeto passando os parâmetros
Set fDlg = Application.FileDialog(FileDialogType:=msoFileDialogOpen)
With fDlg
'Alterar esta propriedade para True permitirá a seleção de vários arquivos
.AllowMultiSelect = False
'Determina a forma de visualização dos aruqivos
.InitialView = msoFileDialogViewDetails
'Filtro de arquivos, pode ser colocado mais do que um filtro separando com ; por exemplo: "*.xls;*.xlsm"
.Filters.Add "Texto", "*.txt", 1
'Determina qual o drive inicial
.InitialFileName = "C:\"
End With
'Retorna o arquivo selecionado
If fDlg.Show = -1 Then
lArquivo = fDlg.SelectedItems(1)
MsgBox "O arquivo selecionado está em: " & lArquivo
Cells(5, 5).Value = lArquivo
Else
MsgBox "Não foi selecionado nenhum arquivo"
End If
End Sub
'Procedimento para salvar arquivos
Sub lsSelecionarPasta()
Dim fDlg As FileDialog
Dim lPasta As String
Set fDlg = Application.FileDialog(FileDialogType:=msoFileDialogFolderPicker)
'Retorna a pasta selecionada
If fDlg.Show = -1 Then
lPasta = fDlg.SelectedItems(1)
MsgBox "A pasta selecionada foi: " & lPasta
Cells(2, 5).Value = lPasta
Else
MsgBox "Não foi selecionada nenhuma pasta"
End If
End Sub
Abraço
Marcos Rieper
//
Principais recursos
Confira o que este material oferece para você.
Perguntas frequentes
O material é realmente gratuito?
Sim. O acesso é gratuito e não exige cadastro.
Preciso ter o Excel instalado?
Recomendamos o Excel 2013 ou superior para todos os recursos.
Como faço para receber atualizações?
As atualizações são automáticas dentro da própria planilha.
Funciona no Excel do Mac?
Sim, funciona no Excel para Windows e para Mac.
Funciona no celular?
É possível visualizar no app do Excel; a edição completa é no computador.
Planilhas relacionadas
Planilha de Fluxo de Caixa
R$ 89,90
Controle de Estoque
R$ 69,90
Planilha Financeira Empresarial
R$ 79,90
Dashboard Financeiro no Excel
R$ 49,90





