我正在尝试将两个日期作为变体,因此我可以将它们交换进出每月运行的SQL查询(具有不同的句点)。我试图以"yyyy-mm-dd"
格式获得上个月的第24个月和当前月份的第23个月(当程序运行时)。我有这个代码,但它给了我'错误的参数数量'作为错误,我不明白为什么。
"yyyy-mm-dd"
以下是操作日期和格式掩码的一些字符串日期。
Option Explicit
Sub mDateSet()
Dim fromDateFinal As String
Dim toDate As String
Dim toDateFinal As String
Dim fromDate: fromDate = Format(DateAdd("M", -1, Now), "yyyy-mmmm")
'Format gives 'wrong number of arguments or invalid property assignment error'
'trying to define two dates: the 24th of last month until the 23rd of this month)
'24th of last month
fromDateFinal = fromDate & "24"
Debug.Print fromDateFinal
'23th of this month
toDate = Format(Date, "yyyy-mm")
toDateFinal = toDate & "23"
Debug.Print toDateFinal
End Sub
如果fromDateFinal = format(date-day(date), "yyyy-mm-24") '2018-02-24
toDateFinal = format(date, "yyyy-mm-23") '2018-03-23
产生该错误(Format(DateAdd("M", -1, Now), "yyyy-mmmm")
)并选择wrong number of arguments or invalid property assignment error
,那么在Format
中有另一个函数Format
定义,它具有更少或更多的参数。
试试<Global>
。
VBA.Strings.Format(DateAdd("M", -1, Now), "yyyy-mmmm")
是所需Strings.Format
函数的完全限定名称。
如果确实选择了Format
,那么也许就是这样。那里有完全限定的名字是DateAdd
。