Excel VBA GetOpenFileName

Es gibt viele Möglichkeiten, eine Datei zu öffnen. Es gibt aber auch mehrere Möglichkeiten, dieselbe Datei zu öffnen. In VBA haben wir verschiedene Funktionen, mit denen wir jede Datei öffnen können. Wir können die Datei öffnen, indem wir den Pfad der Datei in VBA-Code einfügen. Wir können sogar diesen Prozess aufzeichnen. Der beste Weg, eine Datei in VBA zu öffnen, ist die Verwendung der VBA- Anwendung GetOpenFileName . Wie der Name schon sagt, wird es nur beim Öffnen einer Datei in VBA angewendet.

In anderen Funktionen oder Anwendungen, die nach dem gleichen Prinzip arbeiten, müssen wir möglicherweise die Datei der Datei kopieren, die durch Backslashes getrennt ist, wobei der Ordnername und die genauen Abstände zwischen den Backslashes beibehalten werden. Außerdem müssen wir möglicherweise den genauen Dateinamen zusammen mit der Erweiterung eingeben, die wir öffnen möchten. In VBA GetOpenFileName müssen wir jedoch nur die Datei vom Speicherort auswählen. Es wird die Box angezeigt, in der wir die Datei durchsuchen können, in der sie aufbewahrt wird, und die Dateierweiterung wird ebenfalls korrigiert.

Syntax von GetOpenFilename in VBA

Sehen wir uns die Formel für GetOpenFilename in Excel VBA an.

Unten ist das Argument der Anwendung VBA GetOpenFileName.

  • FileFilter - Hier können wir definieren, welche Art von Datei wir sehen möchten. Wenn wir beispielsweise "Excel-Dateien, * .xlsx" erwähnen, werden alle Excel-Dateien im XLSX-Format gefunden und angezeigt. Wenn wir "PDF-Dateien, *. Pdf" erwähnen, werden nur alle PDF-Dateien gefunden und angezeigt.
  • FilterIndex - Auf diese Weise können wir einem Benutzer erlauben, die Auswahl des Dateityps einzuschränken. Wir können die Anzahl der Dateien angeben, die wir anzeigen müssen.
  • Titel - Zeigt die ausgewählte Datei im Titel des Dialogfelds an.
  • ButtonText - Nur für MacBook-Benutzer.
  • MultiSelect - Wenn wir mehrere Dateien auswählen, ist dies TRUE oder FALSE, was ohnehin ein Standardwert ist.

Wie man eine Datei mit GetOpenFileName in Excel VBA öffnet?

Im Folgenden finden Sie verschiedene Beispiele zum Öffnen einer Datei mit der Anwendung GetOpenFileName in Excel VBA.

Sie können diese Excel-Vorlage für VBA GetOpenFileName hier herunterladen - Excel-Vorlage für VBA GetOpenFileName

Excel VBA GetOpenFileName - Beispiel # 1

In diesem Beispiel wird zuerst gezeigt, wie eine Excel-Datei geöffnet wird. Führen Sie die folgenden Schritte aus, um GetOpenFileName in Excel VBA zu verwenden:

Schritt 1: Gehen Sie zum Menü Einfügen und klicken Sie auf Modul, um es zu öffnen.

Schritt 2: Schreiben Sie die Unterkategorie von VBA Getopenfilename oder wählen Sie einen anderen Namen nach Ihrer Wahl, um die Unterkategorie zu definieren.

Code:

 Sub OpenFile () End Sub 

Schritt 3: Definieren Sie nun eine Variable und geben Sie ihr einen String wie unten gezeigt. Auswählen eines Strings, da wir den Dateinamen auswählen oder auswählen.

Code:

 Sub OpenFile () Dim A As String End Sub 

Schritt 4: Jetzt in definierter Variable A Anwendung wie unten gezeigt verwenden.

Schritt 5: Suchen Sie nun den GetOpenFileName und wählen Sie ihn aus der aktivierten Liste der Anwendungen aus (siehe unten).

Schritt 6: Verwenden Sie nun MsgBox, um den Speicherort der ausgewählten Datei zu ermitteln.

Code:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename () MsgBox A End Sub 

Schritt 7: Kompilieren Sie nun den Code durch Drücken der Funktionstaste F5 und führen Sie ihn durch Klicken auf die Schaltfläche Abspielen aus. Durchsuchen Sie nun die Datei, die Sie auswählen möchten. Hier sind wir dem Pfad gefolgt und haben die Excel-Datei mit dem Namen Testdatei ausgewählt, die normalerweise im XLSX- Format vorliegt . Klicken Sie auf Öffnen.

Es zeigt den Pfad dieser Datei, die wir zuvor ausgewählt haben, in einem Meldungsfeld an, wie unten gezeigt.

Schritt 8: Nun verwenden wir gemäß der Syntax Filefilter in der Klammer der GetOpenFilename-Anwendung. Wie wir wissen, ist es für die Auswahl des Dateityps gedacht, den wir öffnen möchten. Also werden wir "Excel-Dateien" dafür setzen, wie unten gezeigt.

Code:

 Unter OpenFile () Dim A As String A = Application.GetOpenFilename (Filefilter: = "Excel Files") MsgBox A End Sub 

Schritt 9: Fügen Sie nun die Erweiterung der zuvor ausgewählten Excel-Datei ein. Es war " .xlsx ", also behalten wir das auch in FileFilter bei.

Code:

 Sub OpenFile () Dim A As String A = Application.GetOpenFilename (Dateifilter: = "Excel Files, * .xlsx") MsgBox A End Sub 

Schritt 10: Jetzt führen wir den vollständigen Code erneut aus. Im Durchsuchen-Ordner erhalten wir nur Excel-Dateien, die in dem Ordner verfügbar sind, den wir zuvor durchsucht haben.

Und wenn wir versuchen, ein anderes Dateiformat oder eine andere Dateierweiterung in Excel-Dateien anzuzeigen, werden wieder nur Excel-Dateien angezeigt.

Excel VBA GetOpenFileName - Beispiel # 2

Auf die gleiche Weise können wir den Dateinamen mit der Endung " .pdf " öffnen. Führen Sie die folgenden Schritte aus, um GetOpenFileName in Excel VBA zu verwenden:

Schritt 1: Schreiben Sie jetzt noch einmal den Code, den wir in Beispiel-1 gesehen haben.

Code:

 Sub OpenFile1 () Dim A As String A = Application.GetOpenFilename () MsgBox A End Sub 

Schritt 2: Wir werden zum selben Fenster oder zum selben Ordner navigieren. Wählen Sie nun eine der PDF-Dateien aus und klicken Sie auf Öffnen.

Es gibt uns den Pfad der ausgewählten Datei.

Schritt 3: Um die ausgewählte PDF-Datei abzurufen, schreiben Sie in der FileFilter-Syntax "PDF-Dateien" anstelle von "Excel-Dateien" und wählen Sie die Erweiterung von PDF aus, die " .pdf " lautet (siehe unten).

Code:

 Sub OpenFile1 () Dim A As String A = Application.GetOpenFilename (Dateifilter: = "PDF-Dateien, * .pdf") MsgBox A End Sub 

Schritt 4: Kompilieren Sie den Code erneut und führen Sie ihn aus. Wir werden den Browser-Ordner bekommen, um die Dateien zu öffnen. In diesem Fall erhalten wir nur die unten gezeigten Dateien mit der Erweiterung „ .pdf “.

Wenn Sie versuchen, andere Dateiformate zu filtern, können wir wieder nur PDF-Dateien anzeigen, wie unten gezeigt.

Und wenn wir keine Datei auswählen und das Fenster verlassen, wird eine Standardmeldung mit dem Wert " Falsch" ausgegeben .

Vorteile von Excel VBA GetOpenFileName

  • Mit VBA GetOpenFileName können wir die Datei direkt öffnen, ohne den Pfad dieser Datei in VBA-Code einzufügen.
  • Wir müssen den Pfad der Dateien nicht mehrmals ändern.
  • Das Durchsuchen und Auswählen der Dateien ist so einfach wie das Öffnen in diesem Ordner.

Nachteile von Excel VBA GetOpenFileName

  • Wir müssen die Erweiterung einer Datei ändern, die wir öffnen möchten, wenn sich dies ändert.

Dinge, an die man sich erinnern sollte

  • Ändern Sie die Dateierweiterung, wenn Sie eine andere Version der Datei öffnen müssen.
  • Message Box mit einer Nachricht als FALSE ist die Standardnachricht, die jedes Mal eingeht, wenn wir keine zu öffnende Datei auswählen.
  • Ein solcher Prozess kann nicht mit Hilfe der Funktion "Makro aufzeichnen" erstellt werden.
  • Denken Sie daran, die Datei als Makro-fähiges Excel-Format zu speichern. Damit bleibt der geschriebene VBA-Code erhalten.

Empfohlene Artikel

Dies ist eine Anleitung zu VBA GetOpenFileName. Hier erfahren Sie, wie Sie eine Datei mit der Anwendung GetOpenFileName in Excel mithilfe von VBA-Code öffnen. Außerdem werden einige praktische Beispiele und eine herunterladbare Excel-Vorlage vorgestellt. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. VBA Find and Replace (Beispiele)
  2. Gruppenarbeitsblätter In Excel
  3. VBA-Arbeitsmappe
  4. Zellbezüge in Excel

Kategorie: