VBA ļauj izvēlēties failu, ko atvērt, izmantojot Application.GetOpenFilename metodi. Šajā apmācībā jūs uzzināsit, kā atvērt faila dialoglodziņu un iestatīt parametrus.
Ja vēlaties uzzināt, kā atvērt un aizvērt failu, varat noklikšķināt uz šīs saites: VBA Atvērt/aizvērt failu
Atveriet failu dialogu VBA
Ja vēlaties atvērt failu VBA, vispirms ir jāatver faila izvēles dialoglodziņš. Šeit ir kods:
123 | Dim strFile kā virknestrFile = Application.GetOpenFilename ( |
Kā redzat, metodei ir vairāki parametri. FileFilter ļauj filtrēt nepieciešamos failu tipus, mūsu gadījumā .xlsx failus.
Iekš Nosaukums parametru, varat iestatīt dialoglodziņa nosaukumu. Ja vēlaties atļaut atvērt vairākus failus, tas ir jāiestata MultipleSelect uz True. Ja neiestatāt šo parametru, var atlasīt tikai vienu failu.
Attēls 1. Atveriet failu dialoglodziņu
Kā redzams 1. attēlā, tiek parādīts dialoglodziņš ar nosaukumu Izvēlieties Excel failu. Tiek filtrēti tikai Excel faili, un mēs varam atlasīt vairākus failus.
Atveriet dialoglodziņu Fails noteiktā mapē
Ja vēlaties atvērt dialoglodziņu noteiktā mapē, jums jāizmanto šī metode .FileDialog ar parametru msoFileDialogFilePicker. Piemērā mēs mapē atvērsim dialoglodziņu C: \ VBA mape. Šeit ir kods:
123456789101112131415161718192021 | Dim fd Kā Office.FileDialogDim strFile kā virkneIestatiet fd = Application.FileDialog (msoFileDialogFilePicker)Ar fd.Filtri.Skaidrs.Filtri. Pievienojiet "Excel failus", "*.xlsx?", 1.Title = "Izvēlieties Excel failu".AllowMultiSelect = Nepareizi.InitialFileName = "C: \ VBA mape"Ja .Rādīt = PatiessstrFile = .SelectedItems (1)Beigas JaBeigt ar |
Vispirms jums ir jādeklarē mainīgais fd tipa Office.FileDialog un virknes mainīgais failu uzņemšanai:
12 | Dim fd Kā Office.FileDialogDim strFile kā virkne |
Pēc tam jums ir jāiestata fd uz Application.FileDialog (msoFileDialogFilePicker):
1 | Iestatiet fd = Application.FileDialog (msoFileDialogFilePicker) |
Tagad, iekšienē Ar fd Beigt ar, mēs varam iestatīt vairākus parametrus:
1234567 | .Filtri.Skaidrs.Filtri. Pievienojiet "Excel failus", "*.xlsx?", 1.Title = "Izvēlieties Excel failu".AllowMultiSelect = Nepareizi |
Šeit mēs notīrām failu filtrus (.Filtri.Skaidrs) un iestatiet to uz .xlsx (.Filters.Add “Excel Files”, “*.xlsx?”, 1).
Mēs varam arī iestatīt dialoglodziņa nosaukumu: .Title = “Izvēlieties Excel failu”.
Mēs varam ierobežot lietotāju izvēlēties tikai vienu failu, izmantojot:.AllowMultiSelect = Nepareizi
Lai atvērtu dialoglodziņu vajadzīgajā mapē, mums jāievieto šī koda rinda:
1 | .InitialFileName = "C: \ VBA mape" |
Beigās mēs vienkārši atvērsim dialoglodziņu ar visiem iepriekš iestatītajiem parametriem:
12345 | Ja .Rādīt = PatiessstrFile = .SelectedItems (1)Beigas Ja |
Izpildot šo kodu, mapē tiek parādīts faila atvēršanas dialoglodziņš C: \ VBA mape:
2. attēls. Atveriet failu dialoglodziņu noteiktā mapē