Caixa de diálogo VBA Open File

O VBA permite que você escolha um arquivo para abrir usando o Application.GetOpenFilename método. Neste tutorial, você aprenderá como abrir uma caixa de diálogo de arquivo e definir parâmetros.

Se você quiser aprender como abrir e fechar um arquivo, pode clicar neste link: VBA Open / Close File

Abra uma caixa de diálogo de arquivo no VBA

Se você deseja abrir um arquivo no VBA, primeiro você precisa abrir uma caixa de diálogo de arquivo para escolher um arquivo. Aqui está o código:

123 Dim strFile As StringstrFile = Application.GetOpenFilename (FileFilter: = "Arquivos Excel (* .xlsx *), * .xlsx *", Título: = "Escolha um arquivo Excel para abrir", MultiSelect: = True)

Como você pode ver, o método possui vários parâmetros. FileFilter permite filtrar os tipos de arquivo de que você precisa, em nosso caso, arquivos .xlsx.

No Título parâmetro, você pode definir um título da caixa de diálogo. Se você deseja permitir a abertura de vários arquivos, é necessário definir MultipleSelect para verdadeiro. Se você não definir este parâmetro, apenas um arquivo pode ser selecionado.

Imagem 1. Abra uma caixa de diálogo de arquivo

Como você pode ver na Imagem 1, a caixa de diálogo aparece com o título Escolha um arquivo Excel. Apenas os arquivos do Excel são filtrados e podemos selecionar vários arquivos.

Abra uma caixa de diálogo de arquivo em uma pasta específica

Se você deseja abrir uma caixa de diálogo em uma pasta específica, você deve usar o método .FileDialog com o parâmetro msoFileDialogFilePicker. No exemplo, vamos abrir uma caixa de diálogo na pasta Pasta C: \ VBA. Aqui está o código:

123456789101112131415161718192021 Dim fd As Office.FileDialogDim strFile As StringDefina fd = Application.FileDialog (msoFileDialogFilePicker)Com fd.Filters.Clear.Filtros.Adicionar "Arquivos Excel", "* .xlsx?", 1.Title = "Escolha um arquivo Excel".AllowMultiSelect = False.InitialFileName = "C: \ Pasta VBA"Se .Show = True ThenstrFile = .SelectedItems (1)Fim seTerminar com

Primeiro você precisa declarar a variável fd modelo Office.FileDialog e a variável de string para obtenção de arquivo:

12 Dim fd As Office.FileDialogDim strFile As String

Depois disso, você precisa definir fd para Application.FileDialog (msoFileDialogFilePicker):

1 Defina fd = Application.FileDialog (msoFileDialogFilePicker)

Agora, dentro Com fd End With, podemos definir vários parâmetros:

1234567 .Filters.Clear.Filtros.Adicionar "Arquivos Excel", "* .xlsx?", 1.Title = "Escolha um arquivo Excel".AllowMultiSelect = False

Aqui nós limpamos os filtros de arquivo (.Filters.Clear) e defina-o como .xlsx (.Filters.Add “Arquivos Excel”, “* .xlsx?”, 1).

Além disso, podemos definir o título da caixa de diálogo: .Title = “Escolha um arquivo Excel”.

Podemos limitar um usuário a selecionar apenas um arquivo por:.AllowMultiSelect = False

Para abrir uma caixa de diálogo na pasta que queremos, precisamos colocar esta linha do código:

1 .InitialFileName = "C: \ Pasta VBA"

Ao final, abriremos apenas a caixa de diálogo com todos os parâmetros previamente configurados:

12345 Se .Show = True ThenstrFile = .SelectedItems (1)Fim se

Quando executamos este código, a caixa de diálogo para a abertura do arquivo aparece na pasta Pasta C: \ VBA:

Imagem 2. Abra uma caixa de diálogo de arquivo em uma pasta específica

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave