在VBA中使用macros保存新文件

我使用下面的代码,但是当我运行它时,它只保存名称的最后部分(&Day(Now)&“ – ”&Month(Now)&“ – ”&Year(Now))。 没有考虑到string“Asesor”。 我不知道我错过了什么部分:

Sub SaveFile() Dim Asesor As String Asesor = Range("B3").Value Dim DestFile DestFile = "C:\Users\ST\" Application.ScreenUpdating = False Workbooks("Grillas_QA.xlsm").Activate ActiveSheet.Range("A1:K51").Select Selection.Copy Workbooks.Add Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False Application.CutCopyMode = False ActiveWindow.DisplayGridlines = False Application.DisplayAlerts = False 

这是我保存文件的地方。

 ActiveWorkbook.SaveAs Filename:=DestFile & Asesor & " " & Day(Now) & "-" & Month(Now) & "-" & Year(Now), _ FileFormat:=xlNormal, Password:="", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False 

thnx提前的帮助。

作为评论的后续,下一行

 Asesor = Range("B3").Value 

应该改成这样的东西:

 Asesor = ThisWorkbook.Worksheets("Sheet1").Range("B3").Value 

另外作为build议,我build议你阅读这篇文章: 如何避免使用Select / Active语句