Kuinka avata työkirja muuttujan nimellä Excel VBA: lla muuttujan nimellä

  • Jaa Tämä
Hugh West

Luonnollisesti meidän on ehkä avattava tiedosto vanhemmasta Excel-tiedostosta VBA:n avulla eri hakemistossa. Mutta samalla meillä on erilaisia kriteerejä myös siitä, miten haluamme avata työkirjan. Jos olet utelias tietämään, miten voit avata työkirjan muuttujan nimellä, niin tämä artikkeli voi olla sinulle hyödyllinen. Tässä artikkelissa keskustelemme siitä, miten voit avata työkirjan muuttujan nimellä.VBA:n käyttäminen Excelissä yksityiskohtaisten selitysten avulla.

Lataa harjoituskirja

Lataa tämä harjoituskirja alta.

Avaa työkirja muuttujan nimellä VBA.xlsm:n avulla.

Näyte.xlsx

4 helppoa tapaa avata työkirja muuttujan nimellä VBA: n avulla Excelissä

Käytämme esittelyssä alla olevaa tietokokonaisuutta. Meillä on useiden tuotteiden tuotetiedot ja niiden tunnukset.Tämä on esimerkkitiedosto, jonka avaamme VBA-koodilla.

1. Työkirja.Open-ominaisuuden käyttäminen

Käyttämällä Workbook.Open ominaisuuden avulla voimme avata tiedostoja mainitsemalla hakemiston tai jättämällä sijainnin mainitsematta. Voimme myös tehdä avatusta tiedostosta vain lukukäyttöisen.

1.1 Avaa työkirja mainitsemalla tiedostopolku

Seuraavassa menetelmässä käytämme menetelmää Workbook.Open-ominaisuus voit avata tiedoston suoraan mainitusta tiedostohakemistosta. Riippumatta siitä, missä tiedosto sijaitsee, voimme avata sen helposti.

Askeleet

  • Meillä on dokumentit-kansioon tallennettu tiedosto, joka meidän on avattava.
  • Käytämme tiedoston nimeä muuttujana ja avaamme tiedoston pienellä VBA-makrolla.
  • Tiedoston tarkka tiedostohakemisto näkyy alla olevassa ominaisuusikkunassa.

  • Mene ensin osoitteeseen Kehittäjä välilehti ja klikkaa Visual Basic . Jos sinulla ei ole sitä, sinun on oltava ota Developer-välilehti käyttöön Tai voit myös painaa ' Alt+F11' avaamista varten Visual Basic Editor .

  • Tämän jälkeen avautuu uusi valintaikkuna, jossa napsauta valintaruutua Lisää > Moduuli .

  • Seuraavaksi Moduuli editor-ikkunaan seuraava koodi:
 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 

  • Sulje sitten Moduuli ikkuna.
  • Sen jälkeen siirry osoitteeseen Näytä tab> Makrot .
  • Napsauta sitten Näytä makrot .

  • Kun olet napsauttanut Näytä makrot, valitse äsken luodut makrot. Niiden nimi on tässä tapauksessa Open_with_File_Path Napsauta sitten Suorita .

  • Sen jälkeen Näyte tiedosto avataan.

🔎 Koodin erittely

 Sub Open_with_File_Path() 

⮚ Ensin annamme aliproseduurille nimen, joka on Open_with_File_Path .

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

⮚ Sitten laitamme tiedoston sijainnin tiedostoon File_Path muuttuja

 Dim wrkbk As Workbook 

⮚ Sitten julistamme muuttujamme wrkbk , jonka tyyppi on työkirja.

 Set wrkbk = Workbooks.Open(Tiedostonimi:=tiedostopolku) 

⮚ Sitten avaamme tiedoston, joka on nimetty kohdassa File_Path hakemistomuuttuja ja aseta tiedosto nimellä wrkbk muuttuja.

 End Sub 

⮚ Lopuksi lopetamme tämän koodin aliprosessin.

Lue lisää: Työkirjan avaaminen polusta Excel VBA: n avulla (4 esimerkkiä)

1.2 Avaa työkirja mainitsematta tiedostopolkua

Seuraavassa menetelmässä avaamme tiedoston vanhempien kansiosta, johon päätiedosto on tallennettu. Tiedosto voidaan avata mainitsematta mitään sijaintia koodissa. Tiedoston on vain oltava samassa kansiossa kuin vanhempien kansio.

Askeleet

  • Meillä on eri tiedosto, joka on tallennettu samaan hakemistoon, johon emo-Excel-tiedosto on nyt tallennettu.
  • Tiedoston nimi on 1.

  • Mene ensin osoitteeseen Kehittäjä välilehti ja klikkaa Visual Basic . Jos sinulla ei ole sitä, sinun on oltava ota Developer-välilehti käyttöön . tai Voit myös painaa ' Alt+F11 ' avaamista varten Visual Basic Editor .

  • Sitten tulee uusi valintaikkuna, napsauta siinä valintaikkunassa kohtaa Lisää > Moduuli .

  • Seuraavaksi Moduuli editor-ikkunaan seuraava koodi:
 Sub Open_without_File_Path() Dim wrkbk As Workbook Set wrkbk = Workbooks.Open(Tiedostonimi:="1.xlsx") End Sub 

  • Sulje sitten Moduuli ikkuna.
  • Sen jälkeen siirry osoitteeseen Näytä tab> Makrot .
  • Napsauta sitten Näytä makrot .

  • Kun olet napsauttanut Näytä makrot, valitse äsken luodut makrot. Niiden nimi tässä on Open_without_File_Path . Valitse sitten Suorita.

  • Kun olet painanut Suorita , huomaat, että tiedosto nimeltä 1 on nyt auki.
  • Ja näin avaamme työkirjan, jossa on muuttujan nimi, käyttämällä VBA:ta Excelissä.

🔎 Koodin erittely

 Sub Open_without_File_Path() 

⮚ Ensin annamme aliproseduurille nimen, joka on Sub Open_without_File_Path()

 Dim wrkbk As Workbook 

⮚ Me julistamme wrkbk muuttujana Työkirjan tyyppi

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

⮚ Avataan tiedosto emohakemistosta nimeltä 1.xlsx .

 End Sub 

⮚ Lopuksi lopetamme tämän koodin aliprosessin.

1.3 Työkirjan avaaminen vain lukemisena

Menetelmä on melko samanlainen kuin ensimmäinen menetelmä, mutta tässä avaamme tiedoston vain lukutilassa, mikä tarkoittaa, että emme voi muuttaa mitään Excel-tiedoston tietoja tai arvoja.

Askeleet

  • Tiedosto, jonka haluamme avata, on tallennettu asiakirjakansioon.
  • Ja tämä on tiedosto, jonka haluamme avata vain lukuoikeuksin.

  • Mene ensin osoitteeseen Kehittäjä välilehti ja klikkaa Visual Basic . Jos sinulla ei ole sitä, sinun on oltava ota Developer-välilehti käyttöön Tai voit myös painaa ' Alt+F11 ' Visual Basic -editorin avaamiseksi.

  • Tämän jälkeen avautuu uusi valintaikkuna, jossa napsauta valintaruutua Lisää > Moduuli .

  • Seuraavaksi Moduuli editor-ikkunaan seuraava koodi:
 Sub Open_with_File_Read_Only() Dim wrkbk As Workbook Set wrkbk = Workbooks.Open("C:\Users\User\OneDrive\Documents\Sample", ReadOnly:=True) End Sub 
  • Sulje sitten Moduuli ikkuna.
  • Sen jälkeen siirry osoitteeseen Näytä tab> Makrot .
  • Napsauta sitten Näytä makrot .

  • Kun olet napsauttanut Näytä makrot, valitse äsken luodut makrot. Niiden nimi tässä on Open_with_File_Read_Only (Avaa_tiedoston_lukemisella) Napsauta sitten Suorita .

  • Kun olet napsauttanut Suorita , näemme, että tiedosto on nyt avattu vain lukuoikeudella, kuten otsikkorivillä näkyy.

🔎 Koodin erittely

 Sub Open_with_File_Read_Only() 

⮚ Ensin annamme aliproseduurille nimen, joka on Open_with_File_Read_Only()

 Dim wrkbk As Workbook 

⮚ Me julistamme wrkbk muuttujana Työkirjan tyyppi

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

⮚ Tämän jälkeen tiedosto avataan määritetystä hakemistosta, ja tiedosto asetetaan seuraavasti Vain luku viimeisellä argumentilla.

 End Sub 

⮚ Lopuksi lopetamme tämän koodin aliprosessin.

Lue lisää: Työkirjan avaaminen vain luettavaksi Excel VBA: lla

2. Viestikentän käyttäminen

Melkein samanlainen kuin edellisessä menetelmässä, voimme avata tiedostoja VBA-koodin avulla täällä Excelissä, mutta tässä tapauksessa sisällytämme tähän pienen viestiruudun.

Portaat

  • Mene ensin osoitteeseen Kehittäjä välilehti ja klikkaa Visual Basic . Jos sinulla ei ole sitä, sinun on oltava ota Developer-välilehti käyttöön . tai Voit myös painaa ' Alt+F11' avaamista varten Visual Basic Editor .

  • Tämän jälkeen avautuu uusi valintaikkuna, jossa napsauta valintaruutua Lisää > Moduuli .

  • Seuraavaksi Moduuli editor-ikkunaan seuraava koodi:
 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 "Tiedosto avattiin onnistuneesti" Else MsgBox "Tiedoston avaaminen epäonnistui" End If End Sub 

  • Sulje sitten Moduuli ikkuna.
  • Sen jälkeen siirry osoitteeseen Näytä tab> Makrot .
  • Napsauta sitten Näytä makrot .

  • Kun olet napsauttanut Näytä makrot, valitse äsken luodut makrot. Niiden nimi on tässä tapauksessa Open_File_with_Messege_Box (Avaa_tiedosto_Messege_laatikolla) Napsauta sitten Suorita .

  • Sitten saimme varoituslaatikon, joka näyttää, että... Tiedosto avattiin onnistuneesti .
  • Napsauta sitten OK .

  • Sitten näemme, että tiedosto on nyt auki.

  • Sitten yritämme muuttaa koodia hieman.
  • Muutamme tiedoston nimen muotoon Näyte10 , eikä itse asiassa ole olemassa tiedostoa nimeltä Näyte10 asiakirjakansiossa.

  • Sitten me Suorita koodi uudelleen, ja näyttöön tulee viesti, jossa sanotaan, että Tiedoston avaaminen epäonnistui .
  • Klikkaa OK tämän jälkeen.

🔎 Koodin erittely

 Sub Open_File_with_Messege_Box() 

⮚ Ensin annamme aliproseduurille nimen, joka on Open_with_File_Read_Only()

 Dim path As String: 

⮚ Me julistamme wrkbk muuttujana Työkirjan tyyppi

 If Dir(path) "" Then Workbooks.Open (path) 
 MsgBox "Tiedosto avattiin onnistuneesti" Else 

⮚ Tämä rivi tarkistaa, onko tiedosto nimeltä Sample saatavilla hakemistossa vai ei, Jos tiedosto on siellä, se avaa tiedoston ja näyttää samalla viestin.

 MsgBox "Tiedoston avaaminen epäonnistui" 

⮚ Jos tiedostoa nimeltä Näyte hakemistossa, tämä viesti toimitetaan.

 End If 

⮚ Lopuksi lopetamme tämän koodin aliprosessin.

 End Sub 

⮚ Lopuksi lopetamme tämän koodin aliprosessin.

Lue lisää: Työkirjan avaaminen ja makron suorittaminen VBA: n avulla (4 esimerkkiä)

3. Valintaikkunan käyttö tiedoston avaamiseen

Tiedoston sijaintihakemiston poimiminen ja niiden tuominen joka kerta VBA-koodiin on melko hankalaa. Ongelman ratkaisemiseksi näytämme, miten voit käyttää valintaikkunaa tiedoston valitsemiseen mistä tahansa hakemistosta.

Askeleet

  • Nyt avaamme tiedoston File Explorer -valintaikkunassa.
  • Mene ensin osoitteeseen Kehittäjä välilehti ja klikkaa Visual Basic . Jos sinulla ei ole sitä, sinun on oltava ota Developer-välilehti käyttöön . tai Voit myös painaa ' Alt+F11' avaamista varten Visual Basic Editor .

  • Tämän jälkeen avautuu uusi valintaikkuna, jossa napsauta valintaruutua Lisää > Moduuli .

  • Seuraavaksi Moduuli editor-ikkunaan seuraava koodi:
 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 = "Valitse ja avaa " & 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 
  • Sulje sitten Moduuli ikkuna.
  • Sen jälkeen siirry osoitteeseen Näytä tab> Makrot .
  • Napsauta sitten Näytä makrot .

  • Kun olet napsauttanut Näytä makrot, valitse äsken luodut makrot. Niiden nimi on tässä tapauksessa Open_File_with_Dialog_Box -valintaikkuna Napsauta sitten Suorita .

  • Ja sitten avautuu uusi ikkuna. File explorer -valintaikkunassa ja valitse Näyte ja klikkaa OK .

  • Sitten tiedosto nimeltä Näyte avattu.
  • Ja näin avaamme työkirjan, jossa on muuttujan nimi, käyttämällä VBA:ta Excelissä.

🔎 Koodin erittely

 Sub Open_File_with_Dialog_Box() 

⮚ Ensin annamme aliproseduurille nimen, joka on Sub Open_File_with_Dialog_Box()

 Dim Dbox As FileDialog 

⮚ Me julistamme Dbox muuttujana FileDialog tyyppi

 Dim File_Path As String 

⮚ Me julistamme File_Path muuttujana File_Path Kuten Merkkijono tyyppi

 Set Dbox = Application.FileDialog(msoFileDialogFilePicker) Dbox.Title = "Valitse ja avaa " & FileType". 

⮚ Ensimmäiseltä riviltä tulee valintaikkuna. Seuraavalla rivillä ilmoitetaan valintaikkunan nimi ja tiedostotyyppi.

Dbox.Title määrittää valintaikkunan otsikon. ja FileType aseta tiedostotyyppi.

 Dbox.Filters.Clear 

⮚ The Dbox.Filters.Clear tyhjentää kaikki aiemmat suodattimet, joita on sovellettu diaog-ruutuun.

 Dbox.Show 

⮚ The Dbox.Show saa valintaikkunan näkymään tiedostossa.

⮚ Tällä rivillä määritetään, onko käyttäjä valinnut useamman kuin yhden tiedoston vai ei. Jos käyttäjä valitsee useamman kuin yhden tiedoston, koko menettely pysähtyy.

 End Sub 

⮚ Lopuksi lopetamme tämän koodin aliprosessin.

Lue lisää: Kuinka avata kansio ja valita tiedosto Excel VBA: n avulla (4 esimerkkiä)

4. Käyttämällä Workbook.Add-ominaisuutta

Edellisistä menetelmistä poiketen luomme uuden Excel-tiedoston ennalta määritettyyn hakemistoon ja avaamme sen sitten komennolla Työkirja. omaisuus.

Askeleet

  • Mene ensin osoitteeseen Kehittäjä välilehti ja klikkaa Visual Basic . Jos sinulla ei ole sitä, sinun on oltava ota Developer-välilehti käyttöön . tai Voit myös painaa ' Alt+F11' avaamista varten Visual Basic Editor .

  • Tämän jälkeen avautuu uusi valintaikkuna, jossa napsauta valintaruutua Lisää > Moduuli .

Seuraavaksi Moduuli editor-ikkunaan seuraava koodi:

 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 
  • Sulje sitten Moduuli ikkuna.
  • Sen jälkeen siirry osoitteeseen Näytä tab> Makrot .
  • Napsauta sitten Näytä makrot .

  • Kun olet napsauttanut Näytä makrot, valitse äsken luodut makrot. Niiden nimi on tässä tapauksessa Open_File_with_Add_Property (Avaa_tiedosto_lisäysominaisuudella) Napsauta sitten Suorita .

  • Kun olet napsauttanut Juokse, huomaat, että uusi tiedosto on nyt luotu ja avattu.

🔎 Koodin erittely

⮚ Ensin annamme aliproseduurille nimen, joka on Sub Open_File_with_Add_Property()

⮚ Sitten julistamme File_Path muuttuja kuin merkkijono tyyppi.

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

⮚ Ja aseta File_Path muuttuja tiedoston sijaintiin.

 Dim wb As Workbook 

⮚ Me julistamme wb muuttujana Työkirja tyyppi.

 Set wb = Workbooks.Add(File_Path) 

⮚ Työkirja lisätään sitten hakemistosta, joka on tallennettu tiedostoon File_Path sijainti käyttämällä Workbook.Add omaisuus.

 End Sub 

⮚ Lopuksi lopetamme tämän koodin aliprosessin.

Lue lisää: [Korjattu!] Kohteen työkirjojen avaaminen epäonnistui (4 ratkaisua)

Päätelmä

Yhteenvetona voidaan todeta, että kysymykseen siitä, miten voimme avata työkirjoja, joissa on muuttujien nimiä VBA:n avulla, vastataan tässä neljällä eri esimerkillä. VBA-makro menetelmä vaatii etukäteen VBA:han liittyvä tietoa ymmärtää tyhjästä.

Tätä ongelmaa varten on ladattavissa makroilla varustettu työkirja, jossa voit harjoitella näitä menetelmiä.

Voit vapaasti esittää kysymyksiä tai palautetta kommenttiosion kautta. Kaikki ehdotukset parempaan Exceldemy yhteisö on erittäin arvokas

Hugh West on erittäin kokenut Excel-kouluttaja ja analyytikko, jolla on yli 10 vuoden kokemus alalta. Hän on koulutukseltaan laskentatoimen ja rahoituksen kandidaatti sekä kauppatieteiden maisteri. Hughilla on intohimo opettamiseen, ja hän on kehittänyt ainutlaatuisen opetusmenetelmän, jota on helppo seurata ja ymmärtää. Hänen asiantuntemuksensa Excelistä on auttanut tuhansia opiskelijoita ja ammattilaisia ​​maailmanlaajuisesti parantamaan taitojaan ja menestymään urallaan. Blogissaan Hugh jakaa tietämyksensä maailman kanssa tarjoamalla ilmaisia ​​Excel-opetusohjelmia ja verkkokoulutusta auttaakseen yksilöitä ja yrityksiä saavuttamaan täyden potentiaalinsa.