3

我对 VB 非常非常陌生,很高兴找到这个网站!

我搜索并查看了我的问题的每个自动建议的类似问答链接,但没有找到我正在寻找的确切内容(也许是因为我不明白我在看什么......;-)。

我从另一个用户的问题中使用了这个 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

如果我希望将文件命名为“文件”(或我在引号中插入的任何内容),这将非常有效。

但是,我将如何编辑此宏以使其适用于任何打开的文件,以便将当前日期添加到文件的现有路径和文件名中?

在此先感谢您的帮助!

安迪

4

1 回答 1

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)
于 2013-05-03T17:07:00.913 回答