Clever-Excel-Forum

Normale Version: Makro: Ordner erstellen dynamische Laenge
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Morgen und Hallo,

ich bin neu hier und haette eine Frage bzgl. eines kleinen Makros zum erstellen von Ordnern, ob ich es auch dynamisch zB mit lngrow oder aehnlichem hinbekommen koennte:

Sub CreateFolderBasedCells()
'This Macro creates folders using cells values
'Iterate through each cell in cell range B2:B200 and save to variable
For Each cell In Range("D3:D3")
'Check if Folder is non-existing
If Dir(cell, vbDirectory) = "" Then
'Create Folder based on content in variable cell
MkDir cell
End If
'Continue with next cell
Next cell
End Sub


Habe momentan nur etwas in Zelle D3 stehen, aber generell waere es eine Liste von mehreren Hundert Zeilen, die jeden Monat in Form von Ordner zu erstellen und Dateien zu kopieren sind.

Gruss
Matthias
Hallo Matthias,

z.B. so:
Sub CreateFolderBasedCells()
'This Macro creates folders using cells values
'Iterate through each cell in cell range B2:B200 and save to variable
For Each cell In Range("D3:D" & Application.Max(3, Cells(Rows.Count, 4).End(xlUp).Row))
If Len(cell.Value) Then
'Check if Folder is non-existing
If Dir(cell, vbDirectory) = "" Then
'Create Folder based on content in variable cell
MkDir cell
End If
End If
'Continue with next cell
Next cell
End Sub
Gruß Uwe
Hallo,

die Frage nach "lngroow":

Ja, man kann auch schreiben:

Code:
for i = 10 to 20
     mkdir cells(i, 1)
next

Wichtig ist, dass in den Zellen gültige Pfadnamen stehen.

mfg

Hallo,

es gibt Alternativen, hier eine relativ einfachere:

Code:
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
ByVal DirPath As String) As Long

Sub Ordner_pruefen_anlegen()
ordner = "c:\users\xxxxx\desktop\test\2020\" ' <<< anpassen >>>

MakeSureDirectoryPathExists ordner

End Sub

Anstelle von "Ordner" müssen die Inhalte der Zellen stehen.

Falls ein Ordner bereits existiert, passiert nichts, auch kein Fehler. Es können direkt auch Unterordner angelegt werden.

mfg
Hallo Uwe,

super, vielen Dank, die werde ich ausprobieren. So etwas aenliches hatte ich, glaube ich, bei einem Makro mit kopieren und umbenennen gesehen.


Hallo Fennek,

vielen Dank fuer die beiden Vorschlaege. Bei dem ersten mit den Pfaden muss ich ausprobieren wie es funktioniert. DAs sagt mir nichts, ich habe erst angefangen mich mit Macros zu beschaeftigen. Mit den Pfaden hatte ich bereits beim Erstellen Probleme.
Der direkte Serverpfad funktionierte nicht bzw. mal nicht mal doch, die Netzlaufwerkverknuepfung aus dem Win Expl. bis dato gut und schneller. 

Bei dem zweiten muss ich reinschauen, habe gelesen es handelt sich um API, bin gespannt wie es funktioniert.

Gruss
Matthias