Sub List_MP3_Files()
Dim Folderpath As Variant
Dim Item As Object
Dim oFile As Object
Dim oFolder As Object
Dim oShell As Object
Dim r As Long
Dim Rng As Range
Range("A1:j1") = Array("Path", "File Name", "Artist", "Album", "Title", "Track", "Genre", "Duration", "Size", "Composer")
Set Rng = Range("A2")
Folderpath = "C:\temp" 'Users\Owner\My Music"
Set oShell = CreateObject("Shell.Application")
Set oFolder = oShell.Namespace(Folderpath)
If oFolder Is Nothing Then
MsgBox "Folder was Not Found", vbExclamation
Exit Sub
End If
Set oFile = oFolder.Items
oFile.Filter 64, "*.mp3"
If oFile.Count = 0 Then
MsgBox "No MP3 Files Were Found in this Folder.", vbExclamation
Exit Sub
End If
For Each Item In oFile
With oFolder
Rng.Offset(r, 0) = oFolder
Rng.Offset(r, 1) = .GetDetailsOf(Item, 0)
Rng.Offset(r, 2) = .GetDetailsOf(Item, 20)
Rng.Offset(r, 3) = .GetDetailsOf(Item, 14)
Rng.Offset(r, 4) = .GetDetailsOf(Item, 21)
Rng.Offset(r, 5) = .GetDetailsOf(Item, 26)
Rng.Offset(r, 6) = .GetDetailsOf(Item, 16)
Rng.Offset(r, 7) = .GetDetailsOf(Item, 27)
Rng.Offset(r, 8) = .GetDetailsOf(Item, 1)
Rng.Offset(r, 9) = "=MID(B" & r + 2 & ",FIND(""|"",SUBSTITUTE(B" & r + 2 & ",""-"",""|"",2))+2,FIND(""|"",SUBSTITUTE(B" & r + 2 & ",""-"",""|"",3))-FIND(""|"",SUBSTITUTE(B" & r + 2 & ",""-"",""|"",2))-3)"
Rng.Offset(r, 9).Copy
Rng.Offset(r, 9).PasteSpecial (xlPasteValues)
End With
r = r + 1
Next Item
End Sub
Bookmarks