Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Ordner auswählen

Ordner auswählen
A.B.
Hallo Forum.
Mit Application.getopenfilename kann ich eine Datei auswählen usw.
Gibt es eine Möglichkeit einen Ordner auszuwählen ?
z.B Application.getopenpath
Ideen ?
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Ordner auswählen
17.02.2011 20:40:44
Rudi
Hallo,
ab XL2000:
Sub ttt()
Dim sPfad As String
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "Test"
If .Show = -1 Then
sPfad = .SelectedItems(1)
MsgBox sPfad
End If
End With
End Sub

Gruß
Rudi
AW: Ordner auswählen
17.02.2011 20:52:31
A.B.
Super,
genau diesen Befehl hatte ich gesucht.
Gibt es noch die Möglichkeit einen Pfad als default zu definieren ?
Anzeige
AW: Ordner auswählen
17.02.2011 22:43:56
Josef

Hallo A.B.,
Sub ttt()
  Dim sPfad As String
  With Application.FileDialog(msoFileDialogFolderPicker)
    .Title = "Test"
    .InitialFileName = "E:\temp\" 'Startverzeichnis mit \ am Ende
    If .Show = -1 Then
      sPfad = .SelectedItems(1)
      MsgBox sPfad
    End If
  End With
End Sub


Gruß Sepp

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Ordner in Excel VBA auswählen


Schritt-für-Schritt-Anleitung

Um einen Ordner in Excel mit VBA auszuwählen, kannst Du den folgenden Code verwenden. Dieser nutzt die Application.FileDialog-Methode:

Sub OrdnerAuswaehlen()
    Dim sPfad As String
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "Ordner auswählen"
        If .Show = -1 Then
            sPfad = .SelectedItems(1)
            MsgBox "Der ausgewählte Ordner ist: " & sPfad
        End If
    End With
End Sub

Wenn Du einen Standardpfad festlegen möchtest, kannst Du den Code wie folgt anpassen:

Sub OrdnerAuswaehlenMitPfad()
    Dim sPfad As String
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "Ordner auswählen"
        .InitialFileName = "E:\temp\" ' Setze dein Startverzeichnis hier
        If .Show = -1 Then
            sPfad = .SelectedItems(1)
            MsgBox "Der ausgewählte Ordner ist: " & sPfad
        End If
    End With
End Sub

Häufige Fehler und Lösungen

Fehler 1: "Der Befehl ist ungültig."

Lösung: Stelle sicher, dass Du die richtige Excel-Version verwendest (ab XL2000). Der msoFileDialogFolderPicker ist in früheren Versionen nicht verfügbar.

Fehler 2: "Kein Ordner ausgewählt."

Lösung: Überprüfe, ob die .Show-Methode korrekt aufgerufen wird und dass Du tatsächlich einen Ordner auswählst, bevor Du das Skript beendest.


Alternative Methoden

Wenn Du mit Application.getopenfilename arbeitest, kannst Du nur Dateien auswählen. Wenn Du jedoch einen Ordner auswählen möchtest, ist die Verwendung von Application.FileDialog der einzige Weg. Es gibt keine direkte Methode, um Ordner mit Application.getopenfilename auszuwählen.

Eine Alternative wäre, einen Dialog über die Windows API zu erstellen, was jedoch komplexer ist und zusätzliche Programmierkenntnisse erfordert.


Praktische Beispiele

  1. Ordner für Backups wählen: Du kannst die Methode nutzen, um einen Backup-Ordner auszuwählen und dann alle wichtigen Dateien in diesen Ordner zu kopieren.

  2. Bilder importieren: Wenn Du Bilder in Excel importieren möchtest, kannst Du einen Ordner auswählen und alle Bilder daraus in ein Arbeitsblatt einfügen.

Hier ist ein Beispiel, das alle Bilder aus einem ausgewählten Ordner importiert:

Sub BilderImportieren()
    Dim sPfad As String
    Dim Datei As String
    Dim Bild As Object

    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "Ordner mit Bildern auswählen"
        If .Show = -1 Then
            sPfad = .SelectedItems(1) & "\"
        End If
    End With

    Datei = Dir(sPfad & "*.jpg") ' Ändere die Erweiterung nach Bedarf
    Do While Datei <> ""
        Set Bild = ActiveSheet.Pictures.Insert(sPfad & Datei)
        Bild.Top = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Top
        Datei = Dir
    Loop
End Sub

Tipps für Profis

  • Verwende die .InitialFileName-Eigenschaft, um den Dialog direkt im gewünschten Verzeichnis zu öffnen.
  • Kombiniere die Auswahl von Ordnern mit anderen VBA-Funktionen, um Workflows zu automatisieren.
  • Achte darauf, die gewählten Pfade in Variablen zu speichern, um sie später im Code zu verwenden.

FAQ: Häufige Fragen

1. Wie kann ich den ausgewählten Ordnerpfad speichern?
Du kannst den Ordnerpfad in einer Variablen speichern, wie im obigen Beispiel gezeigt. Alternativ kannst Du ihn in einer Zelle auf einem Arbeitsblatt speichern.

2. Gibt es eine Möglichkeit, den Dialog zu erweitern, um auch mehrere Ordner auszuwählen?
Leider unterstützt der msoFileDialogFolderPicker nur die Auswahl eines einzelnen Ordners. Für mehrere Ordner müsstest Du eine benutzerdefinierte Lösung entwickeln.

3. Welche Excel-Version benötige ich für die Verwendung von Application.FileDialog?
Die Methode ist ab Excel 2000 verfügbar. Stelle sicher, dass Du eine unterstützte Version verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige