Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 替换部分文件名(时间戳)_Excel_Vba - Fatal编程技术网

Excel 替换部分文件名(时间戳)

Excel 替换部分文件名(时间戳),excel,vba,Excel,Vba,保存带有时间戳的新文件名时遇到问题 然后它只会添加一个新的时间戳 如何用新的时间戳替换名称中的当前时间戳 我的文件名从“28-11-2018 XXXXXX”到“29-11-2018 28-11-2018 XXXXXX” 这是我的密码: Sub workbook_save() Dim thisWb As Workbook Set thisWb = ActiveWorkbook MyOldName = ActiveWorkbook.FullName MyNewName = Format(Now, "

保存带有时间戳的新文件名时遇到问题 然后它只会添加一个新的时间戳

如何用新的时间戳替换名称中的当前时间戳

我的文件名从“28-11-2018 XXXXXX”到“29-11-2018 28-11-2018 XXXXXX”

这是我的密码:

Sub workbook_save()
Dim thisWb As Workbook
Set thisWb = ActiveWorkbook
MyOldName = ActiveWorkbook.FullName
MyNewName = Format(Now, "dd-mm-yyyy") & " " & ActiveWorkbook.Name

ActiveWorkbook.SaveAs Filename:=thisWb.Path & "\" & MyNewName
Kill MyOldName
End Sub
提前感谢

格式(现在是“dd-mm-yyyy”)
您只需将文件保存为dd-mm-yyyy-文件名中没有小时、分钟、秒的输出,请将日期格式更改为dd-mm-yyyy-hhmms000。

尝试此操作

在fixfilename中,输入文件名的“XXXXXX”部分,我假设这是一个静态值

Sub workbook_save()
Dim thisWb As Workbook
Dim fixfilename As String
Dim newfilename As String
Set thisWb = ActiveWorkbook

fixfilename = "TESTFILE"
newfilename = Format(Now, "dd-mm-yyyy") & fixfilename
thisWb.SaveAs Filename:=thisWb.Path & "\" & newfilename
End Sub

X只是一个示例文本:)我只希望文件名只有一组日期!:)您可以使用类似“u”的分隔符将名称拆分为两部分,1)日期2)工作簿名称,以便在下一次运行时可以拆分名称并替换第一部分。但是如何替换?:)XXXXXX部分是静态文本还是每天都在变化?很难在时间部分使用
替换
,因为每次都会发生变化。如果X没有改变,您可以使用
NewName=Format(现在是“dd-mm-yyyy\u hhmmss”)和“XXXXX.XLSM”