VBA Workbook Open

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 de podermos 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 que 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 “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 esta apostila. 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” caso ela seja 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

Você pode baixar este modelo de pasta de trabalho VBA aberto do Excel aqui - modelo de pasta de trabalho VBA aberto do Excel

Exemplo 1

Imagine que você está tentando abrir o arquivo denominado “Arquivo 1.xlsx” em seu computador. O arquivo é salvo em muitas 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 é o nome do 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.

Etapa 4: agora copie o link e cole na codificação da seguinte maneira.

Código:

 Sub Workbook_Example1 () Workbooks.Open Filename: = "D: \ Excel Files \ VBA \ File1.xlsx" End SubM 

Portanto, agora copiamos e colamos o caminho do arquivo onde ele está armazenado. Neste caminho de arquivo mencionado, ele pode conter muitos arquivos, portanto, depois disso, insira a barra invertida primeiro e, em seguida, insira o nome do arquivo com uma extensão de arquivo.

Código:

 Sub Workbook_Example1 () Workbooks.Open Filename: = "D: \ Excel Files \ VBA \ File1.xlsx" End Sub 

Agora ignore todos os outros argumentos.

Etapa 5: Execute o código, ele abrirá a pasta de trabalho chamada “Arquivo 1.xlsx”.

Portanto, nosso código acaba de abrir a pasta de trabalho mencionada no caminho da pasta mencionada.

Exemplo # 2

A maneira melhor e eficiente de usar a codificação VBA resume-se ao uso de variáveis ​​durante a codificação. Porque, como parte de um grande projeto VBA, podemos precisar abrir outros arquivos entre a codificação, portanto, em tais situações, o uso de variáveis ​​vai desempenhar um papel importante.

O mesmo arquivo também pode ser aberto usando variáveis. Para isso, declare duas variáveis ​​como um tipo de dados de string.

Código:

 Sub Workbook_Example2 () Dim File_Location As String Dim File_Name As String End Sub 

Para a variável File_Location, atribua o caminho da pasta onde o arquivo está armazenado.

Código:

 Sub Workbook_Example2 () Dim File_Location As String Dim File_Name As String File_Location = "D: \ Excel Files \ VBA \" End Sub 

Nota: Uma coisa extra que precisamos fazer é, depois de colar o link, colocar uma barra invertida.

Now for File_Name variable, we need to mention file name with its excel extension.

Code:

 Sub Workbook_Example2() Dim File_Location As String Dim File_Name As String File_Location = "D:\Excel Files\VBA\" 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 Files\VBA\" 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

  • Never ever enter the file location manually because 99% of the time we make mistakes while typing the location, so copy from the location only.
  • To separate location and file we need to enter a backward slash (\) manually.
  • If the file is protected by a password then use the PASSWORD argument under Workbooks.Open method.