Probably found the 'problem'. That is to say, I can't explain it...
There were 24 entries,
First part: 12 months with just a single digit day
Second part 12 months with double digit days
I wondered, what happens if I remove the first part (single digit day renames)
The rename went fine, no extra '0'.
So I swapped the renames, i.e. double digit day first, then the single digit day last.
Beats me, it works...
(later: Except, nested error...)
..later again no such error when the rename preset is run from a toolbar button. funny.
FWIW the script code - ignore the 'Re'-numbering
I am sure it can be very much improved: as said, I am not expert, am happy I got it going in the end.
Option Explicit
Function Rename_GetNewName ( strFileName, strFilePath, _
fIsFolder, strOldName, ByRef strNewName )
' 15-05-2025 script Date script-Full Dates anywhere to ddmmyyyy
'
'double digit day
're.replace 31 december 2001 to 31122001
Dim re13
Set re13 = new RegExp
re13.IgnoreCase = True
re13.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(Januari|Jan|January)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re14
Set re14 = new RegExp
re14.IgnoreCase = True
re14.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(February|Feb|Februari)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re15
Set re15 = new RegExp
re15.IgnoreCase = True
re15.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(March|Mrt|Maart)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re16
Set re16 = new RegExp
re16.IgnoreCase = True
re16.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(April|Apr)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re17
Set re17 = new RegExp
re17.IgnoreCase = True
re17.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(Mei|May)[\s\-]?(20\d\d)(.+)(\.\w{2,4})"
Dim re18
Set re18 = new RegExp
re18.IgnoreCase = True
re18.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(Juni|Jun|June)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re19
Set re19 = new RegExp
re19.IgnoreCase = True
re19.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(Juli|jul|July)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re20
Set re20 = new RegExp
re20.IgnoreCase = True
re20.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(Augustus|Aug|August)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re21
Set re21 = new RegExp
re21.IgnoreCase = True
re21.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(September|Sep)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re22
Set re22 = new RegExp
re22.IgnoreCase = True
re22.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(Oktober|Okt|October|Oct)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re23
Set re23 = new RegExp
re23.IgnoreCase = True
re23.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(November|Nov)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re24
Set re24 = new RegExp
re24.IgnoreCase = True
re24.Pattern ="(.+)[\s\-]?(\d\d)[\s\-]?(December|Dec)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
'
' single digit DAY 1 september 2010 into 01092010
'
Dim re1
Set re1 = new RegExp
re1.IgnoreCase = True
re1.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(Januari|Jan|January)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re2
Set re2 = new RegExp
re2.IgnoreCase = True
re2.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(February|Feb|februari)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re3
Set re3 = new RegExp
re3.IgnoreCase = True
re3.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(March|Mrt|Maart)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re4
Set re4= new RegExp
re4.IgnoreCase = True
re4.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(April|Apr)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re5
Set re5 = new RegExp
re5.IgnoreCase = True
re5.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(Mei|May)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re6
Set re6 = new RegExp
re6.IgnoreCase = True
re6.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(Juni|Jun|June)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re7
Set re7 = new RegExp
re7.IgnoreCase = True
re7.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(Juli|jul|July)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re8
Set re8 = new RegExp
re8.IgnoreCase = True
re8.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(Augustus|Aug|August)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re9
Set re9 = new RegExp
re9.IgnoreCase = True
re9.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(September|Sep)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re10
Set re10 = new RegExp
re10.IgnoreCase = True
re10.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(Oktober|Okt|October|Oct)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re11
Set re11 = new RegExp
re11.IgnoreCase = True
re11.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(November|Nov)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
Dim re12
Set re12 = new RegExp
re12.IgnoreCase = True
re12.Pattern ="(.+)[\s\-]?(\d)[\s\-]?(December|Dec)[\s\-]?((20[012])\d)(.+)(\.\w{2,4})"
If (re13.Test(strFileName)) Then
strNewName = re13.replace(strFileName, "$1$201$4$6$7")
ElseIf (re14.Test(strFileName)) Then
strNewName = re14.replace(strFileName, "$1$202$4$6$7")
ElseIf (re15.Test(strFileName)) Then
strNewName = re15.replace(strFileName, "$1$203$4$6$7")
ElseIf (re16.Test(strFileName)) Then
strNewName = re16.replace(strFileName, "$1$204$4$6$7")
ElseIf (re17.Test(strFileName)) Then
strNewName = re17.replace(strFileName, "$1$205$4$5$6")
ElseIf (re18.Test(strFileName)) Then
strNewName = re18.replace(strFileName, "$1$206$4$6$7")
ElseIf (re19.Test(strFileName)) Then
strNewName = re19.replace(strFileName, "$1$207$4$6$7")
ElseIf (re20.Test(strFileName)) Then
strNewName = re20.replace(strFileName, "$1$208$4$6$7")
ElseIf (re21.Test(strFileName)) Then
strNewName = re21.replace(strFileName, "$1$209$4$6$7")
ElseIf (re22.Test(strFileName)) Then
strNewName = re22.replace(strFileName, "$1$210$4$6$7")
ElseIf (re23.Test(strFileName)) Then
strNewName = re23.replace(strFileName, "$1$211$4$6$7")
ElseIf (re24.Test(strFileName)) Then
strNewName = re24.replace(strFileName, "$1$212$4$6$7")
Elseif (re1.Test(strFileName)) Then
strNewName = re1.replace(strFileName, "$10$201$4$6$7")
ElseIf (re2.Test(strFileName)) Then
strNewName = re2.replace(strFileName, "$10$202$4$6$7")
ElseIf (re3.Test(strFileName)) Then
strNewName = re3.replace(strFileName, "$10$203$4$6$7")
ElseIf (re4.Test(strFileName)) Then
strNewName = re4.replace(strFileName, "$10$204$4$6$7")
ElseIf (re5.Test(strFileName)) Then
strNewName = re5.replace(strFileName, "$10$205$4$6$7")
ElseIf (re6.Test(strFileName)) Then
strNewName = re6.replace(strFileName, "$10$206$4$6$7")
ElseIf (re7.Test(strFileName)) Then
strNewName = re7.replace(strFileName, "$10$207$4$6$7")
ElseIf (re8.Test(strFileName)) Then
strNewName = re8.replace(strFileName, "$10$208$4$6$7")
ElseIf (re9.Test(strFileName)) Then
strNewName = re9.replace(strFileName, "$10$209$4$6$7")
ElseIf (re10.Test(strFileName)) Then
strNewName = re10.replace(strFileName, "$10$210$4$6$7")
ElseIf (re11.Test(strFileName)) Then
strNewName = re11.replace(strFileName, "$10$211$4$6$7")
ElseIf (re12.Test(strFileName)) Then
strNewName = re12.replace(strFileName, "$10$212$4$6$7")
End if
End Function