VBA vám umožňuje vybrať súbor, ktorý sa má otvoriť, pomocou súboru Application.GetOpenFilename metóda. V tomto návode sa naučíte, ako otvoriť dialógové okno súboru a nastaviť parametre.
Ak sa chcete dozvedieť, ako otvoriť a zavrieť súbor, môžete kliknúť na tento odkaz: VBA Otvoriť/Zavrieť súbor
Otvorte dialógové okno súborov vo VBA
Ak chcete otvoriť súbor vo VBA, musíte najskôr otvoriť dialógové okno pre výber súboru. Tu je kód:
123 | Dim strFile ako reťazecstrFile = Application.GetOpenFilename ( |
Ako vidíte, metóda má niekoľko parametrov. FileFilter umožňuje filtrovať potrebné typy súborov, v našom prípade súbory .xlsx.
V Názov parameter, môžete nastaviť názov dialógového okna. Ak chcete povoliť otváranie viacerých súborov, musíte nastaviť MultipleSelect na Pravda. Ak tento parameter nenastavíte, bude možné vybrať iba jeden súbor.
Obrázok 1. Otvorte dialógové okno súboru
Ako vidíte na obrázku 1, zobrazí sa dialógové okno s názvom Vyberte súbor programu Excel. Filtrované sú iba súbory programu Excel a môžeme vybrať viacero súborov.
Otvorte dialógové okno Súbor v konkrétnom priečinku
Ak chcete otvoriť dialógové okno v konkrétnom priečinku, musíte použiť túto metódu .Dialog súboru s parametrom msoFileDialogFilePicker. V príklade otvoríme dialógové okno v priečinku Priečinok C: \ VBA. Tu je kód:
123456789101112131415161718192021 | Dim fd As Office.FileDialogDim strFile ako reťazecNastaviť fd = Application.FileDialog (msoFileDialogFilePicker)S fd.Filtre. Čisté.Filtre. Pridajte „súbory programu Excel“, „*.xlsx?“, 1.Title = "Vyberte súbor programu Excel".AllowMultiSelect = False.InitialFileName = "Priečinok C: \ VBA"Ak .Show = True PotomstrFile = .SelectedItems (1)Koniec AkUkončiť s |
Najprv musíte deklarovať premennú fd typ Office.FileDialog a premenná reťazca na vytváranie súborov:
12 | Dim fd As Office.FileDialogDim strFile ako reťazec |
Potom musíte nastaviť fd do Application.FileDialog (msoFileDialogFilePicker):
1 | Nastaviť fd = Application.FileDialog (msoFileDialogFilePicker) |
Teraz, vo vnútri S fd Koniec s, môžeme nastaviť viacero parametrov:
1234567 | .Filtre. Čisté.Filtre. Pridajte „súbory programu Excel“, „*.xlsx?“, 1.Title = "Vyberte súbor programu Excel".AllowMultiSelect = False |
Tu vymažeme filtre súborov (.Filtre. Čisté) a nastavte ho na .xlsx (.Filters. Pridajte „súbory programu Excel“, „*.xlsx?“, 1).
Môžeme tiež nastaviť názov dialógového okna: .Title = „Vyberte súbor programu Excel“.
Užívateľa môžeme obmedziť na výber iba jedného súboru pomocou:.AllowMultiSelect = False
Na otvorenie dialógového okna v požadovanom priečinku musíme vložiť tento riadok kódu:
1 | .InitialFileName = "Priečinok C: \ VBA" |
Na konci len otvoríme dialógové okno so všetkými predtým nastavenými parametrami:
12345 | Ak .Show = True PotomstrFile = .SelectedItems (1)Koniec Ak |
Keď spustíme tento kód, v priečinku sa zobrazí dialógové okno na otvorenie súboru Priečinok C: \ VBA:
Obrázok 2. Otvorte dialógové okno so súborom v konkrétnom priečinku