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

Forumthread: Ordner automatisch erstellen

Ordner automatisch erstellen
28.04.2016 12:37:54
Bernd
Hallo und vorab schon mal DANKE.
Ich möchte gerne aus Excel heraus per VBA-Code einen Ordner anlegen.
der Pfad wäre
C:\Users\A690666\Desktop\
und der Ordner soll heissen
SM(Zelle B2)-(Zelle J2)_(Zelle M2)
(in der Klammer soll der Inhalt Text/Zahlen sein vom "Tabellenblatts 1")
Ergebnis
SM123456789-123456_7FEA
Danke Bernd

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ordner automatisch erstellen
28.04.2016 12:44:35
ChrisL
Hi Bernd
With Worksheets("Tabelle1")
MkDir "C:\Users\A690666\Desktop\SM" & .Range("B2") & "-" & .Range("J2") & "_" & .Range("M2")
End With
cu
Chris

AW: Ordner automatisch erstellen
28.04.2016 13:41:04
Bernd
Perfekt DANKE

AW: Ordner automatisch erstellen
28.04.2016 12:46:25
Michael
Hi Bernd,
lies mal den Forumsbeitrag:
https://www.herber.de/forum/archiv/708to712/708450_Ordner_erstellen_mit_VBA_Code_anpassen.html
Das enthält (für 32-bit-Windows) die *allgemeine* Variante, wie man sicherstellt, daß ein "Unterordner" samt darüberliegender Ordnerstruktur angelegt wird.
Die "kleine" Lösung mit mkdir hat Chris ja zwischenzeiltich gepostet.
Schöne Grüße,
Michael

Anzeige
AW: Ordner automatisch erstellen
28.04.2016 12:51:14
Rudi
Hallo,
Sub aa()
MkDir Environ("userprofile") _
& "\Desktop\SM" & Range("B2") _
& "-" & Range("J2") & "_" & Range("M2")
End Sub

Gruß
Rudi

AW: Ordner automatisch erstellen
28.04.2016 12:52:21
Daniel
Hi
unter der Annahme, dass er Desktopfad besteht:
dim Pfad as String
With Sheets("Tabellenblatt 1")
Pfad = "C:\Users\A690666\Desktop\SM" & .Cells(2, 2).Value & "-" & .Cells(2, 10).Value & "_" & . _
Cells(2, 13).Value
End with
if Dir(pfad, vbDirectory) = "" then MkDir(pfad)

wenn der Pfadname Userspezifisch erstellt werden soll, kannst du den Desktopfad auch ermitteln, hier für WIN7:
Pfad = Environ("Userprofile") & "\Desktop\SM" & .Cells(... und dann weiter wie gehabt.
Gruß Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Ordner automatisch erstellen mit Excel und VBA


Schritt-für-Schritt-Anleitung

Um einen Ordner mit Unterordnern automatisch zu erstellen, kannst du VBA in Excel verwenden. Hier sind die Schritte, die du befolgen musst:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" und wähle "Einfügen" > "Modul".

  3. Kopiere den folgenden Code in das Modul:

    Sub OrdnerErstellen()
       Dim Pfad As String
       With Worksheets("Tabellenblatt 1")
           Pfad = "C:\Users\A690666\Desktop\SM" & _
                  .Range("B2").Value & "-" & _
                  .Range("J2").Value & "_" & _
                  .Range("M2").Value
       End With
       If Dir(Pfad, vbDirectory) = "" Then MkDir Pfad
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus: Gehe zu Entwicklertools > Makros, wähle OrdnerErstellen aus und klicke auf Ausführen.

Dieser Code erstellt den Ordner basierend auf den Werten in den Zellen B2, J2 und M2. Du kannst den Pfad anpassen, um Ordner in anderen Verzeichnissen zu erstellen.


Häufige Fehler und Lösungen

  • Fehler: "Pfad nicht gefunden"

    • Stelle sicher, dass der angegebene Pfad korrekt ist und existiert. Wenn du einen Ordner in einem nicht existierenden Verzeichnis erstellen möchtest, musst du zuerst das übergeordnete Verzeichnis erstellen.
  • Fehler: "Zugriff verweigert"

    • Überprüfe die Berechtigungen des Zielordners. Du benötigst möglicherweise Administratorrechte, um in bestimmten Verzeichnissen zu schreiben.
  • Lösung für Unterordner

    • Wenn du eine Ordnerstruktur mit Unterordnern automatisch erstellen möchtest, kannst du den Code wie folgt anpassen:
    Sub OrdnerMitUnterordnerErstellen()
       Dim HauptOrdner As String
       Dim UnterOrdner As String
       HauptOrdner = "C:\Users\A690666\Desktop\SM" & Range("B2").Value
    
       If Dir(HauptOrdner, vbDirectory) = "" Then MkDir HauptOrdner
    
       UnterOrdner = HauptOrdner & "\" & Range("J2").Value
       If Dir(UnterOrdner, vbDirectory) = "" Then MkDir UnterOrdner
    End Sub

Alternative Methoden

  1. Manuelles Erstellen: Du kannst auch Ordner manuell in Windows Explorer erstellen, wenn du nur gelegentlich einen neuen Ordner benötigst.
  2. Batch-Skripte: Erstelle ein Batch-Skript, um mehrere Ordner auf einmal zu erstellen. In einer .bat-Datei kannst du einfach mkdir-Befehle verwenden.
  3. PowerShell: Verwende PowerShell-Skripte für komplexere Ordnerstrukturen und Automatisierung.

Praktische Beispiele

  • Beispiel 1: Erstelle einen Ordner für jedes Projekt in deiner Excel-Liste.
  • Beispiel 2: Verwende eine Excel-Tabelle, um eine Liste von Kunden zu verwalten und erstelle für jeden Kunden einen Ordner.

Hier ist ein Beispiel, wie du aus einer Excel-Liste automatisch Ordner erstellen kannst:

Sub OrdnerAusExcelListeErstellen()
    Dim Zelle As Range
    Dim BasisPfad As String
    BasisPfad = "C:\Users\A690666\Desktop\Kunden\"

    For Each Zelle In Worksheets("Tabellenblatt 1").Range("A1:A10")
        If Dir(BasisPfad & Zelle.Value, vbDirectory) = "" Then
            MkDir BasisPfad & Zelle.Value
        End If
    Next Zelle
End Sub

Tipps für Profis

  • Fehlerbehandlung: Implementiere Fehlerbehandlung in deinem VBA-Code, um unerwartete Probleme zu vermeiden.
  • Verzeichnisse dynamisch erstellen: Nutze Environ("Userprofile"), um den Benutzerpfad dynamisch zu ermitteln.
  • Dokumentation: Kommentiere deinen Code, um die Nachvollziehbarkeit zu verbessern, insbesondere wenn du komplexe Ordnerstrukturen automatisieren möchtest.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Ordner gleichzeitig erstellen?
Du kannst eine Schleife in deinem VBA-Code verwenden, um durch eine Liste von Ordnernamen zu iterieren und für jeden einen Ordner zu erstellen.

2. Was ist der Unterschied zwischen MkDir und Dir?
MkDir wird verwendet, um neue Ordner zu erstellen, während Dir verwendet wird, um zu überprüfen, ob ein Ordner existiert.

3. Kann ich auch Unterordner erstellen?
Ja, du kannst Unterordner erstellen, indem du den Pfad entsprechend anpasst und mehrere MkDir-Befehle in deinem Code verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige