loop and delete
This is my problem:
I want to loop through all the files in a folder, and delete all files that are not called "ABC_QUALITY_RATE.xls" I think i'm close, but he's not very happy with the "Kill ..FoundFiles(WegErmee)"... What am i doing wrong? This is what i have so far: Sub Test() Dim Bandiet As Integer Set fs = Application.FileSearch Application.ScreenUpdating = False Application.DisplayAlerts = False With fs .NewSearch .LookIn = "C:\DATA\ABC" If .Execute 0 Then For Bandiet = 1 To .FoundFiles.Count If .Filename < "ABC_QUALITY_RATE.xls" Then For WegErmee = 1 To .FoundFiles.Count GoTo Verwijderen Next WegErmee End If Next Bandiet End If End With Verwijderen: Kill .FoundFiles(WegErmee) Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub Please advise, Peter |
loop and delete
That's because .FoundFiles should be within the with statement. Right
now it falls outside and Mr. VBA gets confused. Change it to: Next Bandiet End If Verwijderen: Kill .FoundFiles(WegErmee) End With |
loop and delete
If using FileSearch, I would modify your code like this.
Sub Test() Dim Bandiet As Integer Set fs = Application.FileSearch Application.ScreenUpdating = False Application.DisplayAlerts = False With fs .NewSearch .LookIn = "C:\DATA\ABC" If .Execute 0 Then For Bandiet = 1 To .FoundFiles.count If .FoundFiles(Bandiet) < "C:\DATA\ABC" & _ Application.PathSeparator & "ABC_QUALITY_RATE.xls" Then Kill .FoundFiles(Bandiet) End If Next Bandiet End If End With Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub keizi "Peterke" wrote in message ... This is my problem: I want to loop through all the files in a folder, and delete all files that are not called "ABC_QUALITY_RATE.xls" I think i'm close, but he's not very happy with the "Kill .FoundFiles(WegErmee)"... What am i doing wrong? This is what i have so far: Sub Test() Dim Bandiet As Integer Set fs = Application.FileSearch Application.ScreenUpdating = False Application.DisplayAlerts = False With fs .NewSearch .LookIn = "C:\DATA\ABC" If .Execute 0 Then For Bandiet = 1 To .FoundFiles.Count If .Filename < "ABC_QUALITY_RATE.xls" Then For WegErmee = 1 To .FoundFiles.Count GoTo Verwijderen Next WegErmee End If Next Bandiet End If End With Verwijderen: Kill .FoundFiles(WegErmee) Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub Please advise, Peter |
loop and delete
Thanks Kletcho!
That was the trick that did it! But now i've encountered another problem: The files that have to be deleted have no extension == "Mr. Vba" does not recognize it as a "File". What can i do about that? Regards, Peter "Kletcho" schreef in bericht oups.com... That's because .FoundFiles should be within the with statement. Right now it falls outside and Mr. VBA gets confused. Change it to: Next Bandiet End If Verwijderen: Kill .FoundFiles(WegErmee) End With |
All times are GMT +1. The time now is 11:48 PM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com