Registriert seit: 12.06.2020
Version(en): 2010, 2016, 365
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
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
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
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28
• mabro
Registriert seit: 06.12.2015
Version(en): 2016
03.07.2020, 12:18
(Dieser Beitrag wurde zuletzt bearbeitet: 03.07.2020, 12:48 von Fennek.)
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
Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:1 Nutzer sagt Danke an Fennek für diesen Beitrag 28
• mabro
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• mabro
Registriert seit: 12.06.2020
Version(en): 2010, 2016, 365
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