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.

Dateianzahl im Verzeichnis mit Kriterium bestimmen
#1
Hallo liebe Leute,
Mit folgendem Programmcode lässt sich die Anzahl der Dateien im Verzeichnis Test auslesen und bestimmen:

Sub Dateianzahl()
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
MsgBox fso.GetFolder("C:\Test").Files.Count
Set fso = Nothing
End Sub

Ich suche nun nach einer Möglichkeit nur Dateien zu zählen, die
in ihrem Namen ein bestimmtes Merkmal enthalten, also z.B. die ein XYZ in ihrem Namen
enthalten. Hat jemand von euch eine Idee wie so etwas gehen könnte?
Antworten Top
#2
Hallo Kathrin,

mit der klassischen Dir-Funktion z.B. so:

Code:
Sub Dateianzahl()
  Dim lngZ As Long
  Dim strErgebnis As String
  Dim strPfad As String
  Dim strSuche As String
  
  strPfad = "C:\test\"
  strSuche = "*xyz*"
  
  strErgebnis = Dir(strPfad & strSuche)
  Do While strErgebnis <> ""
    lngZ = lngZ + 1
    strErgebnis = Dir
  Loop
  
  MsgBox lngZ
End Sub

Gruß Uwe
Antworten Top
#3
Hallo Kathrin,

da wirst Du wohl oder übel eine Schleife über die enthaltenen Dateien legen müssen und einen Counter hochzählen ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#4
Hallo Kathrin,

geht natürlich auch mit der von Dir begonnenen Verwendung des fso Smile

Code:
Sub CountMP3()
'Verweis auf Windows Script Host Object Model setzen!
Dim fso As Object
Dim objFolder As Folder
Dim objFile As File
Set fso = CreateObject("Scripting.FileSystemObject")
Set objFolder = fso.GetFolder("D:\Test")
For Each objFile In objFolder.Files
  If LCase$(fso.GetExtensionName(objFile)) = "mp3" Then iCnt = iCnt + 1
Next
MsgBox iCnt & " mp3-Dateien gefunden!"
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


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