试图得到两个日期,上个月的第24个月和本月23日

问题描述 投票:1回答:2

我正在尝试将两个日期作为变体,因此我可以将它们交换进出每月运行的SQL查询(具有不同的句点)。我试图以"yyyy-mm-dd"格式获得上个月的第24个月和当前月份的第23个月(当程序运行时)。我有这个代码,但它给了我'错误的参数数量'作为错误,我不明白为什么。

"yyyy-mm-dd"
excel vba excel-vba date
2个回答
4
投票

以下是操作日期和格式掩码的一些字符串日期。

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

2
投票

如果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

© www.soinside.com 2019 - 2024. All rights reserved.