VBA: Datei, Verzeichnis und Explorer-Funktionen

Zusammenfassung

Sie lernen eine Klasse kennen, die Methoden und Eigenschaften zum Auswählen von Dateien und Verzeichnissen liefert.

Techniken

Klassen, Dateiauswahl

Voraussetzungen

Access 97 oder höher

Beispieldateien

Dateien_Beispiel97.mdb

Dateien_Beispiel00.mdb

Filedialog.cls

André Minhorst, Duisburg

Das Auswählen von Dateien ist auch mit dem seit Access XP beziehungsweise Office XP zur Verfügung stehenden Filedialog-Objekt noch lange kein Zuckerschlecken. Mit einer im Internet frei verfügbaren Klasse lassen sich Dialoge zum Auswählen von Dateien und Verzeichnissen mit Access ab Version 97 anzeigen.

Viele Access-Anwendungen benötigen eine Möglichkeit, Dateien oder Pfade auszuwählen. Seit Access XP bietet Access dazu ein Objekt – das aber nicht für alle Fälle geeignet ist. So lässt sich etwa kein Dialog zum Speichern von Dateien anzeigen.

Abhilfe schafft die etablierte Filedialog-Klasse von Karsten Pries (http://www.kpries.de/Entwicklertools/filedialog.htm). Sie ist unter allen gängigen Access-Versionen einsetzbar und bietet Dialoge zum Auswählen von Verzeichnissen, zu öffnenden und zu speichernden Dateien.

Importieren der Klasse

Die Klasse lässt sich leicht in eigene Anwendungen integrieren. öffnen Sie einfach das VBA-Projekt der Anwendung und importieren Sie den Inhalt der Datei Filedialog.cls in ein neues, leeres Klassenmodul.

Einsatz der Klasse

Die Klasse Filedialog bietet Methoden und Eigenschaften, um Dateiauswahldialoge anzuzeigen und den eigenen Wünschen anzupassen. Mit den in Quellcode 1 abgedruckten Zeilen machen Sie die Klasse in einer Routine verfügbar.

Quellcode 1: Filedialog-Objekt instanzieren

Public Sub Filedialogbeispiel()
    Dim objFiledialog As clsFiledialog
    Set objFiledialog = New clsFiledialog
    ''... Filedialog verwenden
    Set objFiledialog = Nothing
End Sub

Auswahldialoge

Das Objekt bietet drei verschiedene Dialoge an. Jeden Dialog ruft man mit einer anderen Methode auf, die per IntelliSense angeboten wird (siehe Bild 1).

Bild 1: Auswahl einer Methode zum Anzeigen eines Dialogs

Mit diesen drei Anweisungen lässt sich auch die kürzeste Fassung des Aufrufs bewerkstelligen. Die folgende Anweisung zeigt einen Datei auswählen-Dialog an und gibt anschließend den Namen der ausgewählten Datei aus:

Bild 2: Beispielformular zum Anzeigen eines Datei auswählen-Dialoges

Bild 3: Datei auswählen-Dialog

MsgBox objFiledialog.ShowOpen

An der Anzeige des Dialogs lassen sich noch einige Anpassungen vornehmen.

Quellcode 2: Anzeige eines Dateidialogs und übernahme der ausgewählten Datei in ein Textfeld

Private Sub cmdAuswaehlen_Click()
    Dim objFiledialog As clsFiledialog
    Set objFiledialog = New clsFiledialog
    With objFiledialog
        .DialogTitle = "Datei auswählen"
        .Filter1Suffix = "*.*"
        .Filter1Text = "Alle Dateien"
        Me!txtDatei = .ShowOpen
    End With
    Set objFiledialog = Nothing
End Sub

Sie haben das Ende des frei verfügbaren Textes erreicht. Möchten Sie ...

TestzugangOder bist Du bereits Abonnent? Dann logge Dich gleich hier ein. Die Zugangsdaten findest Du entweder in der aktuellen Print-Ausgabe auf Seite U2 oder beim Online-Abo in der E-Mail, die Du als Abonnent regelmäßig erhältst:

Schreibe einen Kommentar