Du solltest vor dem formulieren der Frage schon darüber klar sein ob Du den Dialog Öffnen haben willst oder ob Du was Durchsuchen willst. Was meiner Meinung nach zwei unterschiedliche Sachen sin
Application.Dialogs(xlDialogOpen).Show
Gruß Hajo
ein Klare Aufgabenstellung hilft ungemein.
Mal ala Ansatz
258. Bestimmtes Verzeichnis und *.TXT
Dim strVerzeichnis$
strVerzeichnis = "E:\eigene Dateien"
' Überprüfen ob Verzeichnis vorhanden
If Dir(strVerzeichnis, vbDirectory) <> "" Then ChDir strVerzeichnis Else Exit Sub
dat = Application.GetOpenFilename("Textdateien (*.txt), *.txt")
' Auf die Variable dat wird der Dateinamen geschrieben
If dat <> "Falsch" Then Workbooks.Open dat
Gruß Hajo
Option Explicit
Sub FileName()
Dim strFileName As String
strFileName = Application.GetOpenFilename("Microsoft " & _
"Excel-Dateien (*.xls), *.xls")
If strFileName <> "" Then
MsgBox GetFileName(strFileName) & Space(10), 64, "L.Vira..."
End If
End Sub
Um einen Datei-Auswahl Dialog in Excel VBA zu erstellen, kannst Du die Funktion Application.GetOpenFilename
verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:
Öffne den Visual Basic for Applications (VBA) Editor in Excel. Das machst Du, indem Du ALT + F11
drückst.
Füge ein neues Modul hinzu. Klicke dafür mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ und wähle „Einfügen“ > „Modul“.
Kopiere und füge den folgenden Code ein:
Sub DateiAuswaehlen()
Dim strDatei As String
strDatei = Application.GetOpenFilename("Excel-Dateien (*.xls; *.xlsx), *.xls; *.xlsx", , "Bitte Datei auswählen")
If strDatei <> "Falsch" Then
MsgBox "Ausgewählte Datei: " & strDatei
Else
MsgBox "Keine Datei ausgewählt."
End If
End Sub
Schließe den VBA-Editor und kehre zurück zu Excel.
Füge einen Button hinzu, um das Makro auszuführen. Gehe zu „Entwicklertools“ > „Einfügen“ > „Button (Formularsteuerelement)“ und ziehe einen Button auf Dein Arbeitsblatt.
Weise das Makro zu. Wähle das Makro „DateiAuswaehlen“ aus der Liste aus und klicke auf „OK“.
Teste den Button, indem Du darauf klickst. Der Datei-Auswahl Dialog sollte erscheinen.
Fehler: Der Dialog öffnet sich nicht.
Fehler: "Falsch" wird zurückgegeben.
Es gibt einige alternative Methoden, um einen Datei-Auswahl Dialog zu öffnen:
VBA Dialogfenster verwenden:
GetOpenFilename
kannst Du auch das Dialogfenster direkt öffnen:
Application.Dialogs(xlDialogOpen).Show
Ein Excel-Makro zum Öffnen von Dateien:
Hier sind einige praktische Beispiele, wie Du den Datei-Auswahl Dialog in verschiedenen Szenarien nutzen kannst:
Textdateien auswählen:
Sub TextDateiAuswaehlen()
Dim strDatei As String
strDatei = Application.GetOpenFilename("Textdateien (*.txt), *.txt")
If strDatei <> "Falsch" Then
MsgBox "Ausgewählte Textdatei: " & strDatei
End If
End Sub
Mehrere Dateiformate erlauben:
Sub MehrereFormate()
Dim strDatei As String
strDatei = Application.GetOpenFilename("Alle Dateien (*.*), *.*, Excel-Dateien (*.xls; *.xlsx), *.xls; *.xlsx")
If strDatei <> "Falsch" Then
MsgBox "Ausgewählte Datei: " & strDatei
End If
End Sub
Application.FileDialog(msoFileDialogFilePicker)
für einen erweiterten Dialog, der mehr Anpassungsmöglichkeiten bietet.1. Wie kann ich den Datei-Auswahl Dialog anpassen?
Du kannst die Filteroptionen in der GetOpenFilename
-Funktion anpassen, um verschiedene Dateitypen anzuzeigen.
2. Ist es möglich, einen Dialog zu erstellen, der keine Datei öffnet?
Ja, der GetOpenFilename
-Dialog ermöglicht es, nur den Dateinamen auszuwählen, ohne die Datei zu öffnen.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen