VBA-werkmap openen

Excel VBA-werkmappen. Open methode

VBA Workbooks.Open Method wordt gebruikt om een ​​Excel-werkmap vanuit een andere werkmap te openen.

Wat VBA betreft, hoop ik dat je de magie en wonderen hebt gezien die VBA op je werkplek kan doen. Een van de wezenlijke dingen van VBA is dat het zijn werk niet in dezelfde werkmap beperkt, maar dat we toegang hebben tot de werkmap die al niet is geopend. Een van die technieken is dat we een andere werkmap kunnen openen vanuit een andere werkmap. In dit speciale artikel laten we u in detail zien hoe u een Excel-werkmap opent met de methode Workbooks.Open.

Open een werkmap vanuit de huidige werkmap

Stelt u zich eens een situatie voor waarin u werkt met twee werkmappen die al zijn geopend. De werkmap waaraan u werkt, heet "Boek 1" en een andere werkmap die is geopend maar niet actief, wordt "Boek 2" genoemd.

Aangezien we in "Boek 1" werken om een ​​andere werkmap "Boek 2" te activeren, moeten we de naam van de werkmap met de bestandsextensie specificeren met behulp van het WORKBOOKS-object.

Hierbinnen moeten we de werkmapnaam en de extensie invoeren.

Dan moeten we aandringen op wat we met dit werkboek moeten doen. Aangezien we dit werkboek moeten activeren, selecteert u de "Activate" -methode.

Deze code activeert dus de werkmap "Boek 2.xlsx" als deze wordt geopend.

Wat moet ik doen als de werkmap "Boek 2.xlsx" niet wordt geopend ??? Hoe open of activeer je het ????

Dit is waar onze Workbooks.Open methode in beeld komt.

Syntaxis

  • Bestandsnaam: het eerste argument in deze methode is dat we de werkmapnaam moeten specificeren die we proberen te openen. De werkmapnaam alleen kan hier niet het werk doen, omdat Excel niet weet in welke map uw werkmap is opgeslagen. We moeten dus een volledig mappad opgeven, gevolgd door een exacte bestandsnaam met de opgeslagen extensie.
  • Update-koppelingen: wanneer we proberen de werkmap te openen, bevat deze mogelijk enkele externe koppelingen van andere werkmappen. We kunnen hier ja of nee leveren.
  • Leesmodus: hoe wil je de werkmap openen ?? Als u wilt dat het bestand alleen wordt gelezen, is WAAR het argument.
  • Wachtwoord: als de beoogde of openingswerkmap een wachtwoord bevat, moeten we in dit argument het wachtwoord specificeren dat werd gebruikt tijdens het beschermen van de werkmap.

Deze vier argumenten zijn bij deze methode goed genoeg. Breek uw hoofd niet om elk argument te begrijpen, want de behoefte aan die resterende argumenten zal misschien nooit voorkomen.

Voorbeelden

U kunt deze VBA Workbook Open Excel-sjabloon hier downloaden - VBA Workbook Open Excel-sjabloon

Voorbeeld 1

Stel je voor dat je het bestand met de naam "File 1.xlsx" op je computer probeert te openen. Het bestand wordt in zoveel mappen en submappen opgeslagen. Volg de onderstaande stappen om het te openen via VBA-codering.

Stap 1: Start de subprocedure.

Code:

 Sub Workbook_Example1 () End Sub 

Stap 2: Start binnen de VBA-subprocedure Workbooks.Open methode.

Stap 3: Het allereerste dat we moeten vermelden, is de bestandsnaam met het mappad en de extensie van het bestand.

Hiervoor moeten we eerst de exacte bestandslocatie openen.

Wat u nu moet doen, is dat u het bestandspad moet kopiëren met behulp van het mappad.

Stap 4: Kopieer nu de link en plak deze als volgt in de codering.

Code:

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

Dus nu hebben we het bestandspad gekopieerd en geplakt waar het is opgeslagen. In dit genoemde bestandspad kan het veel bestanden bevatten, dus voer daarna eerst een backward slash in en daarna de bestandsnaam met een bestandsextensie.

Code:

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

Negeer nu alle andere argumenten.

Stap 5: Voer de code uit om de werkmap met de naam "File 1.xlsx" te openen.

Dus onze code heeft zojuist de genoemde werkmap geopend in het genoemde mappad.

Voorbeeld # 2

De beste en meest efficiënte manier om VBA-codering te gebruiken, komt neer op het gebruik van variabelen tijdens het coderen. Omdat we als onderdeel van een groot VBA-project mogelijk andere bestanden tussen de codering moeten openen, dus in dergelijke situaties zal het gebruik van variabelen een belangrijke rol spelen.

Hetzelfde bestand kan ook worden geopend door variabelen te gebruiken. Declareer hiervoor twee variabelen als een stringgegevenstype.

Code:

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

Wijs voor de variabele File_Location het mappad toe waar het bestand is opgeslagen.

Code:

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

Opmerking: een extra ding dat we moeten doen, is nadat we de link hebben geplakt, moeten we een achterwaartse schuine streep plaatsen.

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.