Kako odpreti delovni zvezek z imenom spremenljivke s programom Excel VBA

  • Deliti To
Hugh West

Seveda bomo morda morali odpreti datoteko iz nadrejene datoteke programa Excel z uporabo VBA v drugem imeniku. Hkrati pa imamo različne vrste meril tudi o tem, kako želimo odpreti delovni zvezek. Če vas zanima, kako lahko odprete delovni zvezek z imenom spremenljivke, potem vam bo ta članek morda prišel prav. V tem članku obravnavamo, kako lahko odprete delovni zvezek z imenom spremenljivkeuporabo VBA v Excelu z natančnimi razlagami.

Prenesi delovni zvezek za prakso

Prenesite ta delovni zvezek spodaj.

Odprtje delovnega zvezka z imenom spremenljivke z uporabo VBA.xlsm

Vzorec.xlsx

4 preprosti načini za odpiranje delovnega zvezka z imenom spremenljivke z uporabo VBA v Excelu

Za demonstracijo bomo uporabili spodnji nabor podatkov. Imamo informacije o izdelkih več izdelkov z njihovimi Id. to je vzorčna datoteka, ki jo bomo odprli z uporabo kode VBA.

1. Uporaba lastnosti Workbook.Open

Uporaba Delovni zvezek.Odpri lahko odpremo datoteke tako, da navedemo imenik ali ne navedemo lokacije. Prav tako lahko omogočimo, da je odprta datoteka samo za branje.

1.1 Odprite delovni zvezek z navedbo poti do datoteke

V naslednji metodi bomo uporabili Lastnost Delovni zvezek.Odpri za odpiranje datoteke neposredno iz omenjenega imenika lokacije datoteke. Ne glede na to, kje se nahaja datoteka, jo lahko preprosto odpremo.

Koraki

  • V mapi dokumenti je shranjena datoteka, ki jo moramo odpreti.
  • Ime datoteke bomo uporabili kot spremenljivko in nato odprli datoteko z majhnim makrom VBA.
  • Natančen imenik datoteke je prikazan spodaj v oknu z lastnostmi.

  • Najprej pojdite v Razvijalec in kliknite na zavihek Visual Basic Če tega nimate, morate omogočite zavihek Razvijalec . Lahko pa tudi pritisnete ' Alt+F11' za odpiranje Urejevalnik Visual Basic .

  • Pojavilo se bo novo pogovorno okno, v katerem kliknite na Vstavite > Modul .

  • Nato v Modul vnesite naslednjo kodo:
 Sub Open_with_File_Path() Dim Open_File As String: File_path = "C:\Users\User\OneDrive\Documents\Sample" Dim wrkbk As Workbook Set wrkbk = Workbooks.Open(Filename:=File_path) End Sub 

  • Nato zaprite Modul okno.
  • Nato pojdite v Oglejte si zavihek> Makroji .
  • Nato kliknite na Ogled makrov .

  • Po kliku na Prikaži makroje, izberite makre, ki ste jih pravkar ustvarili. Ime je Open_with_File_Path . Nato kliknite Spustite .

  • Po tem je Vzorec se bo odprla datoteka.

🔎 Razčlenitev kode

 Pod Odprto_z_datoteko_pot() 

⮚ Najprej podprocesu določimo ime, ki je Open_with_File_Path .

 Dim Open_File As String: File_path = "C:\Users\User\OneDrive\Documents\Sample" 

⮚ Nato vnesemo lokacijo datoteke v Pot do datoteke (File_Path) spremenljivka

 Dim wrkbk kot Delovni zvezek 

⮚ Nato razglasimo našo spremenljivko wrkbk , katerega vrsta je delovni zvezek.

 Set wrkbk = Delovne knjige.Odpri(Ime datoteke:=File_path) 

⮚ Nato odpremo datoteko z imenom v Pot do datoteke (File_Path) spremenljivko imenika in nastavite datoteko kot wrkbk spremenljivka.

 Končni podnaslov 

⮚ Na koncu končamo podproces te kode.

Preberite več: Kako odpreti delovni zvezek s poti z uporabo programa Excel VBA (4 primeri)

1.2 Odprite delovni zvezek, ne da bi navedli pot do datoteke

V naslednji metodi bomo odprli datoteko iz nadrejene mape, v kateri je shranjena glavna datoteka. Datoteko lahko odpremo, ne da bi v kodi navedli lokacijo. Ta datoteka mora biti le v isti mapi kot nadrejena mapa.

Koraki

  • V istem imeniku, v katerem je zdaj shranjena nadrejena datoteka Excel, imamo shranjeno drugo datoteko.
  • Ime datoteke je 1.

  • Najprej pojdite v Razvijalec in kliknite na zavihek Visual Basic Če tega nimate, morate omogočite zavihek Razvijalec . Ali Lahko tudi pritisnete ' Alt+F11 ' za odprtje Urejevalnik Visual Basic .

  • Pojavilo se bo novo pogovorno okno, v katerem kliknite na Vstavite > Modul .

  • Nato v Modul vnesite naslednjo kodo:
 Sub Open_without_File_Path() Dim wrkbk As Workbook Set wrkbk = Workbooks.Open(Filename:="1.xlsx") End Sub 

  • Nato zaprite Modul okno.
  • Nato pojdite v Oglejte si zavihek> Makroji .
  • Nato kliknite na Ogled makrov .

  • Po kliku View Macros izberite makroje, ki ste jih pravkar ustvarili. Ime je Open_without_File_Path . Nato kliknite Zaženi.

  • Po pritisku na Spustite , boste opazili, da je zdaj odprta datoteka z imenom 1.
  • Tako odpremo delovni zvezek z imenom spremenljivke z uporabo VBA v Excelu.

🔎 Razčlenitev kode

 Sub Odprto_brez_datoteke_pot() 

⮚ Najprej podprocesu določimo ime, ki je Pod Odprto_brez_datoteke_pot()

 Dim wrkbk kot Delovni zvezek 

⮚ Izjavljamo wrkbk kot spremenljivka v vrsti delovnega zvezka

 Set wrkbk = Workbooks.Open(Ime datoteke:="1.xlsx") 

⮚ Odpremo datoteko iz matičnega imenika z imenom 1.xlsx .

 Končni podnaslov 

⮚ Na koncu končamo podproces te kode.

1.3 Odprite delovni zvezek samo za branje

Metoda je precej podobna prvi metodi, vendar bomo datoteko odprli v načinu samo za branje, kar pomeni, da ne bomo mogli spreminjati podatkov ali vrednosti v datoteki Excel.

Koraki

  • Datoteka, ki jo želimo odpreti, je shranjena v mapi dokumentov.
  • To je datoteka, ki jo želimo odpreti samo za branje.

  • Najprej pojdite v Razvijalec in kliknite na zavihek Visual Basic Če tega nimate, morate omogočite zavihek Razvijalec . Lahko pa tudi pritisnete ' Alt+F11 ' za odprtje urejevalnika Visual Basic.

  • Pojavilo se bo novo pogovorno okno, v katerem kliknite na Vstavite > Modul .

  • Nato v Modul vnesite naslednjo kodo:
 Sub Open_with_File_Read_Only() Dim wrkbk As Workbook Set wrkbk = Workbooks.Open("C:\Users\User\OneDrive\Documents\Sample", ReadOnly:=True) End Sub 
  • Nato zaprite Modul okno.
  • Nato pojdite v Oglejte si zavihek> Makroji .
  • Nato kliknite na Ogled makrov .

  • Po kliku View Macros izberite makroje, ki ste jih pravkar ustvarili. Ime je Open_with_File_Read_Only . Nato kliknite Spustite .

  • Po kliku na Spustite , bomo videli, da je datoteka zdaj odprta samo za branje, kot je prikazano v naslovni vrstici.

🔎 Razčlenitev kode

 Sub Odprto_z_datoteko_za_branje_samo() 

⮚ Najprej podprocesu določimo ime, ki je Open_with_File_Read_Only()

 Dim wrkbk kot Delovni zvezek 

⮚ Izjavljamo wrkbk kot spremenljivka v vrsti delovnega zvezka

 Set wrkbk = Workbooks.Open("C:\Users\User\OneDrive\Documents\Sample", ReadOnly:=True) 

⮚ Datoteka se bo odprla iz določenega imenika in nastavljena bo samo za branje z zadnjim argumentom.

 Končni podnaslov 

⮚ Na koncu končamo podproces te kode.

Preberite več: Kako odpreti delovni zvezek samo za branje z Excelovim programom VBA

2. Uporaba polja za sporočila

Skoraj podobno kot pri prejšnji metodi lahko v Excelu odpremo datoteke s kodo VBA, vendar bomo v tem primeru vključili majhno okno za sporočila.

Koraki

  • Najprej pojdite v Razvijalec in kliknite na zavihek Visual Basic Če tega nimate, morate omogočite zavihek Razvijalec . Ali Lahko tudi pritisnete ' Alt+F11' za odpiranje Urejevalnik Visual Basic .

  • Pojavilo se bo novo pogovorno okno, v katerem kliknite na Vstavite > Modul .

  • Nato v Modul vnesite naslednjo kodo:
 Sub Open_File_with_Messege_Box() Dim path As String: path = "C:\Users\User\OneDrive\Documents\Sample.xlsx" If Dir(path) "" Then Workbooks.Open (path) MsgBox "The File Opened Successfully" Else MsgBox "Opening of the File Failed" End If End Sub 

  • Nato zaprite Modul okno.
  • Nato pojdite v Oglejte si zavihek> Makroji .
  • Nato kliknite na Ogled makrov .

  • Po kliku na Prikaži makroje, izberite makre, ki ste jih pravkar ustvarili. Ime je Odpri_datoteko_z_mesege_box . Nato kliknite Spustite .

  • Nato se prikaže opozorilno okno, ki prikazuje, da Datoteka se je uspešno odprla .
  • Nato kliknite V REDU .

  • Nato bomo videli, da je datoteka zdaj odprta.

  • Nato poskušamo kodo nekoliko spremeniti.
  • Ime datoteke spremenimo v Vzorec10 in dejansko ni datoteke z imenom Vzorec10 v mapi z dokumenti.

  • Nato smo Spustite kodo še enkrat, in v oknu s sporočilom je napisano Odpiranje datoteke ni uspelo .
  • Kliknite . V REDU po tem.

🔎 Razčlenitev kode

 Sub Odpri_datoteko_z_mesege_boxom() 

⮚ Najprej podprocesu določimo ime, ki je Open_with_File_Read_Only()

 Dim path As String: 

⮚ Izjavljamo wrkbk kot spremenljivko v vrsti delovnega zvezka

 Če Dir(pot) "" Potem Delovne knjige.Odpri (pot) 
 MsgBox "Datoteka se je uspešno odprla" Drugače 

⮚ Ta vrstica bo preverila, ali je datoteka z imenom Vzorec na voljo v imeniku ali ne, Če je datoteka tam, jo bo odprla in hkrati prikazala sporočilo.

 MsgBox "Odpiranje datoteke ni uspelo" 

⮚ Če ni datoteke z imenom Vzorec v imeniku, bo to sporočilo poslano.

 Konec Če 

⮚ Na koncu končamo podproces te kode.

 Končni podnaslov 

⮚ Na koncu končamo podproces te kode.

Preberite več: Kako odpreti delovni zvezek in zagnati makro s programom VBA (4 primeri)

3. Uporaba dialoškega okna za odpiranje datoteke

Izvleček imenika lokacije datoteke in njihov vsakokratni uvoz v kodo VBA je precej okoren. Da bi rešili to težavo, bomo pokazali, kako lahko uporabite pogovorno okno za izbiro datoteke iz poljubnega imenika.

Koraki

  • Zdaj bomo datoteko odprli v pogovornem oknu raziskovalca datotek.
  • Najprej pojdite v Razvijalec in kliknite na zavihek Visual Basic Če tega nimate, morate omogočite zavihek Razvijalec . Ali Lahko tudi pritisnete ' Alt+F11' za odpiranje Urejevalnik Visual Basic .

  • Pojavilo se bo novo pogovorno okno, v katerem kliknite na Vstavite > Modul .

  • Nato v Modul vnesite naslednjo kodo:
 Sub Open_File_with_Dialog_Box() Dim Dbox As FileDialog Dim File_Path As String Dim wrkbk As Workbook Set Dbox = Application.FileDialog(msoFileDialogFilePicker) Dbox.Title = "Choose and Open " & FileType Dbox.Filters.Clear Dbox.Show If Dbox.SelectedItems.Count = 1 Then File_Path = Dbox.SelectedItems(1) End If Set wrkbk = Workbooks.Open(Filename:=File_Path) End Sub 
  • Nato zaprite Modul okno.
  • Nato pojdite v Oglejte si zavihek> Makroji .
  • Nato kliknite na Ogled makrov .

  • Po kliku na Prikaži makroje, izberite makre, ki ste jih pravkar ustvarili. Ime je Odpri_datoteko_z_dialog_oknom . Nato kliknite Spustite .

  • Nato se odpre novo okno. V pogovornem oknu Raziskovalec datotek in izberite Vzorec in kliknite V REDU .

  • Nato je datoteka z imenom Vzorec odprto.
  • Tako odpremo delovni zvezek z imenom spremenljivke z uporabo VBA v Excelu.

🔎 Razčlenitev kode

 Pod Odpri_datoteko_z_Dialog_oknom() 

⮚ Najprej podprocesu določimo ime, ki je Pod Odpri_datoteko_z_Dialog_oknom()

 Dim Dbox kot FileDialog 

⮚ Izjavljamo Dbox kot spremenljivko v FileDialog vrsta

 Dim File_Path kot niz 

⮚ Izjavljamo Pot do datoteke (File_Path) kot spremenljivko v Pot do datoteke (File_Path) Kot Niz vrsta

 Set Dbox = Application.FileDialog(msoFileDialogFilePicker) Dbox.Title = "Choose and Open " & FileType 

⮚ V prvi vrstici se prikaže pogovorno okno. Naslednja vrstica označuje ime pogovornega okna in vrsto datoteke.

Dbox.Title nastavi naslov pogovornega okna. in Vrsta datoteke nastavite vrsto datoteke.

 Dbox.Filtri.Clear 

Dbox.Filtri.Clear izbriše vse prejšnje filtre, ki so bili uporabljeni v polju diaog

 Dbox.Show 

Dbox.Show bo pogovorno okno prikazano v datoteki.

⮚ Ta vrstica bo določila, ali je uporabnik izbral več kot eno datoteko ali ne. Če uporabnik izbere več kot eno datoteko, se celoten postopek ustavi.

 Končni podnaslov 

⮚ Na koncu končamo podproces te kode.

Preberite več: Kako odpreti mapo in izbrati datoteko z uporabo programa Excel VBA (4 primeri)

4. Uporaba lastnosti Workbook.Add

V nasprotju s prejšnjimi metodami bomo ustvarili novo Excelovo datoteko v vnaprej določenem imeniku, nato pa jo bomo odprli z uporabo Delovni zvezek. Dodaj lastnost.

Koraki

  • Najprej pojdite v Razvijalec in kliknite na zavihek Visual Basic Če tega nimate, morate omogočite zavihek Razvijalec . Ali Lahko tudi pritisnete ' Alt+F11' za odpiranje Urejevalnik Visual Basic .

  • Pojavilo se bo novo pogovorno okno, v katerem kliknite na Vstavite > Modul .

Nato v Modul vnesite naslednjo kodo:

 Sub Open_File_with_Add_Property() Dim File_Path As String: File_Path = "C:\Users\User\OneDrive\Documents\Sample.xlsx" Dim wb As Workbook Set wb = Workbooks.Add(File_Path) End Sub 
  • Nato zaprite Modul okno.
  • Nato pojdite v Oglejte si zavihek> Makroji .
  • Nato kliknite na Ogled makrov .

  • Po kliku na Prikaži makroje, izberite makre, ki ste jih pravkar ustvarili. Ime je Odpri_datoteko_s_vsebino_Dodaj_lastnost . Nato kliknite Spustite .

  • Po kliku na Teči, boste opazili, da je zdaj ustvarjena in odprta nova datoteka.

🔎 Razčlenitev kode

⮚ Najprej podprocesu določimo ime, ki je Sub Odprta_datoteka_z_Dodaj_lastnost()

⮚ Nato razglasimo Pot do datoteke (File_Path) spremenljivko kot Niz vrsta.

 Dim File_Path As String: File_Path = "C:\Users\User\OneDrive\Documents\Sample.xlsx" 

⮚ In nastavite Pot do datoteke (File_Path) spremenljivko na lokacijo datoteke.

 Dim wb kot Delovni zvezek 

⮚ Izjavljamo wb kot spremenljivko v Delovni zvezek vrsta.

 Set wb = Delovne knjige.Add(File_Path) 

⮚ Delovni zvezek se nato doda iz imenika, shranjenega v Pot do datoteke (File_Path) lokacijo z uporabo Delovni zvezek.Dodaj lastnost.

 Končni podnaslov 

⮚ Na koncu končamo podproces te kode.

Preberite več: [Popravljeno!] Odpiranje metode predmetnih delovnih zvezkov ni uspelo (4 rešitve)

Zaključek

Če povzamemo, na vprašanje, kako lahko z uporabo VBA odpremo delovne zvezke z imeni spremenljivk, tukaj odgovarjamo s 4 različnimi primeri. Makro VBA metoda zahteva predhodno S programom VBA povezane spletne strani znanje za razumevanje od začetka.

Za to nalogo je na voljo delovni zvezek z makri, ki ga lahko prenesete in v katerem lahko vadite te metode.

V razdelku s komentarji lahko postavite vprašanja ali povratne informacije. Kakršen koli predlog za izboljšanje Odlično skupnost bo zelo cenjena.

Hugh West je zelo izkušen trener Excela in analitik z več kot 10-letnimi izkušnjami v industriji. Po izobrazbi je diplomirani računovodstvo in finance ter magisterij poslovne administracije. Hugh ima strast do poučevanja in je razvil edinstven pristop k poučevanju, ki ga je enostavno slediti in razumeti. Njegovo strokovno znanje o Excelu je pomagalo na tisoče študentom in strokovnjakom po vsem svetu, da so izboljšali svoje sposobnosti in se izkazali v karieri. Prek svojega bloga Hugh deli svoje znanje s svetom, ponuja brezplačne vadnice za Excel in spletno usposabljanje, ki posameznikom in podjetjem pomaga doseči njihov polni potencial.