[英]Excel VBA - Month in “mmmm” format
我需要使用“ mmmm”格式的当前月份和上个月,而我发现的最佳解决方案是MonthName(Month(Date))
。
但是,Excel一直给我:
编译错误:必需的对象
这让我发疯。 我是VBA的新手,所以有人可以在这里解释我做错了什么吗?
Sub test()
Dim CurrentMonth As Variant
Dim PreviousMonth As Variant
Set CurrentMonth = MonthName(Month(SetupSheet.Range("C9"))) '<-------HERE
Set PreviousMonth = MonthName(Month(SetupSheet.Range("C9") - 1))
...
End Sub
小写的“ m”是分钟。 大写字母“ M”表示月份。
您不需要使用Set
。 仅在将Object
传递给变量时使用。
该行返回一个String
而不是一个Object
(例如,范围,工作表,图表等)
MonthName(Month(SetupSheet.Range("C9"))) 'if C9 contains a valid date format
因此,要将其传递给CurrentMonth
变量,只需使用=
符号进行分配即可:
CurrentMonth = MonthName(Month(SetupSheet.Range("C9")))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.