0

こんにちは、vb6 を使用している私は、日曜日の日付のみを返す関数を作成したいと考えていますが、以下の日付範囲の例を渡します。

fnWorkSunday(#09/02/2013#, #09/16/2013#)

結果は次のようになります#09/08/2013##09/15/2013#

4

2 に答える 2

2

これを試して:

Sub listSundaysBetween(startDate As Date, endDate As Date)

    Dim nextSunday As Date

    nextSunday = startDate - Weekday(startDate) + 1

    If nextSunday < startDate Then nextSunday = nextSunday + 7

    While nextSunday < endDate
        Debug.Print nextSunday
        nextSunday = nextSunday + 7
    Wend
End Sub
于 2013-09-16T08:52:43.300 に答える
1

最初に、返品日付を保持する配列を作成します。

Dim dateArray() as Date

次に、日付範囲をループします。

While startDate <= endDate

    If Weekday(startDate) = 1 Then
    'or If WeekdayName(startDate) = "Sunday" Then
    '1 = vbSunday, 2 = vbMonday...

        ReDim Preserve dateArray(UBound(dateArray) + 1)
        'Resize the array to accommodate the new date
        'don't forget to preserve or all the data in the array will be lost

        dateArray(UBound(dateArray)) = startDate
    End If

    DateAdd("d",1,startDate)    'increment the startDate
WEnd

次に dataArray を返します。

于 2013-09-23T15:07:59.247 に答える