创build一个重置文件并保存为新的一天的macros
在工作中,我一直在尝试创build一个能自动清除一定范围内容的macros,范围是B78:G83。
清除这个范围之后,我想让macros以一个新名字保存当前文件。 新名称应为当天,格式为“dd mmmm”(名称的两位数字,中间的空格,然后是整个月份的名称)
文件path是(fe)
“T:\ RESERVATIONS \ Duty Report \ 2017 \ 4。April \ 25 April”
年份,月份和当前date是可变的(因为我们在工作中为这些文件制作单独的文件夹)。
Sub NieuweDag() ' ' NieuweDag Macro ' Invoer wissen en opslaan als nieuwe dag ' ' Sneltoets: Ctrl+q ' Range("B78:G83").Select Range("G82").Activate Selection.ClearContents Dim FilePath As String Dim NewName As String FilePath = "T:\RESERVATIONS\Duty Report\": NewName = FilePath & Year(Now()) & "\" & Month(Now()) & ". " & MonthName(Now()) & "\" & Format(Date, "dd mmmm") & ".xlsm" ActiveWorkbook.SaveAs Filename:=NewName, FileFormat _ :=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False End Sub
这是我得到的,但不起作用。 我得到错误5.这是在荷兰,所以让我来翻译:
发布期间出现错误5:
无效的程序调用或无效的参数
这里的任何人都可以帮助我吗?
正确的格式是MonthName(月数,[缩写]),您应该使用
MonthName(Month(Now()))
代替
MonthName(Now())
另外,你可以使用增强你的代码
Range("B78:G83").ClearContents
代替
Range("B78:G83").Select Range("G82").Activate Selection.ClearContents
您可以通过更改来减less创buildNewName
所需的编码量
NewName = FilePath & Year(Now()) & "\" & Month(Now()) & ". " & MonthName(Now()) & "\" & Format(Date, "dd mmmm") & ".xlsm"
至
NewName = FilePath & Format(Now(), "yyyy\\m. mmmm\\dd mmmm") & ".xlsm"