Excel VBA Chdir
“ChDir” em pode ser denominado como “ Change Directory ”. Ao usar “ChDir”, podemos alterar o diretório padrão atual usado no VBA ao pesquisar os arquivos sem um caminho totalmente qualificado. Por exemplo, quando tentamos salvar o arquivo como um novo arquivo por padrão, podemos ver a unidade configurada do sistema abrir e, a partir daí, selecionar a pasta que desejamos salvar.
Você já pensou que podemos mudar a janela do seletor de pasta padrão para o nosso desejo? Sim, podemos fazer isso!
Agora, vamos examinar a sintaxe da função ChDir no VBA.
Caminho: é aqui que precisamos mencionar o caminho da pasta que desejamos abrir por padrão quando tentamos abrir ou salvar o arquivo com um nome diferente.
O caminho deve ser mencionado entre aspas duplas.
Exemplos de função ChDir em VBA
Abaixo estão os exemplos de Excel VBA ChDir.
Você pode baixar este modelo VBA ChDir Excel aqui - modelo VBA ChDir ExcelExemplo 1
Agora dê uma olhada no código do VBA abaixo primeiro.
Código:
Sub ChDir_Example1 () Dim FD As FileDialog Dim ND As String Set FD = Application.FileDialog (msoFileDialogFilePicker) With FD .Title = "Escolha seu arquivo" .AllowMultiSelect = False .Mostrar End With End Sub
Quando eu executar este código usando a tecla F5 ou manualmente, ele abrirá a janela padrão abaixo primeiro.
Daqui em diante, tenho que passar por várias pastas e subpastas para selecionar os arquivos que desejo abrir usando o código VBA.
Isso levará muito tempo! Se eu tiver que passar por várias pastas, isso também pode levar à seleção de arquivo incorreta devido a várias subpastas e aumenta a confusão.
E se meu código puder abrir a pasta específica onde meu arquivo deve ser escolhido?
Não é uma opção legal de se ter?
Sim, vamos experimentar.
Antes de passar nosso código, precisamos usar a função ChDir e mencionar o caminho da pasta entre aspas duplas.
ChDir "D: \ Artigos \ Arquivos Excel"
O código acima, por padrão, mudará o diretório a ser aberto para a unidade “D” e sob a unidade D a pasta “Artigos” e sob esta pasta a subpasta a ser aberta é “Arquivos Excel”.
Código:
Sub ChDir_Example2 () Dim Filename As Variant ChDir "D: \ Articles \ Excel Files" Filename = Application.GetSaveAsFilename () If TypeName (Filename) “Boolean” Then MsgBox Filename End If End Sub
Agora irei executar o código manualmente ou pressionando a tecla F5 e ver qual diretório de arquivo abre.
Como podemos ver na imagem acima, obtive a janela padrão de acordo com minhas especificações.
No caso de sua função ChDir não mostrar o diretório de arquivo mencionado, você precisa primeiro alterar o Drive e então aplicar a função ChDir .
Para mudar a unidade, precisamos usar a função “ChDrive” . Como desejo abrir o arquivo na unidade “D” primeiro, preciso mudar a unidade para “D”.
ChDrive “D”
O código acima mudará a unidade para “E”.
Código:
Sub ChDir_Example2 () Dim Filename As Variant ChDrive "D" ChDir "D: \ Articles \ Excel Files" Filename = Application.GetSaveAsFilename () If TypeName (Filename) “Boolean” Then MsgBox Filename End If End Sub
Assim, usando a função “ ChDir ” do VBA , podemos alterar o diretório de arquivo padrão de acordo com nosso desejo.