Clever-Excel-Forum

Normale Version: Liste aller in einem Ordner befindlichen Dateien auflisten
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hi,

ich habe neulich hier im Forum eine Möglichkeit gesehen, wie ich eine Liste aller in einem Laufwerks-Ordner befindlichen Dateien in Excel (mit Links) auflisten kann.

Jetzt brauche ich das und finde es nicht mehr. Kann mir bitte jemand den VBA-Code zeigen?
Hi Ralf,

hab's hier auch nicht gefunden - hilft dir eventuell diese Seite
Dateiupload bitte im Forum! So geht es: Klick mich!
weiter?
Hallo,

versuche mal


Code:
cmd:>dir /s D:*.* > c:\temp\meineListe.txt


Um das direkt aus VBA auszuführen, schlage bei snb "befüllen einer ComboBxo" nach.

mfg
Code:
Sub M_snb()
    sn = Split(CreateObject("wscript.shell").exec("cmd /c dir ""G:\OF\aarhus\*.xls*"" /b/s").stdout.readall, vbCrLf)
    
    For j = 0 To UBound(sn) - 1
       Sheet1.Hyperlinks.Add Cells(j + 1, 1), sn(j), , , Dir(sn(j))
    Next
End Sub

oder
PHP-Code:
Sub M_snb()
 
   c00="G:\OF\aarhus\"
    sn = Split(CreateObject("
wscript.shell").exec("cmd /c dir """ & c00 & "*.xls*"" /b/s").stdout.readall, vbCrLf)
    
    For j = 0 To UBound(sn) - 1
       Sheet1.Hyperlinks.Add Cells(j + 1, 1), sn(j), , , Dir(sn(j))
    Next
End Sub 
Hi,

mit beiden Codes von snb kam "Objekt erforderlich".

Mit dem Link von Günter fand ich folgenden Code, der funktioniert hat:
Code:
Sub GetFileNames()
  Dim xRow As Long
  Dim xDirect$, xFname$, InitialFoldr$
  InitialFoldr$ = "C:\"
  With Application.FileDialog(msoFileDialogFolderPicker)
     .InitialFileName = Application.DefaultFilePath & "\"
     .Title = "Please select a folder to list Files from"
     .InitialFileName = InitialFoldr$
     .Show
     If .SelectedItems.Count <> 0 Then
        xDirect$ = .SelectedItems(1) & "\"
        xFname$ = Dir(xDirect$, 7)
        Do While xFname$ <> ""
           ActiveCell.Offset(xRow) = xFname$
           xRow = xRow + 1
           xFname$ = Dir
        Loop
     End If
  End With
End Sub

Wie bekomme ich denn da noch einen Link zu der Datei rein?
So kommt ein "Anwendungs- oder objektorientierter Fehler":
Code:
...
         Do While xFname$ <> ""
            ActiveCell.Offset(xRow) = xFname$
            ActiveCell.Offset(xRow, 1).FormulaLocal = "=hyperlink(C:\temp\" & xFname$ & "," & xFname$ & ")"
            xRow = xRow + 1
            xFname$ = Dir
         Loop
...
Moin,

ich gehe da einen etwas anderen Weg (Get and transform = Power Query). Schau mal hier nach: http://www.excel-ist-sexy.de/alle-dateie...auflisten/ da ist das einschließlich der Hyperlinks beschrieben.
Du arbeitest in Windows, oder ?

Was passiert mit ?

Code:
Sub M_snb()
    set sn=createobject("wscript.shell")
End sub

Und hast du 'Sheet1' beobachtet ? ändere in sheets(1), Blatt1, Sheets("Tabelle1"), Tabelle1 oder was in deinem Excel richtig ist.
Hi,

(24.04.2018, 12:28)snb schrieb: [ -> ]Und hast du 'Sheet1' beobachtet ? ändere in sheets(1), Blatt1, Sheets("Tabelle1"), Tabelle1 oder was in deinem Excel richtig ist.

ooh, peinlich: jetzt geht es.

Schön, da werden gleich die Hyperlinks eingefügt.

Nun habe ich noch zwei Sachen:

Anstatt den Umlauten stehen andere Buchstaben:
š statt Ü und Ž statt Ä
Wie umgehe ich das?

Wie kann ich den freundlichen Namen (= Dateinamen) in den Hyperlink einfügen/ändern?
Wie willst du die freundliche Namen ändern ?
Hi,

ich will statt der Anzeige des kompletten Pfads mit Dateiname nur den Dateinamen angezeigt bekommen.

Manuell habe ich es in einer weiteren Spalte so gemacht:
=HYPERLINK("T:\temp\" & B5;B5)
und in B5 steht dann der Dateiname.
Seiten: 1 2