Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1756to1760
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ordnerstruktur

Ordnerstruktur
11.05.2020 08:54:59
Blue
Servus liebe Gemeinde,
ich bräuchte mal wieder eure Hilfe bei einem Makro.
Es geht um das Thema Ordnerstruktur einlesen.
Ich habe dazu schon vieles gefunden aber nicht das 100% passenden für mich.
Daher hoffe ich das mir mal wieder eine von euch helfen kann.
Folgende Lösung bräuchte ich;
ein Makro was mir in einem vordefinierten Pfad die Ordner (keine weiteren Unterordner) ausliest und ab A2 untereinader auflistet.
mfg Blue Bird

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ordnerstruktur
11.05.2020 09:08:29
Herbert
Hallo,
probier's mal damit:
Option Explicit
Sub Dateiliste1Spaltig()
Dim strFileName As String, strFolder As String, lngRow As Long, objArr As Object
Dim vArr(1 To 1, 1 To 1)
strFolder = "E:\4herber\" '
Servus
AW: Ordnerstruktur
11.05.2020 09:30:34
Blue
Servus Herbert,
das Makro schreibt mir lediglich den Dateinamen der Exceldatei in A2, aber nicht die Ordner aus dem Verzeichniss.
mfg Blue Bird
AW: Ordnerstruktur
11.05.2020 09:43:47
Dieter(Drummer)
Hallo Blue Bird,
evtl hilft dir dieser Code (aus diesem Forum):
Gruß, Dieter(Drummer)
Dim fso, FO, FU, F
Dim lRow As Long
Dim icol As Integer
'Herber: Sub OrdnerAuflisten1()
Set fso = CreateObject("Scripting.FileSystemObject")
Range("A3:F300").ClearContents 'Mx
icol = 0
lRow = 2
GetSubFolders "C:\XyZ" 'Kann geändert werden
End Sub
Function GetSubFolders(pfad)
Set FO = fso.GetFolder(pfad)
Set FU = FO.SubFolders
On Error Resume Next
For Each F In FU
lRow = lRow + 1
icol = icol + 1
Cells(lRow, icol) = F.Name
GetSubFolders F.Path
Next
icol = icol - 1
End Function

Anzeige
AW: Noch eine Variante
11.05.2020 09:46:50
Dieter(Drummer)
Hallo Blue Bird,
hier noch eine Variante aus diesem Forum:
Gruß, Dieter(Drummer)
'Herber: Private Declare Function OemToCharA Lib "user32.dll" _
(ByVal lpszSrc As String, ByVal lpszDst As String) As Long
Public Function ASCIItoANSI(ByVal Text As String) As String
Call OemToCharA(Text, Text)
ASCIItoANSI = Text
End Function
Sub Ordner_Auflisten2()
Dim objShell As Object, objExec As Object
Dim vntRet As Variant, strFolder As String, strTMP As String
strFolder = "C:\XyZ\" 'anpassen
Set objShell = CreateObject("WScript.Shell")
ChDrive Left(strFolder, 1)
ChDir strFolder
Set objExec = objShell.Exec("cmd /c dir /s /b /a:d *.*")
strTMP = ASCIItoANSI(objExec.StdOut.ReadAll)  'Idee von Bernd (bst)
vntRet = Split(strTMP, vbCrLf)
If UBound(vntRet) > 0 Then Tabelle1.Range("F3").Resize(UBound(vntRet) + 1, 1) = Application.  _
_
Transpose(vntRet)
Set objExec = Nothing
Set objShell = Nothing
End Sub

Anzeige
AW: Ordnerstruktur
11.05.2020 11:55:24
Günther
Moin,
mit deiner Version geht das ganz prächtig auch ohne VBA/Makro…
Gruß
Günther
AW: Ohne VBA/Makro?
11.05.2020 13:43:49
Dieter(Drummer)
Hallo Günther,
wie machst Du das OHNE VBA/Makro?
Gruß, Dieter(Drummer)
Günther meint mit Power-Query-owT
11.05.2020 14:40:50
Helmut
AW: Danke Helmut für Info und ...
11.05.2020 15:01:25
Dieter(Drummer)
... ohne Power-Query, das ja nicht jeder hat, ist ein Makro dann doch eine Lösung ;-).
Gruß, Dieter(Drummer)
Aber der TE hat…
11.05.2020 15:41:59
Günther
… doch mit der Version 2016 PQ integriert. Und ja, in Versionen vor 1010 ist VBA gewiss die einzig sinnvolle Lösung. - Hinweis: Meinen Beitrag in voller Länge hatte ich verfasst, bevor ich den Mutter-Beitrag hierüber gelesen hatte.
Gruß
Günther
Anzeige
AW: Danke Günther ...
11.05.2020 17:24:13
Dieter(Drummer)
... für weitere Infos. Ich habe kein Power-Query und nutze deshalb VBA, da Excel vor 2010.
Noch einen erfreulichen Tag.
Gruß, Dieter(Drummer)
AW: Ohne VBA/Makro?
11.05.2020 15:26:53
Günther
Moin Dieter,
es wird dich nicht wundern, dass ich (wie so oft) Power Query dafür verwende. ;-)
Daten-Daten abrufen-Aus Datei-aus Ordner und dann die Start-Ebene im Dialog auswerten. Den Rest siehst du dann auch im verlinkten File. Ich habe bewusst einen neutralen Ordner und dort eine nicht zu tiefe Verschachtelung ausgewählt; bei den Einzelschritten erkennst du, dass die weiteren Verzweigungen abgeschnitten sind. Bei Unklarheiten gerne nachfragen ...
=> https://my.hidrive.com/lnk/lFgmDoXZ
Gruß
Günther
-.-.-.-

Da ich mich nicht mehr über den "eigenwilligen" Hindernislauf beim Foren-Upload ärgern will, stelle ich meine Uploads hier nur noch in meiner DE-Cloud zur Verfügung. Den Link findest du im Beitrags-Text. Abrufe sind natürlich freiwillig und werden selbstredend nicht ausgewertet.


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige