VBA GetOpenFilename - Cum se folosește metoda GetOpenFilename în VBA?

GetOpenFilename este o metodă care este, de asemenea, un atribut al FSO, această metodă este utilizată în VBA pentru a găsi un anumit fișier cu un nume de fișier și a-l selecta, factorul important în această metodă este calea numelui fișierului furnizat pentru a-l deschide, poate trece calea numelui fișierului în funcție sau putem cere utilizatorului să prezinte o cale fișier pentru a o selecta.

Aplicație Excel VBA.GetOpenFilename

Există situații în care trebuie să accesăm numele fișierului specific, iar acest lucru poate fi posibil cu codificarea VBA. Pentru a accesa fișierul, trebuie să menționăm și calea folderului și numele fișierului împreună cu extensia acestuia. Pentru a obține numele fișierului, mulți codificatori vor da caseta de intrare VBA ca opțiuni pentru a introduce calea fișierului și numele fișierului. Dar aceasta nu este o opțiune bună de practicat, deoarece atunci când prezentați o casetă de intrare în fața utilizatorului, aceștia nu își amintesc întotdeauna calea fișierului, barele oblice pentru a separa un dosar de alt dosar, numele fișierelor și extensia fișierelor . Acest lucru face ca intrarea dată de utilizator să fie mai dezordonată și, în cele din urmă, totul va fi înșelat chiar dacă există o mică greșeală de caracter spațial. Cel mai bun mod este să înlocuiți caseta de intrare cu metoda VBA numită „GetOpenFileName”.

În acest articol, vă vom arăta cum să utilizați VBA GetOpenFileName pentru a obține numele fișierului fără erori.

Ce face GetOpenFilename în Excel VBA?

VBA „GetOpenFileName” permite utilizatorului să selecteze fișierul de pe computerul la care lucrăm fără a deschide fișierul.

Cu ajutorul metodei „GetOpenFileName”, putem prezenta o casetă de dialog în fața utilizatorului pentru a selecta fișierul din folderul dorit. „GetOpenFileName” va copia locația fișierului împreună cu numele fișierului și extensia fișierului.

Sintaxa GetOpenFilename în Excel VBA

Aruncați o privire la sintaxa metodei „GetOpenFilename”.

  • Filtru de fișiere: În acest argument, putem specifica ce fel de fișiere să fie afișate pentru a selecta. De exemplu, dacă menționați „Fișiere Excel, *. Xlsx”, acesta va afișa numai fișiere Excel salvate cu extensia excel „xlsx”. Nu vor fi afișate alte fișiere. Dacă ignorați tot felul de fișiere vor fi afișate.
  • Filtrare index: Cu aceasta, restricționăm utilizatorul să selecteze tipul de fișier. Putem enumera specificați numărul de filtre care vor fi vizibile sub Filtru fișiere.
  • Titlu: arată titlul casetei de dialog selectare fișier.
  • Text buton: Acesta este doar pentru Macintosh.
  • Selectare multiplă: ADEVĂRAT dacă doriți să selectați mai multe fișiere sau altfel FALS. Valoarea implicită este FALSĂ.

Exemplu de GetOpenFilename în Excel VBA

Mai jos sunt exemplele VBA Application.GetOpenFilename.

Să scriem un cod pentru a obține numele fișierului și adresa căii.

Pasul 1: Porniți subrutina.

Cod:

Sub GetFile_Example1 () End Sub

Pasul 2: declarați o variabilă ca Șir.

Cod:

Sub GetFile_Example1 () Dim File Name As String End Sub

Pasul 3: Pentru această variabilă, vom atribui numele GetOpenFileName.

Cod:

Sub GetFile_Example1 () Dim FileName as String FileName = Application.GetOpenFilename () End Sub

De acum, am ignorat toți parametrii.

Pasul 4: Afișați acum rezultatul variabilei în caseta de mesaj.

Cod:

Sub GetFile_Example1 () Dim FileName As String FileName = Application.GetOpenFilename () MsgBox FileName End Sub

Acum rulați codul prin tasta de comandă rapidă excel F5 sau manual, acesta va afișa caseta de dialog de mai jos pentru a selecta fișierul.

Voi selecta orice fișier și voi da clic pe OK.

De îndată ce am selectat fișierul, am primit o cutie de mesaje în VBA ca aceasta. Afișează calea completă a folderului și numele fișierului Excel selectat împreună cu extensia de fișier.

După cum putem vedea în imaginea de mai sus, am putut vedea tot felul de fișiere. Acum voi adăuga primul parametru, adică Filtru de fișiere ca „Fișiere Excel, *. Xlsx”.

Cod:

Sub GetFile_Example1 () Dim FileName As String FileName = Application.GetOpenFilename (FileFilter: = "Excel Files, *. Xlsx") MsgBox FileName End Sub

Acum, dacă rulez acest cod folosind tasta F5 sau manual, voi vedea doar fișiere Excel cu extensia „xlsx”.

Astfel, putem folosi metoda „VBA Application.GetOpenFileName” pentru a obține calea folderului împreună cu numele fișierului și extensia fișierului.

Articole interesante...