VB保存到当前路径和文件名,再加上当前日期到文件名

时间:2013-05-03 16:56:42

标签: excel excel-vba excel-2010 vba

我对VB非常非常新,感谢找到这个网站!

我搜索并查看了每个自动建议的类似Q& A链接,但我没有找到我想要的内容(也许是因为我不明白我在看什么...... ;-)。

我使用了来自其他用户的question的Excel宏,由Siddharth Rout:回答

Macro with Save Current Date

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”(或者我在引号中插入的任何内容),这将完美地工作。

但是,我如何编辑这个宏以便它可以在任何打开的文件上工作,以便将当前日期添加到文件的现有路径和文件名中?

提前感谢您的帮助!

安迪

1 个答案:

答案 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)