Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Loop & Delete | Excel Discussion (Misc queries) | |||
How to Delete Rows in Excel In a Do Loop | Excel Worksheet Functions | |||
A loop to delete | Excel Programming | |||
loop to delete rows... | Excel Programming | |||
How do I delete rows and columns in With With End Loop? | Excel Programming |