我的工作表中有以下功能...
Format(Range("AG1"), "mm")
我用它来自动填充saveas文件名,这是一个更大的功能,但除了这部分外,它都有效。作为更大功能的一部分,有
Year(Range("AG1"))
返回正确的年份" yyyy"格式。 (它不需要任何特定的格式,它只返回4位格式的年份。)
然而,第一个函数Format(Range("AG1"), "mm")
总是返回01,表示是1月,它不是总是。我需要根据当前日期的月份返回" mm"格式。
Range("AG1")
是指工作表中输入日期为[mm/dd/yyyy]
的单元格。
任何想法我做错了什么?
答案 0 :(得分:0)
根据此表,您应该使用" m"
No. Formatting code Display as Example
1 ddd Weekday name Sat
2 dddd Weekday name Saturday
3 mmm Month name Jan
4 mmmm Month name January
5 m Month 1
6 d Day 17
答案 1 :(得分:0)
这是对我有用的最终代码......
Private Sub btnCreate_Click()
ActiveSheet.Copy
Application.ExecuteExcel4Macro "show.toolbar(""Ribbon"",False)"
ActiveSheet.Shapes.Range(Array("btnCreate")).Select
Selection.Delete
ActiveWorkbook.SaveAs "C:\Users\" & (Environ$("Username")) & "\Desktop\" & "Timecard, " & Year(Range("AG1")) & "-" & Format(Range("AG1"), "mm") & " - " & _
Range("R2").Value & ", " & Range("T2").Value, xlOpenXMLWorkbookMacroEnabled
ActiveWindow.Close
End Sub