VBA Åpne fil -dialogboksen

VBA lar deg velge en fil som skal åpnes ved hjelp av Application.GetOpenFilename metode. I denne opplæringen lærer du hvordan du åpner en dialogboks for filer og angir parametere.

Hvis du vil lære å åpne og lukke en fil, kan du klikke på denne lenken: VBA Open/Close File

Åpne en fildialog i VBA

Hvis du vil åpne en fil i VBA, må du først åpne en dialogboks for å velge en fil. Her er koden:

123 Dim strFile As StringstrFile = Application.GetOpenFilename (FileFilter: = "Excel -filer (*.xlsx*),*.xlsx*", Tittel: = "Velg en Excel -fil som skal åpnes", MultiSelect: = True)

Som du kan se, har metoden flere parametere. FileFilter lar deg filtrere filtyper du trenger, i vårt tilfelle .xlsx -filer.

I Tittel parameter, kan du angi en tittel på dialogboksen. Hvis du vil tillate åpning av flere filer, må du angi Velg flere til True. Hvis du ikke angir denne parameteren, kan bare én fil velges.

Bilde 1. Åpne en fil -dialog

Som du kan se i Bilde 1, vises dialogboksen med tittelen Velg en Excel -fil. Bare Excel -filer filtreres, og vi kan velge flere filer.

Åpne en dialogboks for filer i en bestemt mappe

Hvis du vil åpne en dialogboks i en bestemt mappe, må du bruke metoden .FileDialog med parameteren msoFileDialogFilePicker. I eksemplet åpner vi en dialogboks i mappen C: \ VBA -mappe. Her er koden:

123456789101112131415161718192021 Dim fd As Office.FileDialogDim strFile As StringSett fd = Application.FileDialog (msoFileDialogFilePicker)Med fd.Filtre.Klar.Filters.Legg til "Excel -filer", "*.xlsx?", 1.Title = "Velg en Excel -fil".AllowMultiSelect = False.InitialFileName = "C: \ VBA -mappe"Hvis .Show = True ThenstrFile = .SelectedItems (1)Slutt omSlutt med

Først må du deklarere variabelen fd type Office.FileDialog og strengvariabelen for filopptak:

12 Dim fd As Office.FileDialogDim strFile As String

Etter dette må du sette fd til Application.FileDialog (msoFileDialogFilePicker):

1 Sett fd = Application.FileDialog (msoFileDialogFilePicker)

Nå, inne Med fd Slutt med, kan vi sette flere parametere:

1234567 .Filtre.Klar.Filters.Legg til "Excel -filer", "*.xlsx?", 1.Title = "Velg en Excel -fil".AllowMultiSelect = False

Her fjerner vi filfiltrene (.Filtre.Klar) og sett den til .xlsx (.Filters.Legg til "Excel -filer", "*.xlsx?", 1).

Vi kan også sette tittelen på dialogboksen: .Title = "Velg en Excel -fil".

Vi kan begrense en bruker til å velge bare en fil ved å:.AllowMultiSelect = False

For å åpne en dialogboks i mappen vi ønsker, må vi sette denne linjen med koden:

1 .InitialFileName = "C: \ VBA -mappe"

På slutten åpner vi bare dialogboksen med alle parameterne som tidligere er angitt:

12345 Hvis .Show = True ThenstrFile = .SelectedItems (1)Slutt om

Når vi kjører denne koden, vises dialogboksen for filåpning i mappen C: \ VBA -mappe:

Bilde 2. Åpne en dialogboks i en bestemt mappe

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave