【问题标题】:Excel Macro Save.As DateExcel 宏 Save.As 日期
【发布时间】:2016-12-30 20:07:33
【问题描述】:

我有一个Macro,它可以获取我的主工作簿并保存一堆不同标签的不同副本。

一个工作簿的部分示例:

Range("E1:G1").Select
    ActiveCell.FormulaR1C1 = "099 Commercial"
    ChDir "T:\Accounting\Aspen Pre-Payroll (Shared)\_Payroll Emails"
    ActiveWindow.View = xlNormalView
    ActiveWindow.Zoom = 50
    ActiveWorkbook.SaveAs Filename:= _
        "T:\Accounting\Aspen Pre-Payroll (Shared)\_Payroll Emails\099 Payroll Bundle CREW & EXP.xlsx" _
        , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

所以宏保存后的标签看起来像099 Payroll Bundle CREW & EXP 但我希望它看起来像099 Payroll Bundle 08-23-2016 CREW & EXP 08-23-2016 是位于特定单元格=RC[-1] 中的日期 但是,通常的" & Format(Date, "MM-DD-YYYY") & " & " & Format(Now(), "MM-DD-YYYY") & " 将不起作用并给我一个编译错误弹出窗口。

我对宏的了解有限,如有任何帮助,将不胜感激!

编辑: ERROR it gives when I try to run macro

【问题讨论】:

  • 尝试小写 " & Format(Now(), "mm-dd-yyyy") & " 并发布给出错误的代码
  • 它不允许我发布它,所以我不得不将它作为编辑添加到原始帖子的末尾
  • 啊我明白了..那么它必须是" & VBA.Format(Now(), "mm-dd-yyyy") & "
  • 效果很好!非常感谢!!

标签: excel date macros office-2016 vba


【解决方案1】:

尝试使用Application.Text(将“now()”替换为您的日期)

ActiveWorkbook.SaveAs Filename:= _
        "T:\Accounting\Aspen Pre-Payroll (Shared)\_Payroll Emails\099 Payroll Bundle" & Application.Text(Now(), "MM-DD-YYYY") & " CREW & EXP.xlsx" _
        , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

【讨论】:

  • 如果我使用这个:ActiveWorkbook.SaveAs Filename:= _ "T:\Accounting\Aspen Pre-Payroll (Shared)_Payroll Emails\098 Payroll Bundle" & Application.Text (=RC[-1 ], "MM-DD-YYYY") & " CREW & EXP.xlsx" _ , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False 它只是给我一个语法错误并将那部分文本变成红色
  • 它将无法解释 =RC[-1]。范围是动态的,或者您可以将其指定为sheetname.range("A1"),例如?
  • 或者,将日期存储为变量并将其称为Application.Text(yourDate, "MM-DD-YYYY")
猜你喜欢
  • 2016-11-07
  • 2016-11-25
  • 2022-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多