# Add-in Functions

The following describes and lists some of the available add-in functions.

You will also find a description of the LibreOffice Calc add-in interface in the Help. In addition, important functions and their parameters are described in the Help for the Shared LibraryLibreOffice Calc add-in DLL.

## Add-ins supplied

LibreOffice contains examples for the add-in interface of LibreOffice Calc.

## DAYSINMONTH

Calculates the number of days in the month in which the given date occurs.

### Syntax

DAYSINMONTH(Date)

Date is any date in the desired month of the desired year. The Date parameter must be a valid date according to the locale settings of LibreOffice.

### Example

=DAYSINMONTH(A1) returns 29 days if A1 contains 1968-02-17, a valid date for February 1968.

## DAYSINYEAR

Calculates the number of days in the year in which the given date occurs.

### Syntax

DAYSINYEAR(Date)

Date is any date in the desired year. The Date parameter must be a valid date according to the locale settings of LibreOffice.

### Example

=DAYSINYEAR(A1) returns 366 days if A1 contains 1968-02-29, a valid date for the year 1968.

## ISLEAPYEAR

Determines whether a year is a leap year. If yes, the function will return the value 1 (TRUE); if not, it will return 0 (FALSE).

### Syntax

ISLEAPYEAR(Date)

Date specifies whether a given date falls within a leap year. The Date parameter must be a valid date.

### Example

=ISLEAPYEAR(A1) returns 1, if A1 contains 1968-02-29, the valid date 29th February 1968 in your locale setting.

You may also use =ISLEAPYEAR(DATE(1968;2;29)) or =ISLEAPYEAR("1968-02-29") giving the date string in the ISO 8601 notation.

Never use =ISLEAPYEAR(29/02/68), because this would first evaluate 29 divided by 2 divided by 68, and then calculate the ISLEAPYEAR function from this small number as a serial date number.

## MONTHS

Calculates the difference in months between two dates.

### Syntax

MONTHS(StartDate; EndDate; Type)

StartDate is the first date

EndDate is the second date

Type specifies the type of difference to calculate. Possible values include 0 (interval) and 1 (in calendar months).

## ROT13

Encrypts a text string by moving the characters 13 positions in the alphabet. After the letter Z, the alphabet begins again (Rotation). By applying the encryption function again to the resulting code, you can decrypt the text.

### Syntax

ROT13(Text)

Text is the text string to be encrypted. ROT13(ROT13(Text)) decrypts the code.

## WEEKS

Calculates the difference in weeks between two dates.

### Syntax

WEEKS(StartDate; EndDate; Type)

StartDate is the first date

EndDate is the second date

Type specifies the type of difference to calculate. The possible values are 0 (interval) and 1 (in numbers of weeks).

## WEEKSINYEAR

Calculates the number of weeks in the year in which the given date occurs. The number of weeks is defined as follows: a week that spans two years is added to the year in which most days of that week occur.

### Syntax

WEEKSINYEAR(Date)

Date is any date in the desired year. The Date parameter must be a valid date according to the locale settings of LibreOffice.

### Example

WEEKSINYEAR(A1) returns 53 if A1 contains 1970-02-17, a valid date for the year 1970.

## YEARS

Calculates the difference in years between two dates.

### Syntax

YEARS(StartDate; EndDate; Type)

StartDate is the first date

EndDate is the second date

Type specifies the type of difference to calculate. Possible values are 0 (interval) and 1 (in calendar years).

## Add-ins through LibreOffice API

Add-ins can also be implemented through the LibreOffice API.