VBA GetOpenFilename | Kako koristiti metodu GetOpenFilename u VBA?

GetOpenFilename je metoda koja je ujedno i atribut FSO-a, ova metoda se koristi u VBA za pronalaženje određene datoteke s imenom datoteke i odabir iste, važan faktor ove metode je put imena datoteke koja je navedena za otvaranje, mi može proslijediti put imena datoteke u funkciji ili možemo tražiti od korisnika da predstavi put datoteke kako bi ga odabrao.

Excel VBA aplikacija.GetOpenFilename

Postoje situacije u kojima trebamo pristupiti određenom imenu datoteke, a to može biti moguće s VBA kodiranjem. Da bismo pristupili datoteci, moramo spomenuti i put do mape te naziv datoteke zajedno s njenim nastavkom datoteke. Da bi dobili naziv datoteke, mnogi programeri dat će VBA okvir za unos kao mogućnosti za unos putanje datoteke i imena datoteke. Ali ovo nije dobra opcija za vježbanje, jer kada pred korisnika prikažete okvir za unos, oni se ne sjećaju uvijek putanje datoteke, obrnute kose crte kako bi odvojili jednu mapu od druge mape, nazive datoteka i proširenje datoteka . To čini unos koji daje korisnik neuredniji i na kraju će sve biti zeznuto čak i ako postoji pogreška u malom razmaku. Najbolji način je zamijeniti okvir za unos VBA metodom nazvanom "GetOpenFileName".

U ovom ćemo vam članku pokazati kako pomoću VBA GetOpenFileName dobiti naziv datoteke bez grešaka.

Što GetOpenFilename radi u programu Excel VBA?

VBA "GetOpenFileName" omogućuje korisniku odabir datoteke s računala na kojem radimo bez otvaranja datoteke.

Pomoću metode “GetOpenFileName” možemo pred korisnikom zapravo prikazati dijaloški okvir za odabir datoteke u potrebnoj mapi. "GetOpenFileName" će kopirati mjesto datoteke zajedno s nazivom datoteke i njenim nastavkom.

Sintaksa GetOpenFilename u programu Excel VBA

Pogledajte sintaksu metode “GetOpenFilename”.

  • Filtar datoteka: U ovom argumentu možemo odrediti koju vrstu datoteka za prikaz treba odabrati. Na primjer, ako spominjete "Excel datoteke, *. Xlsx", prikazat će se samo Excel datoteke spremljene s excel nastavkom "xlsx", neće biti prikazane druge datoteke. Ako zanemarite prikazat će se sve vrste datoteka.
  • Kazalo filtra: Ovim ograničavamo korisnika da odabere vrstu datoteke. Možemo navesti broj filtara koji će biti vidljivi u odjeljku Filtar datoteka.
  • Naslov: Prikazuje naslov dijaloškog okvira za odabir datoteke.
  • Tekst gumba: Ovo je samo za Macintosh.
  • Multi-Select: TRUE ako želite odabrati više datoteka ili FALSE. Zadana vrijednost je FALSE.

Primjer GetOpenFilename u programu Excel VBA

Ispod su primjeri VBA Application.GetOpenFilename.

Ovdje možete preuzeti ovaj VBA GetOpenFilename Excel predložak - VBA GetOpenFilename Excel Predložak

Napišimo kod da dobijemo naziv datoteke i adresu puta.

Korak 1: Pokrenite potprogram.

Kodirati:

 Sub GetFile_Example1 () Kraj Sub 

Korak 2: Proglasite varijablu kao String.

Kodirati:

 Sub GetFile_Example1 () Dim Ime datoteke kao kraj niza Sub 

Korak 3: Za ovu ćemo varijablu dodijeliti GetOpenFileName.

Kodirati:

 Sub GetFile_Example1 () Dim Ime datoteke kao niz FileName = Application.GetOpenFilename () Kraj Sub 

Do sada sam ignorirao sve parametre.

Korak 4: Sada u polju za poruke prikažite rezultat varijable.

Kodirati:

 Sub GetFile_Example1 () Dim Ime datoteke kao niz FileName = Application.GetOpenFilename () MsgBox Ime datoteke Kraj Sub 

Sada pokrenite kôd preko excelove tipke prečaca F5 ili ručno, prikazat će se donji dijaloški okvir za odabir datoteke.

Odabrat ću bilo koju datoteku i kliknuti na ok.

Čim odaberem datoteku, dobio sam ovakav okvir za poruke u VBA. Prikazuje puni put do mape i odabrani naziv datoteke Excel zajedno s nastavkom datoteke.

Kao što vidimo na gornjoj slici, mogli smo vidjeti sve vrste datoteka. Sada ću dodati prvi parametar, tj. Filtar datoteka kao "Excel datoteke, *. Xlsx".

Kodirati:

 Sub GetFile_Example1 () Dim FileName kao niz FileName = Application.GetOpenFilename (FileFilter: = "Excel datoteke, *. Xlsx") MsgBox FileName End Sub 

Sada, ako ovaj kod pokrenem pomoću tipke F5 ili ručno, vidjet ću samo Excel datoteke s nastavkom "xlsx".

Na ovaj način možemo koristiti metodu "VBA Application.GetOpenFileName" da bismo dobili put do mape zajedno s Nazivom datoteke i proširenjem datoteke.