Excel VBA GetOpenFileName

Existuje mnoho spôsobov, ako otvoriť akýkoľvek súbor. Existuje však aj niekoľko spôsobov, ako otvoriť ten istý súbor. Vo VBA máme rôzne funkcie, pomocou ktorých môžeme otvoriť ľubovoľný súbor. Môžeme otvoriť súbor umiestnením cestu k súboru v kóde VBA, môžeme dokonca zaznamenať aj tento proces. Najlepším spôsobom je otvoriť akýkoľvek súbor vo VBA pomocou aplikácie VBA GetOpenFileName . Ako už názov napovedá, ide výlučne o aplikáciu na otvorenie ľubovoľného súboru vo VBA.

V iných funkciách alebo aplikáciách, ktoré fungujú na rovnakom princípe, možno bude potrebné skopírovať súbor súboru oddelený spätnými lomkami, pričom sa musí zachovať názov priečinka a presné medzery medzi spätným lomítkom. Možno bude potrebné zadať presný názov súboru spolu s príponou, ktorú chceme otvoriť. Ale vo VBA GetOpenFileName stačí vybrať súbor z umiestnenia. Poskytne pole, odkiaľ môžeme prehľadávať súbor, v ktorom je uložený, a prípona súboru bude tiež opravená.

Syntax GetOpenFilename vo VBA

Pozrime sa na vzorec GetOpenFilename v Excel VBA.

Nižšie je uvedený argument aplikácie VBA GetOpenFileName.

  • FileFilter - V tomto môžeme definovať, aký typ súboru chceme vidieť. Ak napríklad spomenieme súbory „Excel Files, *. Xlsx“, nájde a zobrazí všetky vynikajúce súbory vo formáte .xlsx. Ak spomenieme „súbory PDF, *. Pdf“, nájde a zobrazí iba všetky súbory PDF.
  • FilterIndex - Týmto môžeme povoliť užívateľovi obmedziť výber typu súboru. Môžeme určiť počet súborov, ktoré musíme zobraziť.
  • Názov - Zobrazí vybraný súbor v nadpise dialógového okna.
  • ButtonText - Je určený iba pre používateľov MacBookov.
  • MultiSelect - Ak vyberieme viac súborov, bude to PRAVDA, inak to bude FALSE, čo je vlastne predvolená hodnota.

Ako otvoriť súbor pomocou GetOpenFileName v Excel VBA?

Nižšie sú uvedené rôzne príklady otvorenia súboru pomocou aplikácie GetOpenFileName v Exceli VBA.

Túto šablónu Excel VBA GetOpenFileName si môžete stiahnuť tu - VBA GetOpenFileName Excel Template

Excel VBA GetOpenFileName - Príklad č. 1

V tomto príklade uvidíme, ako najskôr otvoriť súbor programu Excel. Ak chcete použiť funkciu GetOpenFileName v programe Excel VBA, postupujte podľa nasledujúcich krokov:

Krok 1: Prejdite do ponuky Vložiť a kliknutím na modul ho otvorte.

Krok 2: Napíšte podkategóriu VBA Getopenfilename alebo vyberte ľubovoľný iný názov podľa vášho výberu a definujte podkategóriu.

kód:

 Sub OpenFile () End Sub 

Krok 3: Teraz definujte premennú a zadajte jej reťazec, ako je uvedené nižšie. Výber reťazca, pretože vyberieme alebo vyberieme názov súboru.

kód:

 Sub OpenFile () Dim A ako reťazec End Sub 

Krok 4: Teraz v definovanej premennej A použite aplikáciu, ako je uvedené nižšie.

Krok 5: Teraz vyhľadajte a vyberte GetOpenFileName z aktivovaného zoznamu aplikácií, ako je uvedené nižšie.

Krok 6: Teraz použite MsgBox, aby sme dostali umiestnenie súboru, ktorý vyberieme.

kód:

 Sub OpenFile () Dim A ako Reťazec A = Application.GetOpenFilename () MsgBox A End Sub 

Krok 7: Teraz zostavte kód stlačením funkčného klávesu F5 a spustite ho kliknutím na tlačidlo Prehrať. Teraz vyhľadajte súbor, ktorý chceme vybrať. Tu sme nasledovali cestu a vybrali sme excelovský súbor s názvom Testovací súbor, ktorý je zvyčajne vo formáte .xlsx . Kliknite na Otvoriť.

Ukáže cestu k súboru, ktorý sme vybrali predtým, do okna správy, ako je uvedené nižšie.

Krok 8: Teraz podľa syntaxe použijeme Filefilter do zátvorky aplikácie GetOpenFilename . Ako vieme, je určený na výber typu súboru, ktorý chceme otvoriť. Preto doň umiestnime „Excel Files“, ako je to znázornené nižšie.

kód:

 Sub OpenFile () Dim A ako reťazec A = Application.GetOpenFilename (Filefilter: = "Excel súbory") MsgBox A End Sub 

Krok 9: Teraz vložte príponu súboru Excel, ktorú sme vybrali skôr. Bolo to „ .xlsx “, takže to budeme uchovávať aj v FileFilter.

kód:

 Sub OpenFile () Dim A ako reťazec A = Application.GetOpenFilename (Filefilter: = "Excel súbory, * .xlsx") MsgBox A End Sub 

Krok 10: Teraz znova spustíme celý kód. V priečinku prehľadávania získame iba súbory programu Excel, ktoré sú k dispozícii v priečinku, ktorý sme predtým prehliadali.

Ak sa pokúsime v rozbaľovacej ponuke Excelu zobraziť akýkoľvek iný formát alebo príponu súboru, znova sa zobrazia iba súbory Excel.

Excel VBA GetOpenFileName - Príklad č. 2

Rovnakým spôsobom môžeme vidieť otvorený názov súboru s príponou „ .pdf “. Ak chcete použiť funkciu GetOpenFileName v programe Excel VBA, postupujte podľa nasledujúcich krokov:

Krok 1: Teraz znova napíšte kód, ktorý sme videli v príklade 1.

kód:

 Sub OpenFile1 () Dim A ako reťazec A = Application.GetOpenFilename () MsgBox A End Sub 

Krok 2: Zavedie nás do toho istého okna alebo prejde do toho istého priečinka. Teraz vyberte ktorýkoľvek zo súborov PDF a kliknite na Otvoriť.

Poskytne nám cestu k vybranému súboru.

Krok 3: Teraz, ak chcete získať vybratý súbor PDF, v syntaxi FileFilter napíšte „Súbory PDF“ namiesto „Súbory Excel“ a vyberte príponu PDF, ktorá je „ .pdf “, ako je to znázornené nižšie.

kód:

 Sub OpenFile1 () Dim A ako reťazec A = Application.GetOpenFilename (Filefilter: = "Súbory PDF, * .pdf") MsgBox A End Sub 

Krok 4: Znovu zostavte kód a spustite ho. Dostaneme priečinok prehliadača na otvorenie súborov. V tomto prípade dostaneme iba súbory s príponou „ .pdf “, ako je uvedené nižšie.

A ak sa pokúsite filtrovať iné formáty súborov, znova nám to umožní zobraziť iba súbory PDF, ako je uvedené nižšie.

A ak nevyberieme žiadny súbor a neukončíme okno, zobrazí sa predvolená správa, ktorá je False .

Výhody programu Excel VBA GetOpenFileName

  • VBA GetOpenFileName nám pomáha priamo otvoriť súbor bez vloženia cesty tohto súboru do kódu VBA.
  • Cestu k súborom nemusíme meniť viackrát.
  • Prehliadanie a výber súborov v tomto priečinku je rovnako jednoduchý ako otvorenie priečinka v tomto priečinku.

Nevýhody Excel VBA GetOpenFileName

  • Ak dôjde k zmene, musíme zmeniť príponu súboru, ktorý chceme otvoriť.

Čo je potrebné pamätať

  • Zmeňte príponu súboru vždy, keď potrebujete otvoriť inú verziu súboru.
  • Message Box so správou ako FALSE je predvolená správa, ktorá sa zobrazí vždy, keď nevyberieme žiadny súbor na otvorenie.
  • Takýto proces sa nedá vytvoriť pomocou funkcie Záznam makra.
  • Nezabudnite uložiť súbor vo formáte Excel s povoleným makrom. Takto napísaný kód VBA sa zachová.

Odporúčané články

Toto je sprievodca programom VBA GetOpenFileName. Tu diskutujeme o tom, ako otvoriť súbor pomocou aplikácie GetOpenFileName v Exceli pomocou kódu VBA spolu s niekoľkými praktickými príkladmi a stiahnuteľnou šablónou Excel. Môžete si tiež prečítať naše ďalšie navrhované články -

  1. Nájsť a nahradiť VBA (príklady)
  2. Skupinové pracovné hárky v Exceli
  3. Zošit VBA
  4. Odkazy na bunky v Exceli

Kategórie: