Clever-Excel-Forum

Normale Version: Aus Tabelleninhalten Ordner erstellen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen,

habe ein kleineres Problem ( für mich groß).
Kann man aus einer Tabelle Daten zur erstellung eines Ordners benutzen. Habe die Tabelle angehängt. Folgendes möchte Ich erreichen.

Tabelle A_TabelleB_Tabelle C_ Tabelle D
sieht dann wie folgt aus
6_00_00_Dach, Fassade, Ausbau
Speicherort ?


kann man das Anhand eines Makros realisieren, wenn möglich die ganze Tabelle in einem Rutsch als OOrdner anlegen.

Danke schon im voraus :19: :19:
Hallo!

Zitat:Speicherort ?
Ich gebe noch zwei ?? dazu und frage Dich:

Welcher Ordner soll denn jetzt bei 
6_00_00_Dach, Fassade, Ausbau
erstellt werden?
C:\
   6\
     00\
        00\
            Dach, Fassade, Ausbau
Gruß Ralf
für jede Zeile ein Ordner
Gib Dir bloß keine Mühe, in ganzen Sätzen zu antworten!  :@

Du willst also C:\6_00_00_Dach, Fassade, Ausbau\
und nicht C:\6\00\00\ Dach, Fassade, Ausbau\

… und behältst dennoch den Überblick in Deiner Ordnerstruktur?

Fragt sich mit einem freundlichen Gruß
Ralf
Sorry wenn die Sätze zu kurz gehalten sind.

Die folgende Ordnerstruktur wäre die beste Lösung

6_00_00_Dach, Fassade, Ausbau\

die Übersicht denke wird wie bei anderen Laufwerken sein.

Hast du vielleicht erfahrung ob man leere Ordner einfärben kann ( oder so ähnlich), wäre eine Möglichkeit wegen der übersichtlichkeit.
Bevor ich Tipps für die Tonne gebe, Name?
z.B. D79: Klapp- / Dreh- / Faltläden
Der Slash ist unzulässig, die Umlaute kritisch.
Wie verfahren?
(die letzte Frage war kein kompletter Satz)
Zitat:leere Ordner
Woher soll ich wissen, ob Dateien vorhanden sind?

Gruß Ralf
Nur, damit Du nicht meinst, hier würde nicht geholfen:
ABCDE
160000Dach, Fassade, Ausbau I:\Spass\6_00_00_Dach, Fassade, Ausbau\
261000DachI:\Spass\6_10_00_Dach\
361100Tragschale DachI:\Spass\6_11_00_Tragschale Dach\
461110Trapezblech DachI:\Spass\6_11_10_Trapezblech Dach\
Formeln der Tabelle
ZelleFormel
E1="I:\Spass\"&A1&"_"&B1&"_"&C1&"_"&GLÄTTEN(WECHSELN(D1;"/";"_"))&"\"

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Modul Modul1
Option Explicit 
 
Sub MakeDirectories() 
Dim i As Long 
On Error Resume Next 
MkDir "I:\Spass\" 
For i = 1 To Cells(1, 5).End(xlDown).Row 
   If Dir(Cells(i, 5)) = "" Then MkDir Cells(i, 5) 
Next 
End Sub 

Dateiupload bitte im Forum! So geht es: Klick mich!
src="
Dateiupload bitte im Forum! So geht es: Klick mich!
" />

Gruß, Ralf
Hallo Ralf,

vielen, vielen Dank. Hat Super geklappt du hast mir eine Menge Arbeit abgenommen.
Hätte jetzt noch eine kleine Nebenfrage zu dem schon gelösten Problem.
Kann man das Makro noch so umschreiben dass bei der Ausführung des Makros jedem erstellten Ordner noch folgende Unterordner eingesetzt werden z.B
6_00_00_Dach, Fassade, Ausbau\01-Kommunikation
6_00_00_Dach, Fassade, Ausbau\02-Auftrag
6_00_00_Dach, Fassade, Ausbau\03-Rechn-Aufmasse
6_00_00_Dach, Fassade, Ausbau\04-Taglohn
6_00_00_Dach, Fassade, Ausbau\05-Bautagebuch
6_00_00_Dach, Fassade, Ausbau\06-Nachweise

Das wäre ne Bombe wenn das noch klappen würde.

Danke im voraus.

Zweifel dass in diesem Forum nichts gemacht wird hatte Ich noch nie

:18: :18: :18: :18: :19: :19: :19: :19: :19:
Mahlzeit!
2.148 Ordner in einer Sekunde erstellt.
Achtung: Ich habe das schnellere Laufwerk G:\ benutzt, Du musst anpassen!
(Meine Arbeit hat natürlich länger gedauert)
Du kannst ja freiwillig etwas an eine gemeinnützige Institution Deiner Wahl spenden.

Modul Modul1
Option Explicit 

Sub MakeDirectories()
Dim i As Long, k As Long, arrTemp
Dim Start As Double
Start = Timer
arrTemp = Split("01-Kommunikation 02-Auftrag 03-Rechn-Aufmasse 04-Taglohn 05-Bautagebuch 06-Nachweise")
On Error Resume Next
MkDir "G:\Spass\"
For i = 1 To Cells(1, 5).End(xlDown).Row
  MkDir Cells(i, 5)
  For k = 0 To 5
     MkDir Cells(i, 5) & arrTemp(k) & "\"
  Next
Next
Debug.Print Timer - Start
End Sub

[attachment=4731]

Gruß Ralf
Code:
sub M_snb()
  sn=columns(5).specialcells(2)
  c00="~\01-Kommunikation ~\02-Auftrag ~\03-Rechn-Aufmasse ~\04-Taglohn ~\05-Bautagebuch ~\06-Nachweise"

  with CreateObject("shell.application").Namespace("G:")
    for j =1 to ubound(sn)
      sp=split(replace(c00,"~",sn(j,1)))
      for each it in sp
       .NewFolder "Spass\" & it
      next
    next
  end with
end sub
Seiten: 1 2