Pastas de trabalho do Excel VBA. Método aberto
O método VBA Workbooks.Open é usado para abrir uma pasta de trabalho do Excel a partir de outra pasta de trabalho.
No que diz respeito ao VBA, espero que você tenha visto a magia e as maravilhas que o VBA pode fazer em seu local de trabalho. Uma das coisas importantes sobre o VBA é que ele não limita seu trabalho na mesma pasta de trabalho. Em vez disso, podemos acessar a pasta de trabalho que ainda não foi aberta. Uma dessas técnicas é que podemos abrir outra pasta de trabalho de uma pasta de trabalho diferente. Neste artigo especial, mostraremos como abrir uma pasta de trabalho do Excel usando o método Workbooks.Open em detalhes.

Abra uma pasta de trabalho a partir da pasta de trabalho atual
Imagine uma situação em que você está trabalhando com duas pastas de trabalho que já estão abertas. A pasta de trabalho na qual você está trabalhando é chamada de “Livro 1” e outra pasta de trabalho que está aberta, mas não ativa, é chamada de “Livro 2”.
Como estamos trabalhando no “Livro 1” para ativar outra pasta de trabalho, o “Livro 2”, precisamos especificar o nome da pasta de trabalho com sua extensão de arquivo usando o objeto WORKBOOKS.

Dentro disso, precisamos inserir o nome da pasta de trabalho e sua extensão.

Então, precisamos insistir no que precisamos fazer com este livro de exercícios. Como precisamos ativar esta pasta de trabalho, selecione o método “Ativar”.

Portanto, este código irá ativar a pasta de trabalho “Livro 2.xlsx” se ela for aberta.
E se a pasta de trabalho “Livro 2.xlsx” não for aberta ??? Como você abre ou ativa ????
É aqui que nosso método Workbooks.Open entra em cena.
Sintaxe

- Nome do arquivo: o primeiro argumento neste método é que precisamos especificar o nome da pasta de trabalho que estamos tentando abrir. O nome da pasta de trabalho sozinho não pode fazer o trabalho aqui porque o Excel não sabe em qual pasta sua pasta de trabalho está salva. Portanto, precisamos fornecer um caminho de pasta completo seguido por um nome de arquivo exato com sua extensão salva.
- Links de atualização: quando tentamos abrir a pasta de trabalho, ela pode conter alguns links externos de outras pastas de trabalho. Podemos fornecer sim ou não aqui.
- Modo de leitura: Como você deseja abrir a pasta de trabalho ?? Se você deseja que o arquivo seja apenas lido, TRUE é o argumento.
- Senha: se a pasta de trabalho de destino ou de abertura contiver qualquer senha, neste argumento, precisamos especificar a senha que foi usada ao proteger a pasta de trabalho.
Esses quatro argumentos são bons o suficiente neste método. Não quebre a cabeça para entender cada argumento, porque a necessidade dos argumentos restantes pode nunca surgir.
Exemplos
Exemplo 1
Imagine que você está tentando abrir o arquivo denominado “Arquivo 1.xlsx” em seu computador. O arquivo é salvo em várias pastas e subpastas. Para abri-lo por meio da codificação VBA, siga as etapas abaixo.
Etapa 1: iniciar o subprocedimento.
Código:
Sub Workbook_Example1 () End Sub

Etapa 2: dentro do subprocedimento VBA, inicie o método Workbooks.Open.

Etapa 3: A primeira coisa que precisamos mencionar é um nome de arquivo com o caminho da pasta e a extensão do arquivo.
Para isso, primeiro precisamos abrir o local exato do arquivo.

Agora o que você precisa fazer é copiar o caminho do arquivo usando o caminho da pasta.

Step 4: Now copy the link and paste in coding as follows.
Code:
Sub Workbook_Example1() Workbooks.Open Filename:="D:Excel FilesVBAFile1.xlsx" End SubM

So, now we have copied and pasted the file path where it is stored. In this mentioned file path, it may contain many files, so after this, enter backward slash first and then enter the file name with a file extension.
Code:
Sub Workbook_Example1() Workbooks.Open Filename:="D:Excel FilesVBAFile1.xlsx" End Sub

Now ignore all the other arguments.
Step 5: Run the code. It will open up the workbook named “File 1.xlsx”.
So, our code has just opened the mentioned workbook in the mentioned folder path.
Example #2
The best and efficient way of using VBA coding boils down to the use of variables while coding. Because as part of a large VBA project, we may need to open other files in between the coding, so in such a situation,ns use of variables is going to play an important role.
The same file can be opened by using variables as well. For this, declare two variables as a string data type.
Code:
Sub Workbook_Example2() Dim File_Location As String Dim File_Name As String End Sub

For the File_Location variable, assign the folder path where the file is stored.
Code:
Sub Workbook_Example2() Dim File_Location As String Dim File_Name As String File_Location = "D:Excel FilesVBA " End Sub

Note: One extra thing we need to do is after pasting the link, we need to put backward slash.
Now for the File_Name variable, we need to mention the file name with its excel extension.
Code:
Sub Workbook_Example2() Dim File_Location As String Dim File_Name As String File_Location = "D:Excel FilesVBA " File_Name = "File1.xlsx" End Sub

Now, these two variables combine to create a full folder path.
Now open Workbooks.Open method again in excel VBA.

For the first argument supply, two variable names with an ampersand (&) sign.
Code:
Sub Workbook_Example2() Dim File_Location As String Dim File_Name As String File_Location = "D:Excel FilesVBA " File_Name = "File1.xlsx" Workbooks.Open File_Location & File_Name End Sub

So now, we can change the folder path and file name whenever we want to for just variables, so wherever we use variables, it will reflect the changes instantly.
Things to Remember
- Nunca, jamais, insira o local do arquivo manualmente porque 99% das vezes, cometemos erros ao digitar o local, então copie somente do local.
- Para separar a localização e o arquivo, precisamos inserir uma barra invertida () manualmente.
- Se o arquivo estiver protegido por senha, use o argumento PASSWORD no método Workbooks.Open.