VBA GetOpenFilename

GetOpenFilename adalah kaedah yang juga merupakan atribut FSO, kaedah ini digunakan dalam VBA untuk mencari fail tertentu dengan nama fail dan memilihnya, faktor penting dalam kaedah ini adalah jalan nama fail yang disediakan untuk membukanya, kami boleh melalui laluan nama fail dalam fungsi atau kita boleh meminta pengguna untuk menunjukkan jalan fail untuk memilihnya.

Aplikasi Excel VBA.GetOpenFilename

Terdapat situasi di mana kita perlu mengakses nama fail tertentu dan ini dapat dilakukan dengan pengekodan VBA. Untuk mengakses ke fail, kita juga perlu menyebut jalan folder dan nama fail beserta pelanjutan failnya. Untuk mendapatkan nama fail, banyak pengekod akan memberikan kotak input VBA sebagai pilihan untuk memasukkan jalur fail dan nama fail. Tetapi ini bukan pilihan yang baik untuk berlatih, kerana ketika Anda membentangkan kotak input di depan pengguna, mereka tidak selalu mengingat jalur file, garis miring balik untuk memisahkan satu folder dari folder lain, nama file, dan peluasan fail . Ini menjadikan input yang diberikan oleh pengguna lebih berantakan dan pada akhirnya, semuanya akan diperbaiki walaupun terdapat kesalahan watak ruang kecil. Cara terbaik adalah dengan mengganti kotak input dengan kaedah VBA yang disebut "GetOpenFileName".

Dalam artikel ini, kami akan menunjukkan cara menggunakan VBA GetOpenFileName untuk mendapatkan nama fail tanpa kesalahan.

Apa yang dilakukan oleh GetOpenFilename di Excel VBA?

VBA "GetOpenFileName" membolehkan pengguna memilih fail dari komputer yang sedang kita kerjakan tanpa membuka fail.

Dengan bantuan kaedah "GetOpenFileName", kita benar-benar dapat menampilkan kotak dialog di depan pengguna untuk memilih file di folder yang diperlukan. "GetOpenFileName" akan menyalin lokasi fail bersama dengan nama fail dan peluasan fail.

Sintaks GetOpenFilename dalam Excel VBA

Lihat sintaks kaedah "GetOpenFilename".

  • Penapis Fail: Dalam argumen ini, kita dapat menentukan jenis fail yang akan ditampilkan untuk dipilih. Sebagai contoh, jika anda menyebut "Fail Excel, *. Xlsx" ia akan memaparkan hanya Fail Excel yang disimpan dengan pelanjutan excel "xlsx", tidak ada fail lain yang akan ditampilkan. Sekiranya anda mengabaikan semua jenis fail akan dipaparkan.
  • Indeks Penapis: Dengan ini, kami mengehadkan pengguna untuk memilih jenis fail. Kami dapat menyenaraikan menentukan jumlah penapis yang dapat dilihat di bawah Penapis Fail.
  • Tajuk: Ini menunjukkan tajuk kotak dialog fail pilihan.
  • Teks Butang: Ini hanya untuk Macintosh.
  • Multi-Select: BENAR jika anda ingin memilih banyak fail atau yang lain SALAH. Nilai lalai adalah SALAH.

Contoh GetOpenFilename dalam Excel VBA

Berikut adalah contoh Aplikasi VBA.GetOpenFilename.

Anda boleh memuat turun Templat VBA GetOpenFilename Excel ini di sini - Templat VBA GetOpenFilename Excel ini

Mari tulis kod untuk mendapatkan nama fail dan alamat jalan.

Langkah 1: Mulakan subrutin.

Kod:

 Sub GetFile_Contoh1 () Akhir Sub 

Langkah 2: Nyatakan pemboleh ubah sebagai String.

Kod:

 Sub GetFile_Example1 () Dim FileName Sebagai String End Sub 

Langkah 3: Untuk pemboleh ubah ini, kami akan memberikan GetOpenFileName.

Kod:

 Sub GetFile_Example1 () Dim FileName Sebagai StringName File = Application.GetOpenFilename () End Sub 

Setakat ini, saya telah mengabaikan semua parameter.

Langkah 4: Sekarang tunjukkan hasil pemboleh ubah di kotak mesej.

Kod:

 Sub GetFile_Example1 () Dim FileName Sebagai StringNama File = Application.GetOpenFilename () MsgBox FileName End Sub 

Sekarang jalankan kod melalui kunci pintasan excel F5 atau secara manual, ia akan menunjukkan kotak dialog di bawah untuk memilih fail.

Saya akan memilih satu fail dan klik ok.

Sebaik sahaja saya memilih fail, saya mendapat kotak mesej di VBA seperti ini. Ia menunjukkan jalan folder penuh dan nama fail excel terpilih bersama dengan peluasan fail.

Seperti yang dapat kita lihat pada gambar di atas, kita dapat melihat semua jenis fail. Sekarang saya akan menambahkan parameter pertama iaitu Penapis Fail sebagai "Fail Excel, *. Xlsx".

Kod:

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

Sekarang jika saya menjalankan kod ini menggunakan kekunci F5 atau secara manual, saya hanya akan melihat fail Excel dengan pelanjutan "xlsx".

Seperti ini, kita dapat menggunakan metode "VBA Application.GetOpenFileName" untuk mendapatkan jalan folder bersama dengan Nama Fail & peluasan fail.