VBA GetOpenFilename - Ako používať metódu GetOpenFilename vo VBA?

GetOpenFilename je metóda, ktorá je tiež atribútom FSO, táto metóda sa používa vo VBA na nájdenie určitého súboru s názvom súboru a jeho výber. Dôležitým faktorom v tejto metóde je cesta k názvu súboru, ktorý je uvedený na jeho otvorenie. môžeme vo funkcii odovzdať cestu k názvu súboru alebo môžeme požiadať používateľa, aby predložil cestu k súboru, aby ju vybral.

Aplikácia Excel VBA. GetOpenFilename

Existujú situácie, kedy musíme získať prístup k konkrétnemu názvu súboru, a to je možné pomocou kódovania VBA. Aby sme mali prístup k súboru, musíme spomenúť aj cestu k priečinku a názov súboru spolu s jeho príponou. Aby bolo možné získať názov súboru, veľa kódovačov poskytne vstupné pole VBA ako možnosti zadania cesty k súboru a názvu súboru. Toto však nie je dobrá voľba, pretože keď pred používateľom zadáte vstupné pole, nemusí si vždy pamätať cestu k súboru, spätné lomky na oddelenie jedného priečinka od iného, ​​názvy súborov a prípony súborov . Vďaka tomu je vstup daný používateľom messierom a nakoniec sa všetko skompletizuje, aj keď dôjde k chybe malého znaku medzery. Najlepším spôsobom je nahradiť vstupné pole metódou VBA nazvanou „GetOpenFileName“.

V tomto článku vám ukážeme, ako používať VBA GetOpenFileName na získanie názvu súboru bez akýchkoľvek chýb.

Čo robí GetOpenFilename v programe Excel VBA?

VBA „GetOpenFileName“ umožňuje používateľovi vybrať súbor z počítača, na ktorom pracujeme, bez jeho otvorenia.

Pomocou metódy „GetOpenFileName“ môžeme skutočne predstaviť dialógové okno pred používateľom, aby sme vybrali súbor v požadovanom priečinku. „GetOpenFileName“ skopíruje umiestnenie súboru spolu s názvom a príponou súboru.

Syntax názvu GetOpenFilename v programe Excel VBA

Zoznámte sa s syntaxou metódy „GetOpenFilename“.

  • Filtr súborov: V tomto argumente môžeme určiť, aký druh súborov sa má zobraziť. Napríklad, ak spomeniete „Súbory Excel, *. Xlsx“, zobrazia sa iba Súbory Excel uložené s príponou „xlsx“ programu Excel. Nezobrazia sa žiadne ďalšie súbory. Ak budete ignorovať, zobrazia sa všetky druhy súborov.
  • Filtrovať index: Týmto obmedzíme používateľa na výber typu súboru. V zozname súborov môžeme určiť počet filtrov, ktoré sa majú zobraziť .
  • Názov: Zobrazuje názov dialógového okna výberu súboru.
  • Text tlačidla: Toto je iba pre systém Macintosh.
  • Multi-Select: TRUE, ak chcete vybrať viac súborov, inak FALSE. Predvolená hodnota je FALSE.

Príklad názvu GetOpenFilename v programe Excel VBA

Nižšie uvádzame príklady VBA Application.GetOpenFilename.

Napíšeme kód na získanie názvu súboru a adresy cesty.

Krok 1: Spustite podprogram.

Kód:

Sub GetFile_Example1 () End Sub

Krok 2: Deklarujte premennú ako reťazec.

Kód:

Sub GetFile_Example1 () Dim FileName ako reťazec End Sub

Krok 3: K tejto premennej priradíme názov GetOpenFileName.

Kód:

Sub GetFile_Example1 () Dim DimNameName ako String FileName = Application.GetOpenFilename () End Sub

Odteraz som ignoroval všetky parametre.

Krok 4: Teraz ukážte výsledok premennej v okne správy.

Kód:

Sub GetFile_Example1 () Dim FileName ako reťazec FileName = Application.GetOpenFilename () MsgBox FileName End Sub

Teraz spustite kód pomocou klávesovej skratky programu Excel F5 alebo manuálne, zobrazí sa dialógové okno nižšie na výber súboru.

Vyberiem ľubovoľný súbor a kliknem na ok.

Hneď ako vyberiem súbor, dostal som vo VBA takúto správu. Zobrazuje celú cestu k priečinku a vybraný názov súboru programu Excel spolu s príponou súboru.

Ako vidíme na obrázku vyššie, mohli sme vidieť všetky druhy súborov. Teraz pridám prvý parameter, tj. Filter súborov ako „Súbory programu Excel, *. Xlsx.“

Kód:

Sub GetFile_Example1 () Dim FileName ako reťazec FileName = Application.GetOpenFilename (FileFilter: = "súbory programu Excel, *. Xlsx") MsgBox FileName End Sub

Teraz, ak spustím tento kód pomocou klávesu F5 alebo ručne, uvidím iba súbory programu Excel s príponou „xlsx“.

Takto môžeme na získanie cesty k priečinku spolu s názvom a príponou súboru použiť metódu „VBA Application.GetOpenFileName“.

Zaujímavé články...