Dialog pentru selectarea fișierelor Applicaton.GetOpenFileName
Opțiuni:
Aplicație.GetOpenFilename ([FileFilter], [FilterIndex], [Titlu], [ButtonText], [MultiSelect])
De fapt, de multe ori o folosesc, pentru că aceasta este o metodă universală și are tot ceea ce am nevoie personal: selectați anumite tipuri de fișiere permite, abilitatea de a interzice selecția mai multor fișiere simultan este.
Specificați tipurile de fișiere care vor fi afișate în caseta de dialog de selecție. De exemplu, dacă specificați, va fi posibil să se selecteze numai fișiere Excel "fișiere Excel, * xls *. (* * Xls.)" (Cu extensia care începe cu .xls - .xls XLSX xlsb xlsm, etc ....) . Dacă specificați "Fișiere text (* .Txt), * .Txt", puteți selecta numai fișiere text cu extensia .txt. Puteți specifica mai mult de un tip de extensii: "(. * * .xls) fișiere Excel, * xls *, fișiere text (* txt.), * Txt ..". Tipul de fișier implicit în caseta de dialog va aparține primului tip de fișier specificat (*. Xls *). Dar puteți specifica oricare dintre tipurile de mai sus utilizând argumentul FilterIndex. De asemenea, puteți specifica alegerea oricăror tipuri de fișiere: "Toate fișierele (*. *), *. *"
Dacă argumentul FileFilter specifică mai mult de un tip de fișiere (extensii), atunci acest argument specifică tipul de utilizat. De exemplu, următoarea linie implică selectarea tipurilor de fișiere text:
Fișierul atașat conține două proceduri care utilizează acest tip de dialog și procesează fișierele cu parametrul MultiSelect. setat la True și False.
Dialogul FileDialog File Selection (msoFileDialogFilePicker)
Acest dialog are și parametri și sunt foarte asemănători cu cei din aplicație.GetOpenFilename:
Mai jos, în articol, un exemplu de cod care utilizează toți parametrii descriși
Specifică dacă pot fi selectate numai unul sau mai multe fișiere:
- Adevărat - puteți selecta mai mult de un fișier pentru procesare (prin Shift sau Ctrl sau prin simpla selectare a mouse-ului în interiorul ferestrei)
- False - puteți selecta doar un singur fișier
Textul titlului casetei de dialog. Dacă specificați "Selectați text sau fișiere Excel", atunci acest text va fi în antet. Dacă nu specificați, acesta va fi textul implicit (ceva de genul "Deschiderea unui document")
Se afișează tipurile de fișiere care vor fi afișate în fereastra de selecție. Pentru a adăuga un tip de fișier (extensie), trebuie să utilizați metoda de adăugare:
.Filters.Add ([Descriere], [Extensii], [Poziție])
- Descriere - descrie tipul de fișiere. Text arbitrar care indică tipul de fișiere. De exemplu, "Desene" sau "Fișiere Excel".
- Extensii - extensii de fișiere. Imediat înainte de expansiune trebuie să fie neapărat un asterisc și o perioadă: * .xls. În caz contrar, dialogul va afișa o eroare. Pentru a enumera multiple extensii, folosiți un delimitator delimitat prin virgulă: "* .xls *; * .Xla *" sau "* .xls; * .Xlsx; * .Xlsm". Un asterisc după o extensie înlocuiește orice set de caractere sau nu. De exemplu, dacă specificați "* .xls *", este posibil să selectați toate fișierele a căror extensie începe cu .xls. xls, .xlsx, .xlsm, .xlsb și așa mai departe. dar nu puteți selecta fișierele cu extensia xla, .xlam și chiar mai mult .doc sau .txt. Dacă doriți să selectați orice tip de fișiere, trebuie doar să ștergeți filtrul și să nu adăugați niciun fel de fișiere. Filters.Clear
- Poziție - indică modul în care tipul de fișier va fi afișat în listă. În figura de mai jos, primul tip este "fișiere Excel", iar al doilea "Fișiere text":
Tipul fișierelor care vor fi afișate în mod implicit când se apelează dialogul este determinat de proprietatea FilterIndex din dialogul FileDialog.
Un punct important: un dialog numit într-o sesiune Excel salvează tipurile de fișiere adăugate anterior. Prin urmare, înainte de a atribui noi tipuri, trebuie să curățați filtrul:
.Filters.Clear
Fiecare nou tip de fișier este adăugat de noul Add:
Eu personal nu vă recomandăm să specificați numele fișierului, deoarece După afișarea dialogului, acest fișier va fi selectat automat, ceea ce nu este întotdeauna corect. Dar totul depinde de sarcini. Dacă utilizatorul nu alege fișiere pe cont propriu, dialogul va răspunde cu numele de fișier specificat (Book1.xlsx). Dacă un astfel de fișier nu apare în dosar, dialogul va emite un avertisment că nu există un astfel de fișier.
Acest parametru determină aspectul și structura casetei de dialog. Există 9 opțiuni disponibile:
- msoFileDialogViewDetails
- msoFileDialogViewLargeIcons
- msoFileDialogViewList
- msoFileDialogViewPreview
- msoFileDialogViewProperties
- msoFileDialogViewSmallIcons
- msoFileDialogViewThumbnail
- msoFileDialogViewTiles
- msoFileDialogViewWebView
Atunci când se utilizează acest parametru, trebuie notat că nu toate opțiunile pot fi disponibile pe diferite sisteme de operare. Prin urmare, înainte de a utiliza, este mai bine să vă asigurați că tipul specificat este acceptat pe PC-urile țintă. În principiu, nu se va întâmpla nimic groaznic - va arăta pur și simplu o fereastră cu o vedere prestabilită. Dar ceea ce este mai corect în designul de a adera la același tip pe toate PC-urile.
Returnează colecția de fișiere selectate. Spre deosebire de Application.GetOpenFilename, o matrice de șiruri întoarce întotdeauna, astfel încât să puteți utiliza întotdeauna o buclă pentru a deschide fișiere, chiar dacă parametrul AllowMultiSelect este setat la False:
Acest parametru determină aspectul și structura casetei de dialog. Există 9 opțiuni disponibile:
- msoFileDialogViewDetails
- msoFileDialogViewLargeIcons
- msoFileDialogViewList
- msoFileDialogViewPreview
- msoFileDialogViewProperties
- msoFileDialogViewSmallIcons
- msoFileDialogViewThumbnail
- msoFileDialogViewTiles
- msoFileDialogViewWebView
Atunci când se utilizează acest parametru, trebuie notat că nu toate opțiunile pot fi disponibile pe diferite sisteme de operare. Prin urmare, înainte de a utiliza, este mai bine să vă asigurați că tipul specificat este acceptat pe PC-urile țintă. În principiu, nu se va întâmpla nimic groaznic - va arăta pur și simplu o fereastră cu o vedere prestabilită. Dar ceea ce este mai corect în designul de a adera la același tip pe toate PC-urile.
Returnează o colecție cu un element care conține calea către dosarul selectat. Numerotarea liniilor din SelectedItems începe întotdeauna cu 1; selectarea mai multor dosare este imposibilă, apoi întotdeauna 1: x =. SelectedItems (1)
Alocă textul butonului, care confirmă selectarea directorului. Poate să nu conțină mai mult de 51 de caractere (care, de obicei, este suficientă).
O metodă care apelează un dialog cu parametrii selectați. Returnează răspunsul ca un număr întreg:
- -1 - folderul este selectat și este apăsat butonul Deschidere
- 0 - a fost apăsat butonul de anulare
Puteți să-l utilizați (sau, mai exact, trebuie să!) Pentru a nu continua executarea codului dacă este apăsat butonul Anulare: