VBA GetOpenFilename | Hvordan bruker jeg GetOpenFilename Method i VBA?

GetOpenFilename er en metode som også er et attributt for FSO, denne metoden brukes i VBA for å finne en bestemt fil med et filnavn og velge den, den viktige faktoren i denne metoden er banen til filnavnet som er gitt for å åpne den, vi kan enten passere banen til filnavnet i funksjonen, eller vi kan be brukeren om å presentere en filbane for å velge den.

Excel VBA Application.GetOpenFilename

Det er situasjoner der vi trenger tilgang til det spesifikke filnavnet, og dette kan være mulig med VBA-koding. For å få tilgang til filen, må vi nevne mappebanen i tillegg til filnavnet sammen med filtypen. For å få filnavnet, vil mange kodere gi VBA-inndataboks som muligheter for å angi filsti og filnavn. Men dette er ikke et godt alternativ å øve på, for når du presenterer en inndataboks foran brukeren, husker de ikke alltid filstien, tilbakeslag for å skille en mappe fra en annen mappe, filnavn og utvidelse av filene . Dette gjør inngangen fra brukeren mer rotete, og til slutt vil alt bli skrudd opp selv om det er en liten mellomromstegnfeil. Den beste måten er å erstatte inndataboksen med VBAs metode kalt “GetOpenFileName”.

I denne artikkelen vil vi vise deg hvordan du bruker VBA GetOpenFileName for å få filnavnet uten feil.

Hva gjør GetOpenFilename i Excel VBA?

VBA “GetOpenFileName” lar brukeren velge filen fra datamaskinen vi jobber med uten å åpne filen.

Ved hjelp av “GetOpenFileName” -metoden kan vi faktisk presentere en dialogboks foran brukeren for å velge filen i ønsket mappe. "GetOpenFileName" vil kopiere filplasseringen sammen med filnavn og filtypen.

Syntaks for GetOpenFilename i Excel VBA

Ta en titt på syntaksen til "GetOpenFilename" -metoden.

  • Filfilter: I dette argumentet kan vi spesifisere hvilken type filer som skal vises. For eksempel, hvis du nevner "Excel Files, *. Xlsx" vil det bare vise Excel-filer lagret med excel-utvidelsen "xlsx", ingen andre filer vil bli vist. Hvis du ignorerer alle typer filer, vises.
  • Filterindeks: Med dette begrenser vi brukeren til å velge filtype. Vi kan liste angi antall filtre som skal vises under Filfilter.
  • Tittel: Den viser tittelen på dialogboksen for valg av fil.
  • Knappetekst: Dette er bare for Macintosh.
  • Multi-Select: SANT hvis du vil velge flere filer eller ellers FALSE. Standardverdien er FALSE.

Eksempel på GetOpenFilename i Excel VBA

Nedenfor er eksemplene på VBA Application.GetOpenFilename.

Du kan laste ned denne VBA GetOpenFilename Excel-malen her - VBA GetOpenFilename Excel-mal

La oss skrive en kode for å få filnavnet og sti-adressen.

Trinn 1: Start subrutinen.

Kode:

 Sub GetFile_Example1 () Slutt Sub 

Trinn 2: Erklær en variabel som streng.

Kode:

 Sub GetFile_Example1 () Dim filnavn som streng slutt sub 

Trinn 3: For denne variabelen tildeler vi GetOpenFileName.

Kode:

 Sub GetFile_Example1 () Dim filnavn som streng filnavn = Application.GetOpenFilename () End Sub 

Per nå har jeg ignorert alle parametrene.

Trinn 4: Vis nå resultatet av variabelen i meldingsboksen.

Kode:

 Sub GetFile_Example1 () Dim filnavn som streng filnavn = Application.GetOpenFilename () MsgBox filnavn End Sub 

Kjør nå koden gjennom excel snarvei F5 eller manuelt, den viser dialogboksen nedenfor for å velge filen.

Jeg velger en fil og klikker på ok.

Så snart jeg valgte filen, fikk jeg en meldingboks i VBA som denne. Den viser hele mappestien og valgt Excel-filnavn sammen med filtypen.

Som vi kan se i bildet ovenfor, kunne vi se alle slags filer. Nå vil jeg legge til den første parameteren, dvs. filfilter som "Excel-filer, *. Xlsx".

Kode:

 Sub GetFile_Example1 () Dim filnavn som streng filnavn = Application.GetOpenFilename (FileFilter: = "Excel-filer, *. Xlsx") MsgBox filnavn slutt sub 

Nå hvis jeg kjører denne koden ved hjelp av F5-nøkkelen eller manuelt, vil jeg bare se Excel-filer med utvidelsen "xlsx".

Slik kan vi bruke "VBA Application.GetOpenFileName" -metoden for å få mappestien sammen med filnavn og filtypen.