VBA-Arbeitsmappe öffnen

Excel VBA Workbooks.Open-Methode

VBA Workbooks.Open- Methode wird verwendet, um eine Excel-Arbeitsmappe aus einer anderen Arbeitsmappe zu öffnen.

Was VBA betrifft, hoffe ich, dass Sie die Magie und Wunder gesehen haben, die VBA an Ihrem Arbeitsplatz bewirken kann. Eines der wesentlichen Dinge bei VBA ist, dass es seine Arbeit in derselben Arbeitsmappe nicht einschränkt, sondern dass wir auf die Arbeitsmappe zugreifen können, die bereits nicht geöffnet ist. Eine dieser Techniken besteht darin, dass wir eine andere Arbeitsmappe aus einer anderen Arbeitsmappe öffnen können. In diesem speziellen Artikel zeigen wir Ihnen im Detail, wie Sie eine Excel-Arbeitsmappe mit Workbooks.Open öffnen.

Öffnen Sie eine Arbeitsmappe aus der aktuellen Arbeitsmappe

Stellen Sie sich eine Situation vor, in der Sie mit zwei bereits geöffneten Arbeitsmappen arbeiten. Die Arbeitsmappe, an der Sie arbeiten, heißt "Buch 1", und eine andere Arbeitsmappe, die geöffnet, aber nicht aktiv ist, heißt "Buch 2".

Da wir in „Buch 1“ arbeiten, um eine andere Arbeitsmappe „Buch 2“ zu aktivieren, müssen wir den Arbeitsmappennamen mit seiner Dateierweiterung mithilfe des WORKBOOKS-Objekts angeben.

Darin müssen wir den Arbeitsmappennamen und seine Erweiterung eingeben.

Dann müssen wir darauf bestehen, was wir mit dieser Arbeitsmappe tun müssen. Da wir diese Arbeitsmappe aktivieren müssen, wählen Sie die Methode "Aktivieren".

Dieser Code aktiviert also die Arbeitsmappe „Buch 2.xlsx“, wenn sie geöffnet wird.

Was ist, wenn die Arbeitsmappe „Buch 2.xlsx“ nicht geöffnet ist? Wie öffnet oder aktiviert man es ????

Hier kommt unsere Workbooks.Open-Methode ins Spiel.

Syntax

  • Dateiname: Das erste Argument bei dieser Methode ist, dass wir den Arbeitsmappennamen angeben müssen, den wir öffnen möchten. Der Name der Arbeitsmappe allein kann hier nicht ausgeführt werden, da Excel nicht weiß, in welchem ​​Ordner Ihre Arbeitsmappe gespeichert ist. Wir müssen also einen vollständigen Ordnerpfad angeben, gefolgt von einem genauen Dateinamen mit der gespeicherten Erweiterung.
  • Links aktualisieren: Wenn wir versuchen, die Arbeitsmappe zu öffnen, enthält sie möglicherweise einige externe Links aus anderen Arbeitsmappen. Wir können hier ja oder nein liefern.
  • Lesemodus: Wie möchten Sie die Arbeitsmappe öffnen? Wenn Sie möchten, dass die Datei nur gelesen wird, ist TRUE das Argument.
  • Kennwort: Wenn die Ziel- oder Öffnungsarbeitsmappe ein Kennwort enthält, müssen wir in diesem Argument das Kennwort angeben, das beim Schutz der Arbeitsmappe verwendet wurde.

Diese vier Argumente sind bei dieser Methode gut genug. Brechen Sie sich nicht den Kopf, um jedes einzelne Argument zu verstehen, da die Notwendigkeit dieser verbleibenden Argumente möglicherweise nie entsteht.

Beispiele

Sie können diese VBA Workbook Open Excel-Vorlage hier herunterladen - VBA Workbook Open Excel-Vorlage

Beispiel 1

Stellen Sie sich vor, Sie versuchen, die Datei mit dem Namen "File 1.xlsx" auf Ihrem Computer zu öffnen. Die Datei wird in so vielen Ordnern und Unterordnern gespeichert. Führen Sie die folgenden Schritte aus, um es über die VBA-Codierung zu öffnen.

Schritt 1: Starten Sie die Unterprozedur.

Code:

 Sub Workbook_Example1 () End Sub 

Schritt 2: Starten Sie innerhalb der VBA-Unterprozedur die Workbooks.Open-Methode.

Schritt 3: Das allererste, was wir erwähnen müssen, ist der Dateiname mit seinem Ordnerpfad und der Erweiterung der Datei.

Dazu müssen wir zuerst den genauen Speicherort der Datei öffnen.

Jetzt müssen Sie den Dateipfad mithilfe des Ordnerpfads kopieren.

Schritt 4: Kopieren Sie nun den Link und fügen Sie ihn wie folgt in die Codierung ein.

Code:

 Sub Workbook_Example1 () Workbooks.Open Filename: = "D: \ Excel-Dateien \ VBA \ File1.xlsx" SubM beenden 

Jetzt haben wir den Dateipfad kopiert und eingefügt, in dem er gespeichert ist. In diesem genannten Dateipfad kann es viele Dateien enthalten. Geben Sie danach zuerst einen Schrägstrich und dann den Dateinamen mit einer Dateierweiterung ein.

Code:

 Sub Workbook_Example1 () Workbooks.Open Dateiname: = "D: \ Excel-Dateien \ VBA \ File1.xlsx" End Sub 

Ignorieren Sie nun alle anderen Argumente.

Schritt 5: Führen Sie den Code aus, um die Arbeitsmappe mit dem Namen "Datei 1.xlsx" zu öffnen.

Unser Code hat also gerade die erwähnte Arbeitsmappe im erwähnten Ordnerpfad geöffnet.

Beispiel 2

Die beste und effizienteste Methode zur Verwendung der VBA-Codierung besteht in der Verwendung von Variablen während der Codierung. Da im Rahmen eines großen VBA-Projekts möglicherweise andere Dateien zwischen den Codierungen geöffnet werden müssen, spielt in solchen Situationen die Verwendung von Variablen eine wichtige Rolle.

Dieselbe Datei kann auch mithilfe von Variablen geöffnet werden. Deklarieren Sie dazu zwei Variablen als String-Datentyp.

Code:

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

Weisen Sie für die Variable File_Location den Ordnerpfad zu, in dem die Datei gespeichert ist.

Code:

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

Hinweis: Eine zusätzliche Sache, die wir tun müssen, ist nach dem Einfügen des Links einen Schrägstrich.

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.