Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Liste aller in einem Ordner befindlichen Dateien auflisten
#1
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?
Antworten Top
#2
Hi Ralf,

hab's hier auch nicht gefunden - hilft dir eventuell diese Seite
Dateiupload bitte im Forum! So geht es: Klick mich!
weiter?
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
[-] Folgende(r) 1 Nutzer sagt Danke an WillWissen für diesen Beitrag:
  • Rabe
Antworten Top
#3
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
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • Rabe
Antworten Top
#4
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 
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • Rabe
Antworten Top
#5
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
...
Antworten Top
#6
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.
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Antworten Top
#7
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.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#8
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?
Antworten Top
#9
Wie willst du die freundliche Namen ändern ?
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#10
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.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste