VBA GetOpenFilename | Jak používat metodu GetOpenFilename ve VBA?

GetOpenFilename je metoda, která je také atributem FSO, tato metoda se používá ve VBA k vyhledání určitého souboru s názvem souboru a jeho výběru, důležitým faktorem v této metodě je cesta k názvu souboru poskytnutého k jeho otevření, můžeme ve funkci předat cestu k názvu souboru nebo můžeme požádat uživatele, aby předložil cestu k souboru a vybral ji.

Aplikace Excel VBA. GetOpenFilename

Existují situace, kdy potřebujeme získat přístup ke konkrétnímu názvu souboru, což je možné pomocí kódování VBA. Abychom měli přístup k souboru, musíme zmínit také cestu ke složce a název souboru spolu s jeho příponou. Aby bylo možné získat název souboru, mnoho kodérů poskytne vstupní pole VBA jako možnosti pro zadání cesty k souboru a názvu souboru. To však není dobrá volba, protože když před uživatele zadáte vstupní pole, ne vždy si pamatují cestu k souboru, zpětná lomítka k oddělení jedné složky od jiné složky, názvy souborů a přípony souborů . Díky tomu je vstup od uživatele messier a na konci bude vše pokazeno, i když dojde k chybě malého znaku mezery. Nejlepším způsobem je nahradit vstupní pole metodou VBA nazvanou „GetOpenFileName“.

V tomto článku vám ukážeme, jak použít VBA GetOpenFileName k získání názvu souboru bez jakýchkoli chyb.

Co dělá GetOpenFilename v aplikaci Excel VBA?

VBA „GetOpenFileName“ umožňuje uživateli vybrat soubor z počítače, na kterém pracujeme, aniž by jej otevřel.

S pomocí metody „GetOpenFileName“ můžeme ve skutečnosti před uživatelem zobrazit dialogové okno pro výběr souboru v požadované složce. „GetOpenFileName“ zkopíruje umístění souboru spolu s názvem souboru a příponou souboru.

Syntaxe GetOpenFilename v aplikaci Excel VBA

Podívejte se na syntaxi metody „GetOpenFilename“.

  • Filtr souborů: V tomto argumentu můžeme určit, jaký typ souborů se má zobrazit. Například pokud zmíníte „Soubory Excel, *. Xlsx“, zobrazí se pouze soubory Excel uložené s příponou „xlsx“ aplikace Excel, žádné další soubory se nezobrazí. Pokud budete ignorovat, zobrazí se všechny druhy souborů.
  • Filtrovat rejstřík: Tím omezíme uživatele na výběr typu souboru. V části Filtr souborů můžeme určit počet filtrů, které se mají zobrazit .
  • Název: Zobrazuje název dialogového okna výběru souboru.
  • Text tlačítka: Toto je pouze pro Macintosh.
  • Multi-Select: TRUE, pokud chcete vybrat více souborů, jinak FALSE. Výchozí hodnota je FALSE.

Příklad GetOpenFilename v aplikaci Excel VBA

Níže jsou uvedeny příklady VBA Application.GetOpenFilename.

Tuto šablonu aplikace Excel VBA GetOpenFilename Excel si můžete stáhnout zde - šablona VBA GetOpenFilename Excel

Pojďme napsat kód pro získání názvu souboru a adresy cesty.

Krok 1: Spusťte podprogram.

Kód:

 Sub GetFile_Example1 () End Sub 

Krok 2: Deklarujte proměnnou jako řetězec.

Kód:

 Sub GetFile_Example1 () Dim FileName jako řetězec End Sub 

Krok 3: Pro tuto proměnnou přiřadíme GetOpenFileName.

Kód:

 Sub GetFile_Example1 () Dim DimName File jako String FileName = Application.GetOpenFilename () End Sub 

Od této chvíle jsem ignoroval všechny parametry.

Krok 4: Nyní zobrazte výsledek proměnné v okně se zprávou.

Kód:

 Sub GetFile_Example1 () Dim FileName jako řetězec FileName = Application.GetOpenFilename () MsgBox FileName End Sub 

Nyní spusťte kód pomocí klávesové zkratky aplikace Excel F5 nebo ručně, zobrazí se níže uvedené dialogové okno pro výběr souboru.

Vyberu libovolný soubor a kliknu na ok.

Jakmile vyberu soubor, dostal jsem takovou zprávu ve VBA. Zobrazuje celou cestu ke složce a vybraný název souboru aplikace Excel spolu s příponou souboru.

Jak vidíme na obrázku výše, mohli jsme vidět všechny druhy souborů. Nyní přidám první parametr, tj. Filtr souborů, jako „Soubory Excel, *. Xlsx“.

Kód:

 Sub GetFile_Example1 () Dim FileName jako řetězec FileName = Application.GetOpenFilename (FileFilter: = "soubory Excel, *. Xlsx") MsgBox FileName End Sub 

Nyní, když spustím tento kód pomocí klávesy F5 nebo ručně, uvidím pouze soubory Excel s příponou „xlsx“.

Takto můžeme použít metodu „VBA Application.GetOpenFileName“ k získání cesty ke složce spolu s názvem souboru a příponou souboru.