Live-Forum - Die aktuellen Beiträge
Datum
Titel
19.04.2024 12:23:24
19.04.2024 11:45:34
Anzeige
Archiv - Navigation
1828to1832
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

Nummern in Ordern suchen & Pfad einlesen

Nummern in Ordern suchen & Pfad einlesen
29.04.2021 12:14:11
Timo
Hallo zusammen,
ich bräuchte einmal euer Schwarmwissen und bedanke mich vorab für eure Hilfe.
Ich habe in Spalte A von A2 bis "aktuell A12" Projektnummern eingetragen.
Ich weiß, dass in der 4. Ebene meiner Verzeichnisstruktur:

C:\Daten\Hallen\"hier sind unterschiedlichste Ordner"\ ... hier möchte ich suchen
diese Nummern "ein Teil" des Ordnernamens sind. Da häufig Nummern in dieser Liste ergänzt werden, würde ich nun gern diese Nummern im 4. Pfad meiner Verzeichnisstruktur suchen lassen und den kompletten Pfad bis zu dieser 4. Ebene in Spalte B zu jeder Projektnummer ergänzen lassen.
Könnt ihr mir dabei helfen? Das wäre klasse :-)
Danke und viele Grüße
Timo

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

Betreff
Datum
Anwender
Anzeige
AW: Nummern in Ordern suchen & Pfad einlesen
29.04.2021 12:53:38
Timo
Servus MCO,
danke für deine Hilfe, ich hatte mir den auch schon vorab angeschaut, aber meine VBA Kenntnisse reichen nicht aus um die "Finde und trage in Spalte B ein" zu ergänzen.

Sub Daten_aktualisieren()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim ZielID As Workbook
Dim Ursprung As Workbook
Dim Pfad_var As String
Dim Pfad As String
Set ZielD = ActiveWorkbook
Pfad_var = "\\U:\Daten\Hallen\"
For Each cl In Range("A:A").SpecialCells(xlCellTypeConstants) 'Ordnernamen durchgehen
Pfad = Pfad_var & "U:\Daten\Hallen" & cl.Value 'kompl. Pfad bestimmen
Dim Fso As Object
Dim SearchFolder As Object
Dim FD As Object, FI As Object
Dim EachFil As Object
'Set Fso = CreateObject("Scripting.Filesystemobject")
Set SearchFolder = Fso.GetFolder(Pfad)
ActiveWorkbook.Sheets("Projektliste").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0) = Folder(Pfad) ' Suchbegriff einlesen
Next
Application.DisplayAlerts = True 'WICHTIG! Wieder einschalten!
End Sub
Hier gibt er mir den Fehler in der Zeile " Set SearchFolder = Fso.GetFolder(Pfad)".
Oha, jetzt ist mein Versuch öffentlich und ihr Spezis kommt vor lachen nicht in den Schlaf :-).
VG
Timo
Anzeige
AW: Nummern in Ordern suchen & Pfad einlesen
29.04.2021 13:40:12
Fennek
Hallo,
alle Dateinenaman mit dem Ornden kann Powershell so auslesen:

$Pfad = 'c:\temp' # anpassen #
[array]$L = @()
foreach ($f in Get-ChildItem -Path $Pfad -Recurse)  {$L += $f.fullname.Split('\')[-2] + "|" +$f.name}
$L | Out-File 'c:\users\[user]\desktop\iDir.txt'
mfg
AW: Nummern in Ordern suchen & Pfad einlesen
30.04.2021 07:52:05
MCO
Hallo Timo!
Ich gebe zu, das war eine Anpassung, die konntest du nicht machen: Der Ordnername ist ja gesucht, nicht die Daten im Ordner.
Dennoch bietet die Recherche bei HERBER einiges an Möglichkeiten.
Ich habe dir das Makro mal auf deine Bedürfnisse geändert und vereinfacht.
Tip: Ist dein Problem nicht gelöst, setze den Vorgang auf "Offen"(Kästchen oberhalb des Beitragtextes)! Ansonsten wird deine Antwort wahrscheinlich übersehen.

Sub Daten_aktualisieren()
Application.ScreenUpdating = False
Dim pfad As String
Dim Fso As Object, SearchFolder As Object, ordn As Object
Dim cl As Range
pfad = "\\U:\Daten\Hallen\"
For Each cl In Range("A2:A99").SpecialCells(xlCellTypeConstants) 'Ordnernamen durchgehen
Set Fso = CreateObject("Scripting.Filesystemobject")
Set SearchFolder = Fso.GetFolder(pfad)
Set Ordnerliste = SearchFolder.subfolders
For Each ordn In Ordnerliste
If InStr(ordn.Name, cl) > 0 Then
cl.Offset(0, 1) = ordn.Path
Exit For
End If
Next ordn
Next
End Sub
Viel Erfolg!
Gruß, MCO
Anzeige
AW: Nummern in Ordern suchen & Pfad einlesen
04.05.2021 19:29:48
Timo
Hallo MCO,
erst einmal vielen Danke für deine Hilfe und sorry, dass ich mich jetzt erst zurück melde, alles irgendwie drunter und drüber im Moment.
Ich bekomme leider einen Laufzeitfehler '76' "Pfad nicht gefunden" bei der Zeile:

Set SearchFolder = Fso.GetFolder(pfad)
Hast du da evtl. noch einen Tipp für mich?
Danke und viele Grüße
Timo

228 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige