我对VB非常非常新,感谢找到这个网站!
我搜索并查看了每个自动建议的类似Q& A链接,但我没有找到我想要的内容(也许是因为我不明白我在看什么...... ;-)。
我使用了来自其他用户的question的Excel宏,由Siddharth Rout:回答
Sub Save()
Dim FilePath As String
Dim NewName As String
FilePath = "X:\": NewName = FilePath & "file" & Format(Date, "MM-DD-YYYY") & ".xlsm"
ActiveWorkbook.SaveAs Filename:=NewName, FileFormat _
:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End Sub
如果我希望将文件命名为“file”(或者我在引号中插入的任何内容),这将完美地工作。
但是,我如何编辑这个宏以便它可以在任何打开的文件上工作,以便将当前日期添加到文件的现有路径和文件名中?
提前感谢您的帮助!
安迪
答案 0 :(得分:3)
dim last_dot as long
last_dot = InStrRev(ActiveWorkbook.FullName, ".")
dim NewName as string
NewName = Left$(ActiveWorkbook.FullName, last_dot - 1) & Format$(Date, "MM-DD-YYYY") & Mid$(ActiveWorkbook.FullName, last_dot)