我一直在玩TODAY()
VBA并且无法获得当月.通过以下方式测试,获得当前年份和日期似乎非常简单:
MsgBox Year(Date)
MsgBox Day(Date)
MsgBox Year(Now)
MsgBox Day(Now)
Run Code Online (Sandbox Code Playgroud)
作为一些简单的例子.
但是如何将当前月份显示为数字(1,2等)或全名?我可以CurrentMonth = MonthName(Month(Sheet1.Range("A1")))
在单元格中使用它并在VBA中将其转换为类似的东西TODAY()
.但我希望能够在VBA for Excel中直接执行此操作.
小智 27
尝试,
debug.print Format(Date, "mmm") 'Mar
debug.print Format(Date, "mmmm") 'March
debug.print Format(Date, "m") '3
debug.print Format(Date, "mm") '03
Run Code Online (Sandbox Code Playgroud)
Month(Now)
Run Code Online (Sandbox Code Playgroud)
返回与当前月份关联的索引号。
下面 Jeeped 的代码是最紧凑的,但为了让您了解索引的工作原理,以下代码将根据返回的索引返回月份名称:
Dim months(11) As String
months(0) = "Jan"
months(1) = "Feb"
months(2) = "Mar"
months(3) = "Apr"
months(4) = "May"
months(5) = "Jun"
months(6) = "Jul"
months(7) = "Aug"
months(8) = "Sep"
months(9) = "Oct"
months(10) = "Nov"
months(11) = "Dec"
Dim nowMonth As Integer
nowMonth = Month(Now)
For i = 0 To 11
If nowMonth = (i + 1) Then
MsgBox (months(i))
End If
Next
Run Code Online (Sandbox Code Playgroud)
小智 5
找到了一个更简单的解决方案来获取当前月份名称
只需使用MonthName(Month(Now))
并将其分配给一个字符串。
Month(Now)
为您提供月份编号并MonthName()
使用该编号显示当前月份
归档时间: |
|
查看次数: |
59200 次 |
最近记录: |