Excel VBA GetOpenFileName

Obstaja veliko načinov za odpiranje katere koli datoteke. Obstaja pa tudi več načinov za odpiranje iste datoteke. V VBA imamo različne funkcije, s katerimi lahko odpremo katero koli datoteko. Datoteko lahko odpremo tako, da pot v datoteko vstavimo v kodo VBA, lahko celo posnamemo ta postopek. Najboljši način pa je, da katero koli datoteko v VBA odprete s pomočjo aplikacije VBA GetOpenFileName . Kot že ime pove, je namenjen zgolj prijavi ob odpiranju katere koli datoteke v VBA.

V drugih funkcijah ali aplikacijah, ki delujejo po istem principu, bomo morda morali kopirati datoteko datoteke, ločene s poševnimi črtami, pri čemer ime mape in natančni presledki med poševnico. Morda bomo morali vnesti tudi točno ime datoteke skupaj s pripono, ki jo želimo odpreti. Toda v VBA GetOpenFileName moramo le izbrati datoteko z lokacije. Odprlo bo polje, od koder lahko brskamo po datoteki, kjer se hrani, in tudi razširitev datoteke bo popravljena.

Sintaksa GetOpenFilename v VBA

Poglejmo spodaj formulo GetOpenFilename v Excelu VBA.

Spodaj je argument aplikacije VBA GetOpenFileName.

  • FileFilter - V tem lahko določimo, kakšno datoteko želimo videti. Na primer, če omenimo "Excel datoteke, *. Xlsx", potem bo našel in pokazal vse datoteke Excela v .xlsx formatu. Če omenimo "PDF datoteke, *. Pdf", potem bo našel in pokazal vse datoteke pdf.
  • FilterIndex - S tem lahko uporabniku omogočimo, da omeji izbiro vrste datoteke. Določimo lahko, koliko datotek moramo prikazati.
  • Naslov - Prikaže izbrano datoteko v naslovu pogovornega okna.
  • ButtonText - Uporablja se samo za MacBookove uporabnike.
  • MultiSelect - Če izberemo več datotek, bo to TRUE, sicer bo to FALSE, kar je privzeta vrednost.

Kako odpreti datoteko s pomočjo GetOpenFileName v Excelu VBA?

Spodaj so različni primeri za odpiranje datoteke s pomočjo aplikacije GetOpenFileName v excelu VBA.

To predlogo za VBA GetOpenFileName Excel lahko prenesete tukaj - VBA Predloga za program GetOpenFileName Excel

Excel VBA GetOpenFileName - Primer 1

V tem primeru bomo videli, kako najprej odpreti Excelovo datoteko. Za uporabo GetOpenFileName v Excelu VBA sledite spodnjim korakom:

1. korak: Pojdite na meni Vstavljanje in kliknite Modul, da ga odprete.

2. korak: Vpišite podkategorijo VBA Getopenfilename ali izberite katero koli drugo ime, kot želite, za določitev podkategorije.

Koda:

 Sub OpenFile () Konec Sub 

3. korak: Zdaj določite spremenljivko in ji dodajte niz, kot je prikazano spodaj. Izbira niza, ker bomo izbirali ali izbirali ime datoteke.

Koda:

 Sub OpenFile () Dim A kot konec niza Sub 

4. korak: Zdaj v definirani spremenljivki A uporabite aplikacijo, kot je prikazano spodaj.

5. korak: Zdaj poiščite in izberite GetOpenFileName na aktiviranem seznamu aplikacij, kot je prikazano spodaj.

6. korak: Zdaj uporabite MsgBox, da bomo dobili lokacijo datoteke, ki jo izberemo.

Koda:

 Pod OpenFile () Dim A kot niz A = Application.GetOpenFilename () MsgBox A End Sub 

7. korak: Zdaj sestavite kodo s pritiskom na funkcijsko tipko F5 in jo zaženite s klikom na gumb Play. Zdaj brskajte po datoteki, ki jo želimo izbrati. Tu smo sledili poti in izbrali datoteko excel, imenovano Test File, ki je običajno v .xlsx obliki. Kliknite Odpri.

V polje s sporočili bo prikazano pot do te datoteke, ki smo jo predhodno izbrali, kot je prikazano spodaj.

8. korak: Zdaj bomo po sintaksi uporabili Filefilter v oklepaju aplikacije GetOpenFilename. Kot vemo, je namenjen izbiri vrste datoteke, ki jo želimo odpreti. Tako bomo zanj postavili "Excel datoteke", kot je prikazano spodaj.

Koda:

 Pod OpenFile () Dim A kot niz A = Application.GetOpenFilename (Filefilter: = "Excel Files") MsgBox A End Sub 

9. korak: Zdaj postavite razširitev datoteke Excel, ki smo jo izbrali prej. To je bilo " .xlsx ", zato bomo to ohranili tudi v FileFilterju.

Koda:

 Pod OpenFile () Dim A kot niz A = Application.GetOpenFilename (Filefilter: = "Excel datoteke, * .xlsx") MsgBox A End Sub 

Korak 10: Zdaj bomo celotno kodo zagnali še enkrat. V brskalni mapi bomo dobili samo datoteke Excela, ki so na voljo v tisti mapi, ki smo jo prej brskali.

In če poskusimo videti katero koli drugo datotečno obliko ali razširitev v Excelovih datotekah spustno navzdol, potem bo spet prikazano samo datoteke Excel.

Excel VBA GetOpenFileName - primer # 2

Na enak način lahko vidimo odprto ime datoteke s pripono " .pdf ". Za uporabo GetOpenFileName v Excelu VBA sledite spodnjim korakom:

Korak 1: Zdaj spet napišite kodo, ki smo jo videli v primeru-1.

Koda:

 Pod OpenFile1 () Dim A kot niz A = Application.GetOpenFilename () MsgBox A End Sub 

2. korak: Odpeljal nas bo do istega okna ali pa brskal po isti mapi. Zdaj izberite katero koli datoteko PDF in kliknite Odpri.

Nam bo dal pot do izbrane datoteke.

3. korak: Če želite dobiti izbrano datoteko PDF, v datoteko sintakse FileFilter napišite "PDF datoteke" namesto "Excel Files" in izberite razširitev PDF, ki je " .pdf ", kot je prikazano spodaj.

Koda:

 Pod OpenFile1 () Dim A kot niz A = Application.GetOpenFilename (Filefilter: = "Datoteke PDF, * .pdf") MsgBox A End Sub 

4. korak: Znova sestavite kodo in zaženite za njo. Dobili bomo mapo brskalnika za odpiranje datotek. Pri tem bomo dobili datoteke le s pripono " .pdf ", kot je prikazano spodaj.

Če poskušamo filtrirati druge oblike datotek, nam bo spet omogočil ogled samo datotek PDF, kot je prikazano spodaj.

In če ne izberemo nobene datoteke in izstopimo iz okna, bo ta podala privzeto sporočilo, ki je napačno .

Prednosti Excela VBA GetOpenFileName

  • VBA GetOpenFileName nam pomaga neposredno odpreti datoteko brez lepljenja poti do te datoteke v kodo VBA.
  • Poti datotek nam ni treba večkrat spreminjati.
  • Brskanje in izbiranje datotek skozi to je tako preprosto, kot da bi šli v to mapo, da jo odprete.

Slabosti Excela VBA GetOpenFileName

  • Če spremenimo datoteko, moramo spremeniti razširitev datoteke, ki jo želimo odpreti.

Stvari, ki jih je treba zapomniti

  • Kadar koli morate odpreti drugačno različico datoteke, razširitev datoteke spremenite.
  • Message Box s sporočilom FALSE je privzeto sporočilo, ki bo prišlo vsakič, ko ne izberemo nobene datoteke, ki bi jo odprli.
  • Takšnega postopka ni mogoče ustvariti s pomočjo funkcije Record Macro.
  • Ne pozabite, da datoteko shranite v formatu Excel, ki je omogočen makro. Tako bo zapisana koda VBA ohranjena.

Priporočeni članki

To je vodnik za VBA GetOpenFileName. Tukaj razpravljamo o tem, kako odpreti datoteko z aplikacijo GetOpenFileName v Excelu z uporabo kode VBA in nekaj praktičnih primerov ter naložljive predloge Excela. Ogledate si lahko tudi druge naše predlagane članke -

  1. Poišči in zamenjaj VBA (primeri)
  2. Skupinski delovni listi v Excelu
  3. Delovni zvezek VBA
  4. Sklici na celice v Excelu

Kategorija: