Collection

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Collection
von: Birgit
Geschrieben am: 16.06.2015 14:27:38

Hallo,
ich möchte eine Collection erstellen, die die Namen aller Dateien eines Ordners zurückgibt. Die Schleife kann ich selbst basteln, aber wie kann man die Dateinamen abrufen? Bislang bin ich soweit gekommen:

Sub test()
Dim Dateien As Collection
Set Dateien = New Collection
'"C:\_Speicher\2015\06"'Ordner der ausgewertet werden soll
'Schleife
'Dateien.Add
'MsgBox "Der Name der Datei ist " + y1$
x2 = Dateien.Count
y2$ = x2
MsgBox "Anzahl ist " + y2$
End Sub

Hat jemand eine Idee?
Viele Grüße, Birgit

Bild

Betrifft: AW: Collection
von: DAEMAN
Geschrieben am: 16.06.2015 15:29:03
Hi Birgit,
also ich hatte das mal so gelöst:


'Finde den Datei-Namen und Datei-Pfad heraus (+Hyperlink)
DocName1 = Right(File, Len(File) - InStrRev(File, "\"))
DocName2 = Left(DocName1, (InStrRev(DocName1, ".") - 1))
ActiveSheet.Hyperlinks.Add Anchor:=Tabelle1.ListRows(Tabelle1.ListRows.Count).Range(1, 1), _
Address:=File, ScreenTip:=File, TextToDisplay:=DocName2
Hier wird der Dateiname ohne Dateiendung angegeben und in eine Tabelle in die 1. Zeile und 1. Spalte eingetragen, zudem wird der Name mit dem Dateipfad gehyperlinkt :-P vielleicht helfen dir ja Teile dieses Codes ;-)
Für mein "File" könntest du dann dein "Dateien" einsetzen denke ich...
Gruß
DAEMAN

Bild

Betrifft: AW: Collection
von: DAEMAN
Geschrieben am: 16.06.2015 15:39:24


Bild

Betrifft: AW: Collection
von: Birgit
Geschrieben am: 16.06.2015 15:56:45
Lieber DAEMAN,
hat leider nicht geklappt, aber trotzdem vielen Dank.
Viele Grüße, Birgit

Bild

Betrifft: AW: Collection
von: DAEMAN
Geschrieben am: 16.06.2015 15:37:27


Bild

Betrifft: AW: Collection
von: Rudi Maintaire
Geschrieben am: 16.06.2015 16:00:40
Hallo,
teste mal:

Sub test()
  Dim Dateien As New Collection
  Dim sFile As String, sPfad As String
  sPfad = "C:\_Speicher\2015\06\" 'Ordner der ausgewertet werden soll
  sFile = Dir(sPfad & "*.*")
  Do While sFile <> ""
    Dateien.Add Dateien.Count + 1, sFile
    sFile = Dir
  Loop
  MsgBox "Anzahl ist " & Dateien.Count
End Sub

Gruß
Rudi

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Collection"