periods()

Description:

Generate a sequence of datetime values by specified regular intervals.

Syntax:

periods(s,e,i)

Note:

The function generates a new sequence composed of datetimes in a period from s to e inclusive at a regular interval of i.

Parameter:

s

A datetime variable.

e

A datetime variable.

i

An integer indicating the interval; its unit is day and its value is 1 by default.

Option:

@y

i is the year.

@q

i is the quarter.

@m

i is the month.

@t

i is measured by ten days.

@s

i is the second.

@x

Exclusive of the ending point.

@e

Work with @x option; keep the value of parameter e if it is at the right end of the interval.

@o

Do not adjust the first datetime value to the beginning point of the time unit. By default, it will be adjusted, and the adjustment is mandatory in the case of using @t.

Return value:

Sequence

Example:

 

A

 

1

2000-08-10 12:00:00

 

2

=periods@y(A1,now(),1)

Set year as the interval unit.

3

=periods@yo(A1,now(),1)

Do not adjust the first datetime; it is adjusted to the beginning point of the time unit by default, and must be adjusted when using @t.

4

=periods@q(A1,now(),1)

Set quarter as the interval unit.

5

=periods@m(A1,now(),1)

Set month as the interval unit.

6

=periods@s(A1,now(),7)

Set second as the interval unit.

7

=now()

 

8

=pdate@m(A7)

Get the beginning date of the current month.

9

=pdate@me(A7)

Get the ending date of the current month.

10

=elapse(A8,6-day@w(A8))

Get the first Friday.

11

=periods@x(A10,A9,7)

Get the sequence of Fridays.

12

=A11(2)

Get the second Friday.

13

=A11.m(-1)

Get the last Friday.

14

=A11.len()

Get the number of Fridays.

 

When @e option works:

 

A

 

1

2020-08-10 12:00:00

 

2

2025-01-01 00:00:00

 

3

=periods@y(A1,A2,1)

Use @y option to generate a sequence where members are listed by the year:

4

=periods@xy(A1,A2,1)

Use @x option to exclude the rightmost value:

5

=periods@exy(A1,A2,1)

Use @ex options to keep the value of parameter e when it is at the right end of the interval: