3 is a little more complicated than 2 was, but the principles are the same
Dim strName As String
Dim strNewName As String: strNewName = ""
Dim strPath As String
Dim strExt As String
Dim strDate As String
Dim vNewDate As Variant
strPath = "C:\Path\"
strName = "Report_2017-09-05-05-46-13.xlsx"
If InStr(1, strName, "_") > 0 Then
If UBound(Split(strName, "-")) = 5 Then
strExt = Right(strName, Len(strName) - InStrRev(strName, Chr(46)) + 1)
strNewName = Left(strName, Len(strName) - Len(strExt) - 2)
strDate = Split(strNewName, "_")(1)
vNewDate = Split(strDate, "-")
strNewName = Split(strNewName, "_")(0) & "_" & _
vNewDate(0) & "-" & vNewDate(1) & "-" & _
vNewDate(2) & strExt
MsgBox strNewName
'Name strPath & strName As strPath & strNewName
End If
End If