VBA FileDialog - Bagaimana cara membuka FilesDialog Box menggunakan VBA Code?

Excel VBA FileDialog

Dalam VBA fieldialog adalah properti yang digunakan untuk mewakili contoh yang berbeda, dalam fieldialog ada empat jenis konstanta yang dikenal sebagai msofiledialogfilepicker yang digunakan untuk memilih file dari jalur yang diberikan yang kedua adalah msofiledialogfolderpicker yang namanya menyarankan digunakan untuk memilih folder dan ketiga adalah msofiledialog terbuka untuk membuka file dan yang terakhir adalah msofiledialogsaveas yang digunakan untuk menyimpan file sebagai file baru.

Ada keadaan tertentu di mana kami menginginkan data dari file lain atau lembar kerja lainnya, dan karena VBA digunakan untuk mengotomatiskan pekerjaan kami, kami dapat membuka file lain yang berbeda menggunakan VBA, dan itu dilakukan dengan menggunakan dialog File, bagian yang keren. cara menggunakan metode ini adalah kita tidak perlu memberikan path ke kode melainkan kita meminta pengguna untuk menelusuri file tersebut.

Sebagai bagian dari proyek VBA, kami mungkin perlu membuka buku kerja lain dan menjalankan beberapa jenis tugas dengannya. Di salah satu artikel sebelumnya, "Buku Kerja VBA.Open," kami telah menunjukkan cara membuka file dengan jalur tertentu dan file tertentu. Di sana, kami perlu menyediakan jalur folder dan nama file dengan ekstensinya. Tetapi bagaimana jika setiap kali pengguna harus memilih file yang berbeda dari folder yang berbeda. Di sinilah opsi "FileDialog" masuk ke dalam gambar.

Bagaimana Cara Kerja Opsi FileDialog VBA?

"Jika Anda tidak tahu jalur pastinya, FileDialog akan menemukan dan memilih file tersebut untuk Anda." Alih-alih menyebutkan alamat jalur dan nama file, kami dapat menampilkan jendela dialog terbuka file secara terpisah untuk memilih file dari folder mana pun di komputer.

"FileDialog" adalah objek di VBA. Untuk menggunakan opsi ini terlebih dahulu, kita perlu mendefinisikan variabel sebagai FileDialog.

Setelah variabel dideklarasikan sebagai "FileDialog", itu adalah variabel objek. Untuk mulai menggunakan ini, kita perlu menyetel objek dengan menggunakan Application.FileDialog.

Seperti yang bisa kita lihat pada gambar di atas, FileDialog memiliki empat opsi dengannya.

  • msoFileDialogFilePicker: Opsi ini membuka jendela pemilih file di depan pengguna untuk memilih file yang diinginkan sesuai keinginan mereka.
  • msoFileDialogFolderPicker: Opsi ini membuka kotak dialog atau jendela di depan pengguna untuk memilih Folder.
  • msoFileDialogOpen: Ini akan memungkinkan pengguna untuk membuka file yang dipilih dari folder.
  • msoFileDialogSaveAs: Ini akan memungkinkan pengguna untuk menyimpan file sebagai salinan yang berbeda.

Sampai sekarang, saya telah memilih opsi msoFileDialogFilePicker.

Sekarang kita perlu mendesain kotak dialog yang muncul di depan kita.

Menggunakan With Statement, kita bisa mendesain kotak dialog.

Di dalam dengan pernyataan, beri titik untuk melihat daftar IntelliSense properti dan metode opsi FileDialog.

Untuk melihat hanya file excel saat kotak dialog file terbuka, pertama-tama kita perlu menghapus filter apa pun yang diterapkan.

Sekarang kita perlu menerapkan filter baru sebagai "File Excel" dengan ekstensi wildcard dari file excel.

Sekarang mari kita ubah judul kotak dialog file.

Kami dapat mengizinkan pengguna untuk memilih hanya satu file pada satu waktu, atau kami juga dapat mengizinkan mereka untuk memilih beberapa file juga. Untuk ini, kita perlu menggunakan "Izinkan Banyak Pilihan".

Kami memiliki dua opsi di sini. Jika TRUE dipilih, itu akan memungkinkan pengguna untuk memilih beberapa file. Jika ya, pengguna FALSE hanya dapat memilih satu file dalam satu waktu.

Hal lain yang dapat kita rancang dengan FileDialog adalah kita sebenarnya dapat bersikeras tentang apa yang seharusnya menjadi folder default ketika kotak dialog file muncul. Untuk penggunaan ini, Nama File Awal.

Untuk ini, kami perlu menyebutkan folder default untuk membuka jalur alamat.

Sekarang akhirnya, kita perlu menerapkan metode "Show" untuk melihat kotak dialog file.

Kode:

Sub DoEvents_Example1 () Redupkan File Saya Sebagai FileDialog Atur Myfile = Application.FileDialog (msoFileDialogFilePicker) Dengan Myfile .Filters.Clear .Filters.Add "Excel Files", "* .xlsx?", 1 .Title = "Pilih File Excel Anda !! ! " .AllowMultiSelect = False .InitialFileName = "D: Excel Files". Tunjukkan Akhiri Dengan End Sub

Sekarang jalankan kode VBA untuk melihat hasilnya.

Seperti yang bisa kita lihat pada kotak dialog file gambar di atas telah membuka folder yang disebutkan secara default.

Sekarang kita dapat memilih subfolder dan memilih file excel.

Lihat gambar di atas karena kami telah menerapkan parameter filter hanya sebagai "File Excel".

Ini hanya akan memilih file dari folder yang disebutkan. Untuk menyimpan path lengkap, kita perlu mendeklarasikan satu variabel lagi sebagai string.

Sekarang di dalam with pernyataan, pilih "SelectedItems". Tetapkan jalur folder item yang dipilih ke variabel yang baru ditentukan.

Sekarang akhirnya tunjukkan jalur folder yang dipilih di kotak pesan VBA.

Sekarang saya akan menjalankan program untuk melihat kotak dialog.

Sekarang saya telah memilih Nama File sebagai “1. Charts.xlsx ”di subfolder“ Charts ”. Jika saya mengklik OK, kita dapat melihat path folder lengkap di kotak pesan.

Jadi, seperti ini, kita dapat menggunakan opsi FileDialog untuk memilih file dari folder di Excel. Gunakan kode di bawah ini untuk memilih file.

Kode:

Sub DoEvents_Example1 () Redupkan File Saya Sebagai FileDialog Set Myfile = Application.FileDialog (msoFileDialogFilePicker) Redupkan FileAddress Sebagai String Dengan Myfile .Filters.Clear .Filters.Add "File Excel", "* .xlsx?", 1 .Title = "Pilih Your Berkas Excel!!!" .AllowMultiSelect = False .InitialFileName = "D: Excel Files". Show FileAddress = .SelectedItems (1) Akhiri Dengan MsgBox FileAddress End Sub

Artikel yang menarik...