Waarom werkt onderstaande functie niet, er is vast een logische verklaring, echter niet voor mij.
Maar verwijder ik de If (test) dan werk de functie wel.
Ik wil natuurlijk controleren of de file al bestaat, om de error af te vangen
Code:
Sub RenameFiles()
Dim sourceFiles As Variant
Dim sourceFile As String
Dim targetFile As String
Dim n As Integer
sourceFiles = Dir("f:\10001\*.msg")
While sourceFiles <> ""
n = n + 1
sourceFile = "f:\10001\" & sourceFiles
targetFile = "newName3_" & n & ".msg"
' MsgBox (Len(Dir("f:\10001\" & targetFile)))
If Len(Dir(targetFile)) = 0 Then
'Target file bestaat niet
Debug.Print sourceFiles
'rename
Name sourceFile As "f:\10001\" & targetFile
End If
sourceFiles = Dir()
Wend
End Sub
Maar verwijder ik de If (test) dan werk de functie wel.
Code:
Sub RenameFiles()
Dim sourceFiles As Variant
Dim sourceFile As String
Dim targetFile As String
Dim n As Integer
sourceFiles = Dir("f:\10001\*.msg")
While sourceFiles <> ""
n = n + 1
sourceFile = "f:\10001\" & sourceFiles
targetFile = "newName3_" & n & ".msg"
' MsgBox (Len(Dir("f:\10001\" & targetFile)))
'Target file bestaat niet
Debug.Print sourceFiles
'rename
Name sourceFile As "f:\10001\" & targetFile
sourceFiles = Dir()
Wend
End Sub
Ik wil natuurlijk controleren of de file al bestaat, om de error af te vangen