Excel VBA GetOpenFileName

Existuje mnoho způsobů, jak otevřít jakýkoli soubor. Existuje však také několik způsobů, jak otevřít stejný soubor. Ve VBA máme různé funkce, pomocí kterých můžeme otevřít jakýkoli soubor. Můžeme otevřít soubor tím, že cestu souboru do kódu VBA, můžeme dokonce zaznamenat tento proces také. Nejlepší způsob je otevřít libovolný soubor ve VBA pomocí aplikace VBA GetOpenFileName . Jak už název napovídá, jedná se čistě o aplikaci pro otevření libovolného souboru ve VBA.

V jiných funkcích nebo aplikacích, které fungují na stejném principu, budeme možná muset zkopírovat soubor souboru oddělený zpětnými lomítky, přičemž mezi zpětným lomítkem bude zachován název složky a přesné mezery. Možná bude také nutné zadat přesný název souboru spolu s příponou, kterou chceme otevřít. Ale ve VBA GetOpenFileName stačí vybrat soubor z umístění. Poskytne pole, odkud můžeme procházet soubor, kde je uložen, a přípona souboru bude také opravena.

Syntaxe GetOpenFilename ve VBA

Podívejme se pod vzorec pro GetOpenFilename v Excel VBA.

Níže je uveden argument aplikace VBA GetOpenFileName.

  • FileFilter - Zde můžeme definovat, jaký typ souboru chceme vidět. Pokud například uvedeme „Excel Files, *. Xlsx“, najde a zobrazí všechny excel soubory ve formátu .xlsx. Pokud uvedeme „soubory PDF, *. Pdf“, vyhledá a zobrazí pouze všechny soubory PDF.
  • FilterIndex - Tímto způsobem můžeme uživateli umožnit omezit výběr typu souboru. Můžeme určit počet souborů, které musíme zobrazit.
  • Název - Zobrazuje vybraný soubor do názvu dialogového okna.
  • ButtonText - Je to pouze pro uživatele MacBooků.
  • MultiSelect - Pokud vybereme více souborů, bude to PRAVDA, jinak to bude FALSE, což je stejně výchozí hodnota.

Jak otevřít soubor pomocí GetOpenFileName v Excel VBA?

Níže jsou uvedeny různé příklady otevření souboru pomocí aplikace GetOpenFileName v Excelu VBA.

Tuto šablonu Excel VBA GetOpenFileName si můžete stáhnout zde - VBA GetOpenFileName Excel Template

Excel VBA GetOpenFileName - Příklad # 1

V tomto příkladu uvidíme, jak nejprve otevřít soubor Excel. Chcete-li použít GetOpenFileName v Excel VBA, postupujte takto:

Krok 1: Přejděte do nabídky Vložit a kliknutím na Modul ji otevřete.

Krok 2: Napište podkategorii VBA Getopenfilename nebo vyberte libovolný jiný název podle svého výběru pro definování podkategorie.

Kód:

 Sub OpenFile () End Sub 

Krok 3: Nyní definujte proměnnou a přiřaďte jí řetězec, jak je ukázáno níže. Výběr řetězce, protože vybereme nebo vybereme název souboru.

Kód:

 Sub OpenFile () Dim A jako String End Sub 

Krok 4: Nyní v definované proměnné A použijte aplikaci, jak je ukázáno níže.

Krok 5: Nyní vyhledejte a vyberte GetOpenFileName z aktivovaného seznamu aplikací, jak je ukázáno níže.

Krok 6: Nyní použijte MsgBox, abychom získali umístění souboru, který vybereme.

Kód:

 Sub OpenFile () Dim A jako řetězec A = Application.GetOpenFilename () MsgBox A End Sub 

Krok 7: Nyní sestavte kód stisknutím funkční klávesy F5 a spusťte jej kliknutím na tlačítko Přehrát. Nyní vyhledejte soubor, který chceme vybrat. Zde jsme sledovali cestu a vybrali excel soubor pojmenovaný jako testovací soubor, který je obvykle ve formátu .xlsx . Klikněte na Otevřít.

Ukáže cestu k souboru, který jsme vybrali dříve, do pole zprávy, jak je ukázáno níže.

Krok 8: Nyní podle syntaxe použijeme Filefilter do závorky aplikace GetOpenFilename. Jak víme, je určen pro výběr typu souboru, který chceme otevřít. Proto do ní vložíme „Excel Files“, jak je ukázáno níže.

Kód:

 Sub OpenFile () Dim A jako řetězec A = Application.GetOpenFilename (Filefilter: = "Excel soubory") MsgBox A End Sub 

Krok 9: Nyní vložte příponu souboru Excel, kterou jsme vybrali dříve. Bylo to „ .xlsx “, takže si to také ponecháme v FileFilter.

Kód:

 Sub OpenFile () Dim A jako řetězec A = Application.GetOpenFilename (Filefilter: = "Excel soubory, * .xlsx") MsgBox A End Sub 

Krok 10: Nyní znovu spustíme celý kód. Ve složce procházení získáme pouze soubory Excel, které jsou k dispozici ve složce, kterou jsme dříve procházeli.

A pokud se pokusíme vidět jakýkoli jiný formát souboru nebo příponu v souborech Excelu, pak se znovu zobrazí pouze soubory Excelu.

Excel VBA GetOpenFileName - Příklad # 2

Stejným způsobem můžeme vidět otevřený název souboru s příponou „ .pdf “. Chcete-li použít GetOpenFileName v Excel VBA, postupujte takto:

Krok 1: Nyní znovu napište kód, který jsme viděli v příkladu 1.

Kód:

 Sub OpenFile1 () Dim A jako řetězec A = Application.GetOpenFilename () MsgBox A End Sub 

Krok 2: Zavede nás do stejného okna nebo přejděte do stejné složky. Nyní vyberte libovolný ze souborů PDF a klikněte na Otevřít.

Poskytne nám cestu k vybranému souboru.

Krok 3: Nyní, abyste získali vybraný soubor PDF, v syntaxi FileFilter napište „PDF Files“ místo „Excel Files“ a vyberte příponu PDF, která je „ .pdf “, jak je ukázáno níže.

Kód:

 Sub OpenFile1 () Dim A jako řetězec A = Application.GetOpenFilename (Filefilter: = "Soubory PDF, * .pdf") MsgBox A End Sub 

Krok 4: Znovu sestavte kód a spusťte jej. Dostaneme složku prohlížeče k otevření souborů. V tom dostaneme pouze soubory s příponou „ .pdf “, jak je ukázáno níže.

A pokud se pokusíte filtrovat jiné formáty souborů, znovu nám to umožní zobrazit pouze soubory PDF, jak je ukázáno níže.

A pokud nevybereme žádný soubor a neukončíme okno, zobrazí se výchozí zpráva, která je False .

Výhody aplikace Excel VBA GetOpenFileName

  • VBA GetOpenFileName nám pomáhá přímo otevřít soubor bez vložení cesty tohoto souboru v kódu VBA.
  • Nemusíme měnit cestu k souborům vícekrát.
  • Procházení a výběr souborů prostřednictvím této složky je stejně snadné jako otevření složky do složky.

Nevýhody Excel VBA GetOpenFileName

  • Pokud dojde ke změně, musíme změnit příponu souboru, který chceme otevřít.

Co si pamatovat

  • Změňte příponu souboru, kdykoli potřebujete otevřít jinou verzi souboru.
  • Message Box se zprávou jako FALSE je výchozí zpráva, která se objeví pokaždé, když nevybereme žádný soubor k otevření.
  • Takový proces nelze vytvořit pomocí funkce Záznam makra.
  • Nezapomeňte soubor uložit ve formátu Excel s makrem. Takto napsaný kód VBA bude zachován.

Doporučené články

Toto je průvodce VBA GetOpenFileName. Zde diskutujeme o tom, jak otevřít soubor pomocí aplikace GetOpenFileName v Excelu pomocí kódu VBA spolu s několika praktickými příklady a stahovatelnou šablonou Excel. Můžete si také prohlédnout naše další doporučené články -

  1. Najít a nahradit VBA (příklady)
  2. Skupinové listy v Excelu
  3. Sešit VBA
  4. Odkazy na buňky v Excelu

Kategorie: