You can also use the FileSystemObject object for that.
Loop through the files in C:\GLPVC\ , check if the file type is "Type" and
the first character in the file name is numeric, and, if so, delete the file:
Sub deleteFiles()
fPath = "C:\GLPVC\"
Set fso = CreateObject _
("Scripting.FileSystemObject")
Set folder = fso.GetFolder(fPath)
For Each file In folder.Files
If file.Type = "File" And _
IsNumeric(Left(file.Name, 1)) Then
Debug.Print file.Name
'file.Delete
End If
Next
Set folder = Nothing
Set fso = Nothing
End Sub
Instead of checking the file type, you can delete all the files without
extension:
Sub deleteFiles1()
fPath = "C:\GLPVC\"
Set fso = CreateObject _
("Scripting.FileSystemObject")
Set folder = fso.GetFolder(fPath)
For Each file In folder.Files
If fso.GetExtensionName(file) = "" And _
IsNumeric(Left(file.Name, 1)) Then
Debug.Print file.Name
'file.Delete
End If
Next
Set folder = Nothing
Set fso = Nothing
End Sub
--
urkec
"Sam" wrote:
> I have a process that creates csv files in a directory, however a byproduct
> is an identical log file, e.g. 5C015000. If you were to rename the file with
> a .xls extension, it would be exactly the same as the csv that I'm saving. It
> has no extension and is file type "File".
>
> If the directory were C:\GLPVC\ what code can I use to loop through all
> files in the directory (there may be hundreds) and delete all files that
> begin with a numeric character or whose file type is "File"?
|