VBA-Dialogfeld Datei öffnen

Mit VBA können Sie eine Datei zum Öffnen mit dem auswählen Application.GetOpenFilename Methode. In diesem Tutorial erfahren Sie, wie Sie einen Dateidialog öffnen und Parameter einstellen.

Wenn Sie erfahren möchten, wie Sie eine Datei öffnen und schließen, klicken Sie auf diesen Link: VBA Open/Close File

Öffnen Sie einen Dateidialog in VBA

Wenn Sie eine Datei in VBA öffnen möchten, müssen Sie zunächst einen Dateidialog öffnen, um eine Datei auszuwählen. Hier ist der Code:

123 Dim strFile As StringstrFile = Application.GetOpenFilename(FileFilter:="Excel-Dateien (*.xlsx*), *.xlsx*", Title:="Wählen Sie eine Excel-Datei zum Öffnen", MultiSelect:=True)

Wie Sie sehen, hat die Methode mehrere Parameter. Dateifilter ermöglicht es Ihnen, Dateitypen zu filtern, die Sie benötigen, in unserem Fall .xlsx-Dateien.

In dem Titel Parameter können Sie einen Titel des Dialogfelds festlegen. Wenn Sie das Öffnen mehrerer Dateien zulassen möchten, müssen Sie einstellen Mehrfachauswahl zu Wahr. Wenn Sie diesen Parameter nicht setzen, kann nur eine Datei ausgewählt werden.

Bild 1. Öffnen Sie einen Dateidialog

Wie Sie in Bild 1 sehen können, erscheint das Dialogfeld mit dem Titel Wählen Sie eine Excel-Datei. Es werden nur Excel-Dateien gefiltert und wir können mehrere Dateien auswählen.

Öffnen eines Dateidialogfelds in einem bestimmten Ordner

Wenn Sie ein Dialogfeld in einem bestimmten Ordner öffnen möchten, müssen Sie die Methode .DateiDialog mit dem Parameter msoFileDialogFilePicker. Im Beispiel öffnen wir ein Dialogfeld im Ordner C:\VBA-Ordner. Hier ist der Code:

123456789101112131415161718192021 Dim fd als Office.FileDialogDim strFile As StringSet fd = Application.FileDialog(msoFileDialogFilePicker)Mit fd.Filter.Löschen.Filter.Add "Excel-Dateien", "*.xlsx?", 1.Title = "Wählen Sie eine Excel-Datei".AllowMultiSelect = False.InitialFileName = "C:\VBA-Ordner"Wenn .Show = True ThenstrFile = .SelectedItems(1)Ende WennEnde mit

Zuerst müssen Sie die Variable deklarieren fd Typ Office.DateiDialog und die String-Variable für die Dateiübernahme:

12 Dim fd als Office.FileDialogDim strFile As String

Danach müssen Sie einstellen fd zu Application.FileDialog(msoFileDialogFilePicker):

1 Set fd = Application.FileDialog(msoFileDialogFilePicker)

Nun, innerhalb Mit fd Ende mit, können wir mehrere Parameter einstellen:

1234567 .Filter.Löschen.Filter.Add "Excel-Dateien", "*.xlsx?", 1.Title = "Wählen Sie eine Excel-Datei".AllowMultiSelect = False

Hier löschen wir die Dateifilter (.Filter.Löschen) und setzen Sie es auf .xlsx (.Filters.Add „Excel Files“, „*.xlsx?“, 1).

Außerdem können wir den Titel des Dialogfelds festlegen: .Title = „Wählen Sie eine Excel-Datei“.

Wir können einen Benutzer einschränken, nur eine Datei auszuwählen, indem: .AllowMultiSelect = False

Um ein Dialogfeld in dem gewünschten Ordner zu öffnen, müssen wir diese Codezeile einfügen:

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

Am Ende öffnen wir einfach das Dialogfeld mit allen zuvor eingestellten Parametern:

12345 Wenn .Show = True ThenstrFile = .SelectedItems(1)Ende Wenn

Wenn wir diesen Code ausführen, erscheint das Dialogfeld zum Öffnen der Datei im Ordner C:\VBA-Ordner:

Bild 2. Öffnen Sie einen Dateidialog in einem bestimmten Ordner

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave