Excel VBA GetOpenFileName

Der er mange måder at åbne en fil på. Men der er også flere måder at åbne den samme fil også. I VBA har vi forskellige funktioner, hvormed vi kan åbne enhver fil. Vi kan åbne filen ved at placere stien til filen i VBA-kode, vi kan endda registrere denne proces også. Men den bedste måde er at åbne enhver fil i VBA er ved hjælp af VBA GetOpenFileName- applikation. Som navnet siger, er det udelukkende anvendt til anvendelse ved åbning af enhver fil i VBA.

I andre funktioner eller applikationer, der fungerer efter det samme princip, er vi muligvis nødt til at kopiere filen til filen adskilt af tilbageslag, idet vi holder mappenavn og nøjagtige mellemrum mellem backslashen. Det kan også være nødvendigt, at vi indtaster det nøjagtige filnavn sammen med den udvidelse, som vi vil åbne. Men i VBA GetOpenFileName, er vi bare nødt til at vælge filen fra lokationen. Det giver boksen, hvorfra vi kan gennemse filen, hvor den opbevares, og filtypenavnet vil også blive løst.

Syntaks for GetOpenFilename i VBA

Lad os se nedenfor formlen for GetOpenFilename i Excel VBA.

Nedenfor er argumentet fra VBA GetOpenFileName-applikationen.

  • FileFilter - I dette kan vi definere, hvilken slags fil vi vil se. For eksempel, hvis vi nævner "Excel-filer, *. Xlsx", vil den finde og vise alle excel-filer i .xlsx-format. Hvis vi nævner "PDF-filer, *. Pdf", vil den kun finde og vise alle pdf-filer.
  • FilterIndex - På dette punkt kan vi tillade en bruger at begrænse til at vælge filtype. Vi kan specificere antallet af filer, som vi har brug for at vise.
  • Titel - Den viser den valgte fil i filen i dialogboksen.
  • ButtonText - Det er kun til MacBook-brugere.
  • MultiSelect - Hvis vi vælger flere filer, vil det være SAND, ellers vil det være FALSE, som alligevel er en standardværdi.

Sådan åbnes fil ved hjælp af GetOpenFileName i Excel VBA?

Nedenfor er de forskellige eksempler på at åbne en fil ved hjælp af programmet GetOpenFileName i Excel VBA.

Du kan downloade denne VBA GetOpenFileName Excel-skabelon her - VBA GetOpenFileName Excel Template

Excel VBA GetOpenFileName - Eksempel # 1

I dette eksempel vil vi se, hvordan man åbner en excel-fil først. Følg nedenstående trin for at bruge GetOpenFileName i Excel VBA:

Trin 1: Gå til menuen Indsæt, og klik på Modul for at åbne den.

Trin 2: Skriv underkategorien til VBA Getopenfilename eller vælg et hvilket som helst andet navn som pr. Dit valg for at definere underkategori.

Kode:

 Sub OpenFile () End Sub 

Trin 3: Definer nu en variabel og giver den en streng som vist nedenfor. Valg af streng, fordi vi vælger eller vælger filnavnet.

Kode:

 Sub OpenFile () Dim A As String End Sub 

Trin 4: Brug nu en defineret variabel A- applikation som vist nedenfor.

Trin 5: Søg nu og vælg GetOpenFileName fra den aktiverede liste over applikationer som vist nedenfor.

Trin 6: Brug nu MsgBox, så vi får placeringen af ​​den fil, vi vælger.

Kode:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename () MsgBox A End Sub 

Trin 7: Kompiler nu koden ved at trykke på F5-funktionstasten og køre den ved at klikke på knappen Play. Gennemse nu den fil, som vi vil vælge. Her har vi fulgt stien og valgt den excel-fil, der er navngivet som Testfil, som normalt er i .xlsx- format. Klik på Åbn.

Det viser stien til den fil, som vi tidligere har valgt, i en meddelelsesboks som vist nedenfor.

Trin 8: Nu som pr. Syntaks bruger vi Filefilter i beslaget i GetOpenFilename-applikationen. Som vi ved, er det beregnet til at vælge den filtype, vi vil åbne den. Så vi lægger “Excel Files” til det som vist nedenfor.

Kode:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename (Filefilter: = "Excel Files") MsgBox A End Sub 

Trin 9: Læg nu udvidelsen af ​​Excel-fil, som vi har valgt tidligere. Det var “ .xlsx ”, så det vil vi også opbevare i FileFilter.

Kode:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename (Filefilter: = "Excel Files, * .xlsx") MsgBox A End Sub 

Trin 10: Nu kører vi den komplette kode igen. I browsermappen får vi kun Excel-filer, der er tilgængelige i den mappe, som vi tidligere har gennemsøgt.

Og hvis vi prøver at se noget andet filformat eller udvidelse i Excel-filer, vælger det igen kun Excel-filer.

Excel VBA GetOpenFileName - Eksempel # 2

På samme måde kan vi se åbne filnavnet med udvidelsen " .pdf ". Følg nedenstående trin for at bruge GetOpenFileName i Excel VBA:

Trin 1: Skriv igen den kode, som vi har set i eksempel-1.

Kode:

 Sub OpenFile1 () Dim A As String A = Application.GetOpenFilename () MsgBox A End Sub 

Trin 2: Det fører os til det samme vindue eller ellers gennemse til den samme mappe. Vælg nu en af ​​PDF-filer, og klik på Åbn.

Det giver os stien for den valgte fil.

Trin 3: Nu for at få den valgte PDF-fil i FileFilter-syntaks, skriv "PDF-filer" i stedet for "Excel-filer" og vælg udvidelsen af ​​PDF, som er " .pdf ", som vist nedenfor.

Kode:

 Sub OpenFile1 () Dim A As String A = Application.GetOpenFilename (Filefilter: = "PDF-filer, * .pdf") MsgBox A End Sub 

Trin 4: Kompilér koden igen og kør efter den. Vi får browsermappen til at åbne filerne. I det, får vi kun filerne med udvidelsen " .pdf " som vist nedenfor.

Og hvis du prøver at filtrere andre filformater, vil det igen tillade os kun at se PDF-filer som vist nedenfor.

Og hvis vi ikke vælger nogen fil og afslutter vinduet, vil den give en standardmeddelelse, der er falsk .

Fordele ved Excel VBA GetOpenFileName

  • VBA GetOpenFileName hjælper os med at åbne filen direkte uden at indsætte stien til den fil i VBA-kode.
  • Vi behøver ikke at ændre stien til filerne flere gange.
  • Gennemse og vælge filer gennem dette er så simpelt som at gå til den mappe for at åbne dem.

Ulemper ved Excel VBA GetOpenFileName

  • Vi er nødt til at ændre udvidelsen af ​​en fil, som vi vil åbne, hvis der er en ændring i den.

Ting at huske

  • Skift filtypenavnet, når du har brug for at åbne en anden version af filen.
  • Meddelelsesboks med en meddelelse som FALSE er standardmeddelelsen, der kommer hver gang, når vi ikke vælger nogen fil, der skal åbnes.
  • En sådan type proces kan ikke oprettes ved hjælp af Record Macro-funktionen.
  • Husk at gemme filen som et makroaktiveret Excel-format. Så den skrevne VBA-kode vil blive bevaret.

Anbefalede artikler

Dette er en guide til VBA GetOpenFileName. Her diskuterer vi, hvordan man åbner en fil ved hjælp af programmet GetOpenFileName i Excel ved hjælp af VBA-kode sammen med nogle praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA Find og erstat (eksempler)
  2. Gruppearkark i Excel
  3. VBA-arbejdsbog
  4. Cellehenvisninger i Excel

Kategori: