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 vyhľadanie 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 otvorený. 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, čo 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 zadanie dané používateľom messierom a na konci bude všetko pokazené, 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 so 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, žiadne ďalšie súbory sa nezobrazia. 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.

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

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, keď 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 súboru a príponou súboru použiť metódu „VBA Application.GetOpenFileName“.