<para><function>COMPLEX</function> returns a complex number of the form x + yi.</para>
<para><parameter>real</parameter> is the real and <parameter>im</parameter> is the imaginary part of the complex number. <parameter>suffix</parameter> is the suffix for the imaginary part. If it is omitted, <function>COMPLEX</function> uses 'i' by default.</para>
<itemizedlist>
<listitem>
<para>If <parameter>suffix</parameter> is neither 'i' nor 'j', <function>COMPLEX</function> returns #VALUE! error.</para>
<para><function>IMARCCOS</function> returns the complex arccosine of the complex number <parameter>inumber</parameter>. The branch cuts are on the real axis, less than -1 and greater than 1.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARCCOS</function> returns #VALUE! error.</para>
<para><function>IMARCCOSH</function> returns the complex hyperbolic arccosine of the complex number <parameter>inumber</parameter>. The branch cut is on the real axis, less than 1.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARCCOSH</function> returns #VALUE! error.</para>
<para><function>IMARCCOTH</function> returns the complex hyperbolic arccotangent of the complex number z (<parameter>inumber</parameter>), where</para>
<para> arccoth(z) = arctanh(1/z).</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARCCOTH</function> returns #VALUE! error.</para>
<para><function>IMARCSIN</function> returns the complex arcsine of the complex number <parameter>inumber</parameter>. The branch cuts are on the real axis, less than -1 and greater than 1.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARCSIN</function> returns #VALUE! error.</para>
<para><function>IMARCSINH</function> returns the complex hyperbolic arcsine of the complex number <parameter>inumber</parameter>. The branch cuts are on the imaginary axis, below -i and above i.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARCSINH</function> returns #VALUE! error.</para>
<para><function>IMARCTAN</function> returns the complex arctangent of the complex number <parameter>inumber</parameter>. The branch cuts are on the imaginary axis, below -i and above i.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARCTAN</function> returns #VALUE! error.</para>
<para><function>IMARCTANH</function> returns the complex hyperbolic arctangent of the complex number <parameter>inumber</parameter>. The branch cuts are on the real axis, less than -1 and greater than 1.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARCTANH</function> returns #VALUE! error.</para>
<para><function>IMARGUMENT</function> returns the argument theta of a complex number, i.e. the angle in radians from the real axis to the representation of the number in polar coordinates.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMARGUMENT</function> returns #VALUE! error.</para>
<para><function>IMDIV</function> returns the quotient of two complex numbers.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber1</parameter> or <parameter>inumber2</parameter> are not valid complex numbers, <function>IMDIV</function> returns #VALUE! error.</para>
<para><function>IMLN</function> returns the natural logarithm of a complex number.</para>
<para>The result will have an imaginary part between -pi and +pi. The natural logarithm is not uniquely defined on complex numbers. You may need to add or subtract an even multiple of pi to the imaginary part.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber</parameter> is not a valid complex number, <function>IMLN</function> returns #VALUE! error.</para>
<para><function>IMPOWER</function> returns a complex number raised to a power. <parameter>inumber1</parameter> is the complex number to be raised to a power and <parameter>inumber2</parameter> is the power to which you want to raise it.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber1</parameter> or <parameter>inumber2</parameter> are not valid complex numbers, <function>IMPOWER</function> returns #VALUE! error.</para>
<para><function>IMSUB</function> returns the difference of two complex numbers.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber1</parameter> or <parameter>inumber2</parameter> are not valid complex numbers, <function>IMSUB</function> returns #VALUE! error.</para>
<para><function>IMSUM</function> returns the sum of two complex numbers.</para>
<itemizedlist>
<listitem>
<para>If <parameter>inumber1</parameter> or <parameter>inumber2</parameter> are not valid complex numbers, <function>IMSUM</function> returns #VALUE! error.</para>
<para><function>DAVERAGE</function> function returns the average of the values in a list or database that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DCOUNT</function> function counts the cells that contain numbers in a database that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DCOUNTA</function> function counts the cells that contain data in a database that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DGET</function> function returns a single value from a column that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para>Age Salary</para>
<para><30</para>
<para>>40 >46000</para>
<itemizedlist>
<listitem>
<para>If none of the items match the conditions, <function>DGET</function> returns #VALUE! error.</para>
</listitem>
<listitem>
<para>If more than one items match the conditions, <function>DGET</function> returns #NUM! error.</para>
<para><function>DMAX</function> function returns the largest number in a column that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DMIN</function> function returns the smallest number in a column that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DPRODUCT</function> function returns the product of numbers in a column that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DSTDEV</function> function returns the estimate of the standard deviation of a population based on a sample. The populations consists of numbers that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DSTDEVP</function> function returns the standard deviation of a population based on the entire populations. The populations consists of numbers that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DSUM</function> function returns the sum of numbers in a column that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DVAR</function> function returns the estimate of variance of a population based on a sample. The populations consists of numbers that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>DVARP</function> function returns the variance of a population based on the entire populations. The populations consists of numbers that match conditions specified.</para>
<para><parameter>database</parameter> is a range of cells in which rows of related information are records and columns of data are fields. The first row of a database contains labels for each column.</para>
<para><parameter>field</parameter> specifies which column is used in the function. If <parameter>field</parameter> is an integer, for example 2, the second column is used. Field can also be the label of a column. For example, ``Age'' refers to the column with the label ``Age'' in <parameter>database</parameter> range.</para>
<para><parameter>criteria</parameter> is the range of cells which contains the specified conditions. The first row of a <parameter>criteria</parameter> should contain the labels of the fields for which the criteria are for. Cells below the labels specify conditions, for example, ``>3'' or ``<9''. Equality condition can be given simply by specifying a value, e.g. ``3'' or ``John''.</para>
<para>Each row in <parameter>criteria</parameter> specifies a separate condition. If a row in <parameter>database</parameter> matches a row in <parameter>criteria</parameter>, then that row is counted. Technically speaking, this a boolean OR operation between the rows in <parameter>criteria</parameter>.</para>
<para>If <parameter>criteria</parameter> specifies more than one column, then each of the conditions in the specified columns must be true for the row in <parameter>database</parameter> to match. Technically speaking, this is a boolean AND operation between the columns in <parameter>criteria</parameter>.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the range A1:C7 contain the following values:</para>
<para>Name Age Salary</para>
<para>John 34 54342</para>
<para>Bill 35 22343</para>
<para>Clark 29 34323</para>
<para>Bob 43 47242</para>
<para>Susan 37 42932</para>
<para>Jill 45 45324</para>
<para>In addition, the cells A9:B11 contain the following values:</para>
<para><function>GETPIVOTDATA</function> function fetches summary data from a pivot table. <parameter>pivot_table</parameter> is a cell range containing the pivot table. <parameter>field_name</parameter> is the name of the field of which you want the summary data.</para>
<itemizedlist>
<listitem>
<para>If the summary data is unavailable, <function>GETPIVOTDATA</function> returns #REF! error.</para>
<para><function>DATE</function> returns the number of days since the 1st of January of 1900(the date serial number) for the given year, month and day.</para>
<itemizedlist>
<listitem>
<para>If <parameter>month</parameter> < 1 or <parameter>month</parameter> > 12, the year will be corrected. A similar correction takes place for days.</para>
</listitem>
<listitem>
<para>The <parameter>years</parameter> should be at least 1900. If <parameter>years</parameter> < 1900, it is assumed to be 1900 + <parameter>years</parameter>.</para>
</listitem>
<listitem>
<para>If the given date is not valid, <function>DATE</function> returns #NUM! error.</para>
<para><function>DATEDIF</function> returns the difference between two dates. <parameter>interval</parameter> is one of six possible values: "y", "m", "d", "ym", "md", and "yd".</para>
<para>The first three options will return the number of complete years, months, or days, respectively, between the two dates specified.</para>
<para> "ym" will return the number of full months between the two dates, not including the difference in years.</para>
<para> "md" will return the number of full days between the two dates, not including the difference in months.</para>
<para> "yd" will return the number of full days between the two dates, not including the difference in years.</para>
<para><function>DATEVALUE</function> returns the serial number of the date. <parameter>date_str</parameter> is the string that contains the date. The value depends on the date convention. The MS Excel 1900 convention dates things from Jan 1 1900 while the 1904 convention uses Jan 1 1904.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para><function>DATEVALUE</function>("1/1/1999") equals 36161 (in the 1900 convention).</para>
<para><function>DAYS360</function> returns the number of days from <parameter>date1</parameter> to <parameter>date2</parameter> following a 360-day calendar in which all months are assumed to have 30 days.</para>
<itemizedlist>
<listitem>
<para>If <parameter>method</parameter> is 1, the European method will be used. In this case, if the day of the month is 31 it will be considered as 30.</para>
</listitem>
<listitem>
<para>If <parameter>method</parameter> is 0 or omitted, the XL US method will be used. This is a somewhat complicated industry standard method where the last day of February is considered to be the 30th day of the month, but only for the first date.</para>
</listitem>
<listitem>
<para>If <parameter>method</parameter> is 2, a saner version of the US method is used in which both dates get the same February treatment.</para>
</listitem>
<listitem>
<para>Note that Gnumeric will perform regular string to serial number conversion for you, so you can enter a date as a string.</para>
</listitem>
<listitem>
<para>This function is mostly Excel compatible.</para>
<para><function>EDATE</function> returns the serial number of the date that is the specified number of months before or after a given date. <parameter>date</parameter> is the serial number of the initial date and <parameter>months</parameter> is the number of months before (negative number) or after (positive number) the initial date.</para>
<itemizedlist>
<listitem>
<para>If <parameter>months</parameter> is not an integer, it is truncated.</para>
<para><function>EOMONTH</function> returns the last day of the month which is <parameter>months</parameter> from the <parameter>start_date</parameter>.</para>
<itemizedlist>
<listitem>
<para><function>EOMONTH</function> returns #NUM! if <parameter>start_date</parameter> or <parameter>months</parameter> are invalid.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>If A1 contains 12/21/00 then <function>EOMONTH</function>(A1,0)=12/31/00, <function>EOMONTH</function>(A1,5)=5/31/01, and <function>EOMONTH</function>(A1,2)=2/28/01</para>
<para><function>HOUR</function> converts a serial number to an hour. The hour is returned as an integer in the range 0 (12:00 A.M.) to 23 (11:00 P.M.).</para>
<itemizedlist>
<listitem>
<para>Note that Gnumeric will perform regular string to serial number conversion for you, so you can enter a date as a string.</para>
<para><function>ISOWEEKNUM</function> returns the ISO 8601 week number of <parameter>date</parameter>.</para>
<para>An ISO 8601 week starts on Monday. Weeks are numbered from 1. A week including days from two different years is assigned to the year which includes the most days. This means that Dec 31 could be in week 1 of the following year, and Jan 1 could be in week 52 or 53 of the previous year. <function>ISOWEEKNUM</function> returns the week number.</para>
<itemizedlist>
<listitem>
<para><function>ISOWEEKNUM</function> returns #NUM! if date is invalid.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>If A1 contains 12/21/00 then <function>ISOWEEKNUM</function>(A1)=51</para>
<para><function>ISOYEAR</function> returns the year of the ISO 8601 week number of <parameter>date</parameter>.</para>
<para>An ISO 8601 week starts on Monday. Weeks are numbered from 1. A week including days from two different years is assigned to the year which includes the most days. This means that Dec 31 could be in week 1 of the following year, and Jan 1 could be in week 52 or 53 of the previous year. <function>ISOYEAR</function> returns the year the week is assigned to.</para>
<itemizedlist>
<listitem>
<para><function>ISOYEAR</function> returns #NUM! if date is invalid.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>If A1 contains 12/31/2001 then <function>ISOYEAR</function>(A1)=2002</para>
<para><function>NETWORKDAYS</function> returns the number of non-weekend non-holidays between <parameter>start_date</parameter> and <parameter>end_date</parameter> including these dates. Holidays are optionally supplied in <parameter>holidays</parameter>.</para>
<itemizedlist>
<listitem>
<para><function>NETWORKDAYS</function> returns #NUM! if <parameter>start_date</parameter> or <parameter>end_date</parameter> are invalid.</para>
<para><function>NOW</function> returns the serial number for the date and time at the time it is evaluated.</para>
<para>Serial Numbers in Gnumeric are represented as follows:The integral part is the number of days since the 1st of January of 1900. The decimal part represent the fraction of the day and is mapped into hour, minutes and seconds.</para>
<para>For example: .0 represents the beginning of the day, and 0.5 represents noon.</para>
<para><function>WORKDAY</function> returns the date which is <parameter>days</parameter> working days from the <parameter>start_date</parameter>. Weekends and holidays optionally supplied in <parameter>holidays</parameter> are respected.</para>
<itemizedlist>
<listitem>
<para><function>WORKDAY</function> returns #NUM! if <parameter>start_date</parameter> or <parameter>days</parameter> are invalid.</para>
<para><function>YEARFRAC</function> returns the number of full days between <parameter>start_date</parameter> and <parameter>end_date</parameter> according to the <parameter>basis</parameter>.</para>
<para><function>BESSELI</function> function returns the Neumann, Weber or Bessel function.</para>
<para><parameter>x</parameter> is where the function is evaluated. <parameter>y</parameter> is the order of the Bessel function, if non-integer it is truncated.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> or <parameter>y</parameter> are not numeric a #VALUE! error is returned.</para>
</listitem>
<listitem>
<para>If <parameter>y</parameter> < 0 a #NUM! error is returned.</para>
<para><function>BESSELJ</function> function returns the Bessel function with <parameter>x</parameter> is where the function is evaluated. <parameter>y</parameter> is the order of the Bessel function, if non-integer it is truncated.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> or <parameter>y</parameter> are not numeric a #VALUE! error is returned.</para>
</listitem>
<listitem>
<para>If <parameter>y</parameter> < 0 a #NUM! error is returned.</para>
<para><function>BESSELK</function> function returns the Neumann, Weber or Bessel function. <parameter>x</parameter> is where the function is evaluated. <parameter>y</parameter> is the order of the Bessel function, if non-integer it is truncated.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> or <parameter>y</parameter> are not numeric a #VALUE! error is returned.</para>
</listitem>
<listitem>
<para>If <parameter>y</parameter> < 0 a #NUM! error is returned.</para>
<para><function>BESSELY</function> function returns the Neumann, Weber or Bessel function.</para>
<para><parameter>x</parameter> is where the function is evaluated. <parameter>y</parameter> is the order of the Bessel function, if non-integer it is truncated.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> or <parameter>y</parameter> are not numeric a #VALUE! error is returned.</para>
</listitem>
<listitem>
<para>If <parameter>y</parameter> < 0 a #NUM! error is returned.</para>
<para><function>BIN2HEX</function> function converts a binary number to a hexadecimal number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>BIN2OCT</function> function converts a binary number to an octal number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>CONVERT</function> returns a conversion from one measurement system to another. For example, you can convert a weight in pounds to a weight in grams. <parameter>number</parameter> is the value you want to convert, <parameter>from_unit</parameter> specifies the unit of the <parameter>number</parameter>, and <parameter>to_unit</parameter> is the unit for the result.</para>
<para><parameter>from_unit</parameter> and <parameter>to_unit</parameter> can be any of the following:</para>
<para>Weight and mass:</para>
<para> 'g' Gram</para>
<para> 'sg' Slug</para>
<para> 'lbm' Pound</para>
<para> 'u' U (atomic mass)</para>
<para> 'ozm' Ounce</para>
<para>Distance:</para>
<para> 'm' Meter</para>
<para> 'mi' Statute mile</para>
<para> 'Nmi' Nautical mile</para>
<para> 'in' Inch</para>
<para> 'ft' Foot</para>
<para> 'yd' Yard</para>
<para> 'ang' Angstrom</para>
<para> 'Pica' Pica</para>
<para>Time:</para>
<para> 'yr' Year</para>
<para> 'day' Day</para>
<para> 'hr' Hour</para>
<para> 'mn' Minute</para>
<para> 'sec' Second</para>
<para>Pressure:</para>
<para> 'Pa' Pascal</para>
<para> 'atm' Atmosphere</para>
<para> 'mmHg' mm of Mercury</para>
<para>Force:</para>
<para> 'N' Newton</para>
<para> 'dyn' Dyne</para>
<para> 'lbf' Pound force</para>
<para>Energy:</para>
<para> 'J' Joule</para>
<para> 'e' Erg</para>
<para> 'c' Thermodynamic calorie</para>
<para> 'cal' IT calorie</para>
<para> 'eV' Electron volt</para>
<para> 'HPh' Horsepower-hour</para>
<para> 'Wh' Watt-hour</para>
<para> 'flb' Foot-pound</para>
<para> 'BTU' BTU</para>
<para>Power:</para>
<para> 'HP' Horsepower</para>
<para> 'W' Watt</para>
<para>Magnetism:</para>
<para> 'T' Tesla</para>
<para> 'ga' Gauss</para>
<para>Temperature:</para>
<para> 'C' Degree Celsius</para>
<para> 'F' Degree Fahrenheit</para>
<para> 'K' Degree Kelvin</para>
<para>Liquid measure:</para>
<para> 'tsp' Teaspoon</para>
<para> 'tbs' Tablespoon</para>
<para> 'oz' Fluid ounce</para>
<para> 'cup' Cup</para>
<para> 'pt' Pint</para>
<para> 'qt' Quart</para>
<para> 'gal' Gallon</para>
<para> 'l' Liter</para>
<para>For metric units any of the following prefixes can be used:</para>
<para> 'Y' yotta 1E+24</para>
<para> 'Z' zetta 1E+21</para>
<para> 'E' exa 1E+18</para>
<para> 'P' peta 1E+15</para>
<para> 'T' tera 1E+12</para>
<para> 'G' giga 1E+09</para>
<para> 'M' mega 1E+06</para>
<para> 'k' kilo 1E+03</para>
<para> 'h' hecto 1E+02</para>
<para> 'e' deka 1E+01</para>
<para> 'd' deci 1E-01</para>
<para> 'c' centi 1E-02</para>
<para> 'm' milli 1E-03</para>
<para> 'u' micro 1E-06</para>
<para> 'n' nano 1E-09</para>
<para> 'p' pico 1E-12</para>
<para> 'f' femto 1E-15</para>
<para> 'a' atto 1E-18</para>
<para> 'z' zepto 1E-21</para>
<para> 'y' yocto 1E-24</para>
<itemizedlist>
<listitem>
<para>If <parameter>from_unit</parameter> and <parameter>to_unit</parameter> are different types, <function>CONVERT</function> returns #NUM! error.</para>
<para><function>DEC2BIN</function> function converts a decimal number to a binary number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>DEC2HEX</function> function converts a decimal number to a hexadecimal number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>DEC2OCT</function> function converts a decimal number to an octal number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>ERF</function> returns the error function. With a single argument <function>ERF</function> returns the error function, defined as</para>
<para> erf(x) = 2/sqrt(pi)* integral from 0 to x of exp(-t*t) dt.</para>
<para>If two arguments are supplied, they are the lower and upper limits of the integral.</para>
<itemizedlist>
<listitem>
<para>If either <parameter>lower_limit</parameter> or <parameter>upper_limit</parameter> is not numeric a #VALUE! error is returned.</para>
</listitem>
<listitem>
<para>This function is upward-compatible with that in Excel. (If two arguments are supplied, Excel will not allow either to be negative.)</para>
<para>The second example shows that a random variable with a normal distribution has a 90 percent chance of falling within approximately 1.645 standard deviations of the mean.</para>
<para><function>GESTEP</function> function test for if <parameter>x</parameter> is >= <parameter>y</parameter>, returning 1 if it is so, and 0 otherwise. <parameter>y</parameter> is optional, and defaults to 0.</para>
<itemizedlist>
<listitem>
<para>If either argument is non-numeric returns a #VALUE! error.</para>
<para><function>HEX2BIN</function> function converts a hexadecimal number to a binary number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>HEX2OCT</function> function converts a hexadecimal number to an octal number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>INVSUMINV</function> sum calculates the inverse of the sum of inverses.</para>
<para>The primary use of this is for calculating equivalent resistance for parallel resistors or equivalent capacitance of a series of capacitors.</para>
<itemizedlist>
<listitem>
<para>All arguments must be non-negative, or else a #VALUE! result is returned.</para>
</listitem>
<listitem>
<para>If any argument is zero, the result is zero.</para>
<para><function>OCT2BIN</function> function converts an octal number to a binary number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>OCT2HEX</function> function converts an octal number to a hexadecimal number. <parameter>places</parameter> is an optional field, specifying to zero pad to that number of spaces.</para>
<itemizedlist>
<listitem>
<para>If <parameter>places</parameter> is too small or negative #NUM! error is returned.</para>
<para><function>ACCRINT</function> calculates the accrued interest for a security that pays periodic interest.</para>
<para><parameter>issue</parameter> is the issue date of the security. <parameter>first_interest</parameter> is the first interest date of the security. <parameter>settlement</parameter> is the settlement date of the security. The settlement date is always after the issue date (the date when the security is bought). <parameter>rate</parameter> is the annual rate of the security and <parameter>par</parameter> is the par value of the security. <parameter>frequency</parameter> is the number of coupon payments per year.</para>
<para>Allowed frequencies are:</para>
<para> 1 = annual,</para>
<para> 2 = semi,</para>
<para> 4 = quarterly.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>issue</parameter> date, <parameter>first_interest</parameter> date, or <parameter>settlement</parameter> date is not valid, <function>ACCRINT</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>The dates must be <parameter>issue</parameter> < <parameter>first_interest</parameter> < <parameter>settlement</parameter>, or <function>ACCRINT</function> returns #NUM! error.</para>
<para>If <parameter>issue</parameter> date is after <parameter>settlement</parameter> date or they are the same, <function>ACCRINT</function> returns #NUM! error.</para>
<para><function>ACCRINTM</function> calculates and returns the accrued interest for a security from <parameter>issue</parameter> to <parameter>maturity</parameter> date.</para>
<para><parameter>issue</parameter> is the issue date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>rate</parameter> is the annual rate of the security and <parameter>par</parameter> is the par value of the security. If you omit <parameter>par</parameter>, <function>ACCRINTM</function> applies $1,000 instead. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>issue</parameter> date or <parameter>maturity</parameter> date is not valid, <function>ACCRINTM</function> returns #NUM! error.</para>
<para>If <parameter>issue</parameter> date is after <parameter>maturity</parameter> date or they are the same, <function>ACCRINTM</function> returns #NUM! error.</para>
<para><function>AMORDEGRC</function>: Calculates depreciation for each accounting period using French accounting conventions. Assets purchased in the middle of a period take prorated depreciation into account. This is similar to AMORLINC, except that a depreciation coefficient is applied in the calculation depending on the life of the assets.</para>
<para>Named for AMORtissement DEGRessif Comptabilite</para>
<para><parameter>cost</parameter> The value of the asset.</para>
<para><parameter>purchase_date</parameter> The date the asset was purchased.</para>
<para><parameter>first_period</parameter> The end of the first period.</para>
<para><parameter>salvage</parameter> Asset value at maturity.</para>
<para><parameter>period</parameter> The length of accounting periods.</para>
<para><parameter>rate</parameter> rate of depreciation as a percentage.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>AMORLINC</function>: Calculates depreciation for each accounting period using French accounting conventions. Assets purchased in the middle of a period take prorated depreciation into account.</para>
<para>Named for AMORtissement LINeaire Comptabilite.</para>
<para><parameter>cost</parameter> The value of the asset.</para>
<para><parameter>purchase_date</parameter> The date the asset was purchased.</para>
<para><parameter>first_period</parameter> The end of the first period.</para>
<para><parameter>salvage</parameter> Asset value at maturity.</para>
<para><parameter>period</parameter> The length of accounting periods.</para>
<para><parameter>rate</parameter> rate of depreciation as a percentage.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>CUM_BIV_NORM_DIST</function> calculates the cumulative bivariate normal distribution from parameters a, b & rho. The return value is the probability that two random variables with correlation <parameter>rho</parameter> are respectively each less than <parameter>a</parameter> and <parameter>b</parameter>.</para>
<para><function>CUMIPMT</function> returns the cumulative interest paid on a loan between <parameter>start_period</parameter> and <parameter>end_period</parameter>.</para>
<para><function>CUMPRINC</function> returns the cumulative principal paid on a loan between <parameter>start_period</parameter> and <parameter>end_period</parameter>.</para>
<para><function>DB</function> calculates the depreciation of an asset for a given period using the fixed-declining balance method. <parameter>cost</parameter> is the initial value of the asset. <parameter>salvage</parameter> is the value after the depreciation.</para>
<para><parameter>life</parameter> is the number of periods overall. <parameter>period</parameter> is the period for which you want the depreciation to be calculated. <parameter>month</parameter> is the number of months in the first year of depreciation.</para>
<itemizedlist>
<listitem>
<para>If <parameter>month</parameter> is omitted, it is assumed to be 12.</para>
<para><function>DDB</function> returns the depreciation of an asset for a given period using the double-declining balance method or some other similar method you specify.</para>
<para><parameter>cost</parameter> is the initial value of the asset, <parameter>salvage</parameter> is the value after the last period, <parameter>life</parameter> is the number of periods, <parameter>period</parameter> is the period for which you want the depreciation to be calculated, and <parameter>factor</parameter> is the factor at which the balance declines.</para>
<itemizedlist>
<listitem>
<para>If <parameter>factor</parameter> is omitted, it is assumed to be two (double-declining balance method).</para>
<para><function>DISC</function> calculates and returns the discount rate for a security. <parameter>settlement</parameter> is the settlement date of the security.</para>
<para><parameter>maturity</parameter> is the maturity date of the security. <parameter>par</parameter> is the price per $100 face value of the security. <parameter>redemption</parameter> is the redeption value per $100 face value of the security.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> date or <parameter>maturity</parameter> date is not valid, <function>DISC</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
<para>If <parameter>settlement</parameter> date is after <parameter>maturity</parameter> date or they are the same, <function>DISC</function> returns #NUM! error.</para>
<para><function>DOLLARDE</function> converts a dollar price expressed as a fraction into a dollar price expressed as a decimal number.</para>
<para><parameter>fractional_dollar</parameter> is the fractional number to be converted. <parameter>fraction</parameter> is the denominator of the fraction.</para>
<itemizedlist>
<listitem>
<para>If <parameter>fraction</parameter> is non-integer it is truncated.</para>
<para><function>DURATION</function> calculates the duration of a security.</para>
<para><parameter>settlement</parameter> is the settlement date of the security.</para>
<para><parameter>maturity</parameter> is the maturity date of the security.</para>
<para><parameter>coup</parameter> The annual coupon rate as a percentage.</para>
<para><parameter>yield</parameter> The annualized yield of the security as a percentage.</para>
<para><parameter>frequency</parameter> is the number of coupon payments per year. Allowed frequencies are: 1 = annual, 2 = semi, 4 = quarterly. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>DURATION</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para>For example credit cards will list an APR (annual percentage rate) which is a nominal interest rate.</para>
<para>For example if you wanted to find out how much you are actually paying interest on your credit card that states an APR of 19% that is compounded monthly you would type in:</para>
<para>=<function>EFFECT</function>(.19,12) and you would get .2075 or 20.75%. That is the effective percentage you will pay on your loan.</para>
<para><function>EUROCONVERT</function> converts the currency value <parameter>n</parameter> of <parameter>source</parameter> currency to a target currency <parameter>target</parameter>. Both currencies are given as three-letter strings using the ISO code system names. The following currencies are available:</para>
<para> ATS (Austria)</para>
<para> BEF (Belgium)</para>
<para> DEM (Germany)</para>
<para> ESP (Spain)</para>
<para> EUR (Euro)</para>
<para> FIM (Finland)</para>
<para> FRF (France)</para>
<para> GRD (Greek)</para>
<para> IEP (Ireland)</para>
<para> ITL (Italy)</para>
<para> LUF (Luxembourg)</para>
<para> NLG (Netherlands)</para>
<para> PTE (Portugal)</para>
<itemizedlist>
<listitem>
<para>If the given <parameter>source</parameter> or <parameter>target</parameter> is other than one of the above, <function>EUROCONVERT</function> returns #VALUE! error.</para>
<para><function>FV</function> computes the future value of an investment. This is based on periodic, constant payments and a constant interest rate. The interest rate per period is <parameter>rate</parameter>, <parameter>nper</parameter> is the number of periods in an annuity, <parameter>pmt</parameter> is the payment made each period, <parameter>pv</parameter> is the present value and <parameter>type</parameter> is when the payment is made.</para>
<itemizedlist>
<listitem>
<para>If <parameter>type</parameter> = 1 then the payment is made at the beginning of the period.</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> = 0 it is made at the end of each period.</para>
<para><function>FVSCHEDULE</function> returns the future value of given initial value after applying a series of compound periodic interest rates. The argument <parameter>principal</parameter> is the present value; <parameter>schedule</parameter> is an array of interest rates to apply. The <parameter>schedule</parameter> argument must be a range of cells.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain interest rates 0.11, 0.13, 0.09, 0.17, and 0.03. Then</para>
<para><function>G_DURATION</function> calculates number of periods needed for an investment to attain a desired value. This function is similar to FV and PV with a difference that we do not need give the direction of cash flows e.g. -100 for a cash outflow and +100 for a cash inflow.</para>
<para><function>INTRATE</function> calculates and returns the interest rate of a fully vested security.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>investment</parameter> is the prize of the security paid at <parameter>settlement</parameter> date and <parameter>redemption</parameter> is the amount to be received at <parameter>maturity</parameter> date.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> date or <parameter>maturity</parameter> date is not valid, <function>INTRATE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
<para>If <parameter>settlement</parameter> date is after <parameter>maturity</parameter> date or they are the same, <function>INTRATE</function> returns #NUM! error.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>If you had a bond with a settlement date of April 15, 2000, maturity date September 30, 2000, investment of $100,000, redemption value $103,525, using the actual/actual basis, the bond discount rate is:</para>
<para>=<function>INTRATE</function>(36631, 36799, 100000, 103525, 1) which equals 0.0648 or 6.48%</para>
<para><function>IRR</function> calculates and returns the internal rate of return of an investment. This function is closely related to the net present value function (NPV). The <function>IRR</function> is the interest rate for a series of cash flows where the net preset value is zero.</para>
<para><parameter>values</parameter> contains the series of cash flows generated by the investment. The payments should occur at regular intervals. The optional <parameter>guess</parameter> is the initial value used in calculating the <function>IRR</function>. You do not have to use that, it is only provided for the Excel compatibility.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1:A8 contain the numbers -32432, 5324, 7432, 9332, 12324, 4334, 1235, -3422. Then</para>
<para><function>MDURATION</function> returns the Macauley duration for a security with par value 100.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 MSRB 30/360 (MSRB Rule G33 (e))</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<para> 5 European+ 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> or <parameter>maturity</parameter> are not valid dates, <function>MDURATION</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>MDURATION</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, MSRB 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is invalid, #NUM! error is returned.</para>
<para><function>NPER</function> calculates number of periods of an investment based on periodic constant payments and a constant interest rate.</para>
<para>The interest rate per period is <parameter>rate</parameter>, <parameter>pmt</parameter> is the payment made each period, <parameter>pv</parameter> is the present value, <parameter>fv</parameter> is the future value and <parameter>type</parameter> is when the payments are due. If <parameter>type</parameter> = 1, payments are due at the beginning of the period, if <parameter>type</parameter> = 0, payments are due at the end of the period.</para>
<para>For example, if you deposit $10,000 in a savings account that earns an interest rate of 6%. To calculate home many years it will take to double your investment use <function>NPER</function> as follows:</para>
<para>=<function>NPER</function>(0.06, 0, -10000, 20000,0)returns 11.895661046 which indicates that you can double your money just before the end of the 12th year.</para>
<para><function>NPV</function> calculates the net present value of an investment generating periodic payments. <parameter>rate</parameter> is the periodic interest rate and <parameter>v1</parameter>, <parameter>v2</parameter>, ... are the periodic payments. If the schedule of the cash flows are not periodic use the XNPV function.</para>
<para><function>ODDFPRICE</function> returns the price per $100 face value of a security. The security should have an odd short or long first period.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>issue</parameter> is the issue date of the security. <parameter>frequency</parameter> is the number of coupon payments per year. Allowed frequencies are: 1 = annual, 2 = semi, 4 = quarterly. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>ODDFPRICE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>ODDFYIELD</function> calculates the yield of a security having an odd first period.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>frequency</parameter> is the number of coupon payments per year. Allowed frequencies are: 1 = annual, 2 = semi, 4 = quarterly. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>ODDFYIELD</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>ODDLPRICE</function> calculates the price per $100 face value of a security that has an odd last coupon period.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>frequency</parameter> is the number of coupon payments per year. Allowed frequencies are: 1 = annual, 2 = semi, 4 = quarterly. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>ODDLPRICE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>ODDLYIELD</function> calculates the yield of a security having an odd last period.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>frequency</parameter> is the number of coupon payments per year. Allowed frequencies are: 1 = annual, 2 = semi, 4 = quarterly. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>ODDLYIELD</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>OPT_2_ASSET_CORRELATION</function> models the theoretical price of options on 2 assets with correlation <parameter>rho</parameter>.</para>
<para>The payoff for a call is max(<parameter>spot2</parameter> - <parameter>strike2</parameter>,0) if <parameter>spot1</parameter> > <parameter>strike1</parameter> or 0 otherwise.</para>
<para>The payoff for a put is max (<parameter>strike2</parameter> - <parameter>spot2</parameter>, 0) if <parameter>spot1</parameter> < <parameter>strike1</parameter> or 0 otherwise.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>spot1</parameter> & <parameter>spot2</parameter> are the spot prices of the underlying assets.</para>
<para><parameter>strike1</parameter> & <parameter>strike2</parameter> are the strike prices at which the option is struck.</para>
<para><parameter>time</parameter> is the initial maturity of the option in years.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>cost_of_carry1</parameter> & <parameter>cost_of_carry2</parameter> are the leakage in value of the underlying assets, for common stocks, this would be the dividend yield.</para>
<para><parameter>volatility1</parameter> & <parameter>volatility2</parameter> are the annualised volatility in price of the underlying assets.</para>
<para><function>OPT_AMER_EXCHANGE</function> models the theoretical price of an American option to exchange one asset with quantity <parameter>qty2</parameter> and spot price <parameter>spot2</parameter> for another, with quantity <parameter>qty1</parameter> and spot price <parameter>spot1</parameter></para>
<para><parameter>time</parameter> is the initial maturity of the option in years.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>cost_of_carry1</parameter> & <parameter>cost_of_carry2</parameter> are the leakage in value of the underlying assets, for common stocks, this would be the dividend yield.</para>
<para><parameter>volatility1</parameter> & <parameter>volatility2</parameter> are the annualised volatility in price of the underlying assets.</para>
<para><parameter>rho</parameter> is the correlation between the two assets.</para>
<para>OPT_ models the theoretical price of either an American or European style option using a binomial tree</para>
<para><parameter>amer_euro_flag</parameter> is either "a" or "e" to indicate weather the option being valued is an American or European style option respectively</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>num_time_steps</parameter> is the number of time steps used in the valuation, a greater number of time steps yeilds greater accuracy however is slower to calculate</para>
<para><parameter>spot</parameter> is the spot price of the underlying asset.</para>
<para><parameter>strike</parameter> is the strike price at which the option is struck</para>
<para><parameter>time</parameter> is the initial maturity of the option in years.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>volatility</parameter> is the annualised volatility in price of the underlying asset.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset,</para>
<para><function>OPT_BJERSTENS</function> models the theoretical price of american options according to the Bjerksund & Stensland approximation technique.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>spot</parameter> is the spot price of the underlying asset</para>
<para><parameter>strike</parameter> is the strike price at which the option is struck</para>
<para><parameter>time</parameter> is the number of days to maturity of the option</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest</para>
<para><parameter>volatility</parameter> is the annualised volatility in price of the underlying asset</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield.</para>
<para><function>OPT_BS</function> uses the Black-Scholes model to calculate the price of a European option using call_put_flag, <parameter>call_put_flag</parameter>, c or p struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para><parameter>time</parameter> is the time to maturity of the option expressed in years</para>
<para><parameter>rate</parameter> is the risk-free interest rate</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset or the period through to the exercise date.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed in the same units as <parameter>strike</parameter> and <parameter>spot</parameter>.</para>
<para><function>OPT_BS_CARRYCOST</function> uses the Black-Scholes model to calculate the "elasticity" of a European option struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para>(The elasticity of an option is the rate of change of its price with respect to its cost of carry.)</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset for the period through to the exercise date. <parameter>time</parameter> is the time to maturity of the option expressed in years</para>
<para><parameter>rate</parameter> is the risk-free interest rate to the exercise date, in percent.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield.</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed as the rate of change of option value, per 100% volatility.</para>
<para><function>OPT_BS_DELTA</function> uses the Black-Scholes model to calculate the "delta" of a European option with call_put_flag, <parameter>call_put_flag</parameter>, c or p struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para>Where <parameter>time</parameter> is the time to maturity of the option expressed in years</para>
<para><parameter>rate</parameter> is the risk-free interest rate</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset or the period through to the exercise date.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed in the same units as <parameter>strike</parameter> and <parameter>spot</parameter>.</para>
<para><function>OPT_BS_GAMMA</function> uses the Black-Scholes model to calculate the "gamma" of a European option struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para>(The gamma of an option is the second derivative of its price with respect to the price of the underlying asset, and is the same for calls and puts.)</para>
<para><parameter>time</parameter> is the time to maturity of the option expressed in years</para>
<para><parameter>rate</parameter> is the risk-free interest rate to the exercise date, in percent.</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset for the period through to the exercise date.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed as the rate of change of delta per unit change in <parameter>spot</parameter>.</para>
<para><function>OPT_BS_RHO</function> uses the Black-Scholes model to calculate the "rho" of a European option with call_put_flag, <parameter>call_put_flag</parameter> struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para>(The rho of an option is the rate of change of its price with respect to the risk free interest rate.)</para>
<para><parameter>time</parameter> is the time to maturity of the option expressed in years</para>
<para><parameter>rate</parameter> is the risk-free interest rate to the exercise date, in percent.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed as the rate of change of option value, per 100% change in <parameter>rate</parameter>.</para>
<para><function>OPT_BS_THETA</function> uses the Black-Scholes model to calculate the "theta" of a European option with call_put_flag, <parameter>call_put_flag</parameter> struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para>(The theta of an option is the rate of change of its price with respect to time to expiry.)</para>
<para><parameter>time</parameter> is the time to maturity of the option expressed in years</para>
<para>and <parameter>rate</parameter> is the risk-free interest rate to the exercise date, in percent.</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset for the period through to the exercise date.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed as minus the rate of change of option value, per 365.25 days.</para>
<para><function>OPT_BS_VEGA</function> uses the Black-Scholes model to calculate the "vega" of a European option struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para>(The vega of an option is the rate of change of its price with respect to volatility, and is the same for calls and puts.)</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset for the period through to the exercise date.</para>
<para><parameter>time</parameter> is the time to maturity of the option expressed in years</para>
<para><parameter>rate</parameter> is the risk-free interest rate to the exercise date, in percent.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield.</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed as the rate of change of option value, per 100% volatility.</para>
<para><function>OPT_EURO_EXCHANGE</function> models the theoretical price of a European option to exchange one asset with quantity <parameter>qty2</parameter> and spot price <parameter>spot2</parameter> for another, with quantity <parameter>qty1</parameter> and spot price <parameter>spot1</parameter>.</para>
<para><parameter>time</parameter> is the initial maturity of the option in years.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>cost_of_carry1</parameter> & <parameter>cost_of_carry2</parameter> are the leakage in value of the underlying assets, for common stocks, this would be the dividend yield.</para>
<para><parameter>volatility1</parameter> & <parameter>volatility2</parameter> are the annualised volatility in price of the underlying assets.</para>
<para><parameter>rho</parameter> is the correlation between the two assets.</para>
<para><function>OPT_EXEC</function> models the theoretical price of executive stock options <parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para>One would expect this to always be a call option</para>
<para><parameter>spot</parameter> is the spot price of the underlying asset</para>
<para><parameter>strike</parameter> is the strike price at which the option is struck</para>
<para><parameter>time</parameter> is the number of days to maturity of the option</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest</para>
<para><parameter>volatility</parameter> is the annualised volatility in price of the underlying asset</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<para><parameter>lambda</parameter> is the jump rate for executives. The model assumes executives forfeit their options if they leave the company.</para>
<para><function>OPT_EXTENDIBLE_WRITER</function> models the theoretical price of extendible writer options. These are options that can be exercised at an initial period, <parameter>time1</parameter>, or their maturity extended to <parameter>time2</parameter> if the option is out of the money at <parameter>time1</parameter></para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>spot</parameter> is the spot price of the underlying asset.</para>
<para><parameter>strike1</parameter> is the strike price at which the option is struck.</para>
<para><parameter>strike2</parameter> is the strike price at which the option is re-struck if out of the money at <parameter>time1</parameter>.</para>
<para><parameter>time1</parameter> is the initial maturity of the option in years.</para>
<para><parameter>time2</parameter> is the is the extended maturity in years if chosen.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield.</para>
<para><parameter>volatility</parameter> is the annualised volatility in price of the underlying asset.</para>
<para><function>OPT_FIXED_STRK_LKBK</function> models the theoretical price of where the holder of the option may exercise on expiry at the most favourable price observed during the options life of the underlying asset</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>spot</parameter> is the spot price of the underlying asset.</para>
<para><parameter>spot_min</parameter> is the minimum spot price of the underlying asset so far observed.</para>
<para><parameter>spot_max</parameter> is the maximum spot price of the underlying asset so far observed.</para>
<para><parameter>time</parameter> is the initial maturity of the option in years.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yeild.</para>
<para><parameter>volatility</parameter> is the annualised volatility in price of the underlying asset.</para>
<para><function>OPT_FLOAT_STRK_LKBK</function> models the theoretical price of an option where the holder of the option may exercise on expiry at the most favourable price observed during the options life of the underlying asset.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>spot</parameter> is the spot price of the underlying asset.</para>
<para><parameter>spot_min</parameter> is the minimum spot price of the underlying asset so far observed.</para>
<para><parameter>spot_max</parameter> is the maximum spot price of the underlying asset so far observed.</para>
<para><parameter>time</parameter> is the initial maturity of the option in years.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yeild.</para>
<para><parameter>volatility</parameter> is the annualised volatility in price of the underlying asset.</para>
<para><function>OPT_FRENCH</function> values the theoretical price of a European option adjusted for trading day volatility, struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset for the period through to the exercise date.</para>
<para><parameter>time</parameter> the number of calendar days to exercise divided by calendar days in the year.</para>
<para><parameter>t2</parameter> is the number of trading days to exercise divided by trading days in the year.</para>
<para><parameter>rate</parameter> is the risk-free interest rate.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, to the exercise date, in percent.</para>
<para>For common stocks, this would be the dividend yield.</para>
<para><function>OPT_GARMAN_KOHLHAGEN</function> values the theoretical price of a European currency option struck at <parameter>strike</parameter> on an asset with spot price <parameter>spot</parameter>.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>volatility</parameter> is the annualized volatility, in percent, of the asset for the period through to the exercise date.</para>
<para><parameter>time</parameter> the number of days to exercise</para>
<para><parameter>domestic_rate</parameter> is the domestic risk-free interest rate to the exercise date</para>
<para><parameter>foreign_rate</parameter> is the foreign risk-free interest rate to the exercise date, in percent.</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<itemizedlist>
<listitem>
<para>The returned value will be expressed as the rate of change of option value, per 100% volatility.</para>
<para><function>OPT_MILTERSEN_SCHWARTZ</function> models the theoretical price of options on commodities futures according to Miltersen & Schwartz.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>p_t</parameter> is a zero coupon bond with expiry at option maturity</para>
<para><parameter>f_t</parameter> is is the futures price</para>
<para><parameter>x</parameter> is is the strike price</para>
<para><parameter>t1</parameter> is the time to maturity of the option</para>
<para><parameter>t2</parameter> is the time to maturity of the underlying commodity futures contract</para>
<para><parameter>v_s</parameter> is the volatility of the spot commodity price</para>
<para><parameter>v_e</parameter> is the volatility of the future convenience yield</para>
<para><parameter>v_f</parameter> is the volatility of the forward rate of interest</para>
<para><parameter>rho_se</parameter> is correlation between the spot commodity price and the convenience yield</para>
<para><parameter>rho_sf</parameter> is correlation between the spot commodity price and the forward interest rate</para>
<para><parameter>rho_ef</parameter> is correlation between the forward interest rate and the convenience yield</para>
<para><parameter>kappa_e</parameter> is the speed of mean reversion of the convenience yield</para>
<para><parameter>kappa_f</parameter> is the speed of mean reversion of the forward interest rate</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset of the underlying optionfor common stocks, this would be the dividend yield</para>
<para><parameter>volatility</parameter> is the annualised volatility in price of the underlying asset of the underlying option</para>
<para><function>OPT_SPREAD_APPROX</function> models the theoretical price of a European option on the spread between two futures contracts.</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>fut_price1</parameter> & <parameter>fut_price2</parameter> are the prices of the two futures contracts.</para>
<para><parameter>strike</parameter> is the strike price at which the option is struck</para>
<para><parameter>time</parameter> is the initial maturity of the option in years.</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest.</para>
<para><parameter>volatility1</parameter> & <parameter>volatility2</parameter> are the annualised volatility in price of the underlying futures contracts.</para>
<para><parameter>rho</parameter> is the correlation between the two futures contracts.</para>
<para><function>OPT_TIME_SWITCH</function> models the theoretical price of time switch options. (Pechtl 1995)</para>
<para>The holder receives <parameter>a</parameter> * <parameter>dt</parameter> for each period dt that the asset price was greater than the strike price (for a call) or below it (for a put)</para>
<para><parameter>call_put_flag</parameter> is 'c' or 'p' to indicate whether the option is a call or a put.</para>
<para><parameter>spot</parameter> is the spot price of the underlying asset</para>
<para><parameter>strike</parameter> is the strike price at which the option is struck</para>
<para><parameter>a</parameter> is the amount received for each time period as discussed above</para>
<para><parameter>time</parameter> is the maturity of the option in years</para>
<para><parameter>m</parameter> is the number of time units the option has already met the condition</para>
<para><parameter>dt</parameter> is the agreed upon discrete time period (often a day) expressed as a fraction of a year</para>
<para><parameter>rate</parameter> is the risk annualised free rate of interest</para>
<para><parameter>cost_of_carry</parameter> is the leakage in value of the underlying asset, for common stocks, this would be the dividend yield</para>
<para><function>PMT</function> returns the amount of payment for a loan based on a constant interest rate and constant payments (each payment is equal amount).</para>
<para><parameter>rate</parameter> is the constant interest rate.</para>
<para><parameter>nper</parameter> is the overall number of payments.</para>
<para><parameter>pv</parameter> is the present value.</para>
<para><parameter>fv</parameter> is the future value.</para>
<para><parameter>type</parameter> is the type of the payment: 0 means at the end of the period and 1 means at the beginning of the period.</para>
<itemizedlist>
<listitem>
<para>If <parameter>fv</parameter> is omitted, Gnumeric assumes it to be zero.</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> is omitted, Gnumeric assumes it to be zero.</para>
<para><function>PRICE</function> returns price per $100 face value of a security. This method can only be used if the security pays periodic interest.</para>
<para><parameter>frequency</parameter> is the number of coupon payments per year. Allowed frequencies are: 1 = annual, 2 = semi, 4 = quarterly. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>PRICE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>PRICEDISC</function> calculates and returns the price per $100 face value of a security bond. The security does not pay interest at maturity.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>discount</parameter> is the rate for which the security is discounted. <parameter>redemption</parameter> is the amount to be received on <parameter>maturity</parameter> date.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> date or <parameter>maturity</parameter> date is not valid, <function>PRICEDISC</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
<para>If <parameter>settlement</parameter> date is after <parameter>maturity</parameter> date or they are the same, <function>PRICEDISC</function> returns #NUM! error.</para>
<para><function>PRICEMAT</function> calculates and returns the price per $100 face value of a security. The security pays interest at maturity.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>issue</parameter> is the issue date of the security. <parameter>rate</parameter> is the discount rate of the security. <parameter>yield</parameter> is the annual yield of the security. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> date or <parameter>maturity</parameter> date is not valid, <function>PRICEMAT</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
<para>If <parameter>settlement</parameter> date is after <parameter>maturity</parameter> date or they are the same, <function>PRICEMAT</function> returns #NUM! error.</para>
<para><function>PV</function> calculates the present value of an investment. <parameter>rate</parameter> is the periodic interest rate, <parameter>nper</parameter> is the number of periods used for compounding. <parameter>pmt</parameter> is the payment made each period, <parameter>fv</parameter> is the future value and <parameter>type</parameter> is when the payment is made.</para>
<itemizedlist>
<listitem>
<para>If <parameter>type</parameter> = 1 then the payment is made at the beginning of the period.</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> = 0 (or omitted) it is made at the end of each period.</para>
<para><function>RECEIVED</function> calculates and returns the amount to be received at maturity date for a security bond.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. The amount of investment is specified in <parameter>investment</parameter>. <parameter>rate</parameter> is the security's discount rate.</para>
<para><parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> date or <parameter>maturity</parameter> date is not valid, <function>RECEIVED</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
<para>If <parameter>settlement</parameter> date is after <parameter>maturity</parameter> date or they are the same, <function>RECEIVED</function> returns #NUM! error.</para>
<para>For example, lets suppose your company purchases a new machine for $10,000, which has a salvage value of $700 and will have a useful life of 10 years. The <function>SLN</function> yearly depreciation is computed as follows:</para>
<para><function>SYD</function> function calculates the sum-of-years digits depreciation for an asset based on its cost, salvage value, anticipated life and a particular period. This method accelerates the rate of the depreciation, so that more depreciation expense occurs in earlier periods than in later ones. The depreciable cost is the actual cost minus the salvage value. The useful life is the number of periods (typically years) over with the asset is depreciated.</para>
<para>The Formula used for sum-of-years digits depreciation is:</para>
<para>For example say a company purchases a new computer for $5000 which has a salvage value of $200, and a useful life of five years. We would use the following to calculate the second year's depreciation using the <function>SYD</function> method:</para>
<para>=<function>SYD</function>(5000, 200, 5, 2) which returns 1,280.00.</para>
<para><function>TBILLEQ</function> function returns the bond-yield equivalent (BEY) for a treasury bill. <function>TBILLEQ</function> is equivalent to</para>
<para>where DSM is the days between <parameter>settlement</parameter> and <parameter>maturity</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> is after <parameter>maturity</parameter> or the <parameter>maturity</parameter> is set to over one year later than the <parameter>settlement</parameter>, <function>TBILLEQ</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>discount</parameter> is negative, <function>TBILLEQ</function> returns #NUM! error.</para>
<para><function>TBILLPRICE</function> function returns the price per $100 value for a treasury bill where <parameter>settlement</parameter> is the settlement date and <parameter>maturity</parameter> is the maturity date of the bill. <parameter>discount</parameter> is the treasury bill's discount rate.</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> is after <parameter>maturity</parameter> or the <parameter>maturity</parameter> is set to over one year later than the <parameter>settlement</parameter>, <function>TBILLPRICE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>discount</parameter> is negative, <function>TBILLPRICE</function> returns #NUM! error.</para>
<para><function>TBILLYIELD</function> function returns the yield for a treasury bill. <parameter>settlement</parameter> is the settlement date and <parameter>maturity</parameter> is the maturity date of the bill. <parameter>discount</parameter> is the treasury bill's discount rate.</para>
<itemizedlist>
<listitem>
<para>If <parameter>settlement</parameter> is after <parameter>maturity</parameter> or the <parameter>maturity</parameter> is set to over one year later than the <parameter>settlement</parameter>, <function>TBILLYIELD</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>pr</parameter> is negative, <function>TBILLYIELD</function> returns #NUM! error.</para>
<para><function>VDB</function> calculates the depreciation of an asset for a given period or partial period using the double-declining balance method.</para>
<para><function>XIRR</function> calculates and returns the internal rate of return of an investment that has not necessarily periodic payments. This function is closely related to the net present value function (NPV and XNPV). The <function>XIRR</function> is the interest rate for a series of cash flows where the XNPV is zero.</para>
<para><parameter>values</parameter> contains the series of cash flows generated by the investment. <parameter>dates</parameter> contains the dates of the payments. The first date describes the payment day of the initial payment and thus all the other dates should be after this date. The optional <parameter>guess</parameter> is the initial value used in calculating the <function>XIRR</function>. You do not have to use that, it is only provided for the Excel compatibility.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1:A5 contain the numbers -6000, 2134, 1422, 1933, and 1422, and the cells B1:B5 contain the dates "1999-01-15", "1999-04-04", "1999-05-09", "2000-03-12", and "2000-05-1". Then</para>
<para><function>XNPV</function> calculates the net present value of an investment. The schedule of the cash flows is given in <parameter>dates</parameter> array. The first date indicates the beginning of the payment schedule. <parameter>rate</parameter> is the interest rate and <parameter>values</parameter> are the payments.</para>
<itemizedlist>
<listitem>
<para>If <parameter>values</parameter> and <parameter>dates</parameter> contain unequal number of values, <function>XNPV</function> returns the #NUM! error.</para>
<para><function>YIELD</function> returns the yield on a security that pays periodic interest.</para>
<para><parameter>frequency</parameter> is the number of coupon payments per year. Allowed frequencies are: 1 = annual, 2 = semi, 4 = quarterly. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>YIELD</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>YIELDDISC</function> calculates the annual yield of a security that is discounted.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>pr</parameter> is the price per $100 face value of the security. <parameter>redemption</parameter> is the redemption value per $100 face value. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>frequency</parameter> is other than 1, 2, or 4, <function>YIELDDISC</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>YIELDMAT</function> calculates the annual yield of a security for which the interest is payed at maturity date.</para>
<para><parameter>settlement</parameter> is the settlement date of the security. <parameter>maturity</parameter> is the maturity date of the security. <parameter>issue</parameter> is the issue date of the security. <parameter>rate</parameter> is the interest rate set to the security. <parameter>pr</parameter> is the price per $100 face value of the security. <parameter>basis</parameter> is the type of day counting system you want to use:</para>
<para> 0 US 30/360</para>
<para> 1 actual days/actual days</para>
<para> 2 actual days/360</para>
<para> 3 actual days/365</para>
<para> 4 European 30/360</para>
<itemizedlist>
<listitem>
<para>If <parameter>basis</parameter> is omitted, US 30/360 is applied.</para>
</listitem>
<listitem>
<para>If <parameter>basis</parameter> is not in between 0 and 4, #NUM! error is returned.</para>
<para><function>GETENV</function> retrieves a value from the execution environment.</para>
<itemizedlist>
<listitem>
<para>If the variable specified by <parameter>string</parameter> does not exist, #N/A! will be returned. Note, that variable names are case sensitive.</para>
<para><function>AND</function> implements the logical <function>AND</function> function: the result is TRUE if all of the expressions evaluate to TRUE, otherwise it returns FALSE.</para>
<para><parameter>b1</parameter> trough <parameter>bN</parameter> are expressions that should evaluate to TRUE or FALSE. If an integer or floating point value is provided, zero is considered FALSE and anything else is TRUE.</para>
<itemizedlist>
<listitem>
<para>If the values contain strings or empty cells those values are ignored.</para>
</listitem>
<listitem>
<para>If no logical values are provided, then the error #VALUE! is returned.</para>
<para><function>IF</function> function can be used to evaluate conditionally other expressions. <function>IF</function> evaluates <parameter>condition</parameter>. If <parameter>condition</parameter> returns a non-zero value the result of the <function>IF</function> expression is the <parameter>if</parameter>-true expression, otherwise <function>IF</function> evaluates to the value of <parameter>if</parameter>-false.</para>
<itemizedlist>
<listitem>
<para>If omitted <parameter>if</parameter>-true defaults to TRUE and <parameter>if</parameter>-false to FALSE.</para>
<para><function>NOT</function> implements the logical <function>NOT</function> function: the result is TRUE if the <parameter>number</parameter> is zero; otherwise the result is FALSE.</para>
<para><function>OR</function> implements the logical <function>OR</function> function: the result is TRUE if any of the values evaluated to TRUE.</para>
<para><parameter>b1</parameter> trough <parameter>bN</parameter> are expressions that should evaluate to TRUE or FALSE. If an integer or floating point value is provided, zero is considered FALSE and anything else is TRUE.</para>
<itemizedlist>
<listitem>
<para>If the values contain strings or empty cells those values are ignored.</para>
</listitem>
<listitem>
<para>If no logical values are provided, then the error #VALUE! is returned.</para>
<para><function>XOR</function> implements the logical exclusive OR function: the result is TRUE if an odd number of the values evaluated to TRUE.</para>
<para><parameter>b1</parameter> trough <parameter>bN</parameter> are expressions that should evaluate to TRUE or FALSE. If an integer or floating point value is provided, zero is considered FALSE and anything else is TRUE.</para>
<itemizedlist>
<listitem>
<para>If the values contain strings or empty cells those values are ignored.</para>
</listitem>
<listitem>
<para>If no logical values are provided, then the error #VALUE! is returned.</para>
<para><function>ADDRESS</function> returns a cell address as text for specified row and column numbers.</para>
<para><parameter>a1</parameter> is a logical value that specifies the reference style. If <parameter>a1</parameter> is TRUE or omitted, <function>ADDRESS</function> returns an A1-style reference, i.e. $D$4. Otherwise <function>ADDRESS</function> returns an R1C1-style reference, i.e. R4C4.</para>
<para><parameter>text</parameter> specifies the name of the worksheet to be used as the external reference.</para>
<itemizedlist>
<listitem>
<para>If <parameter>abs_num</parameter> is 1 or omitted, <function>ADDRESS</function> returns absolute reference.</para>
</listitem>
<listitem>
<para>If <parameter>abs_num</parameter> is 2 <function>ADDRESS</function> returns absolute row and relative column.</para>
</listitem>
<listitem>
<para>If <parameter>abs_num</parameter> is 3 <function>ADDRESS</function> returns relative row and absolute column.</para>
</listitem>
<listitem>
<para>If <parameter>abs_num</parameter> is 4 <function>ADDRESS</function> returns relative reference.</para>
</listitem>
<listitem>
<para>If <parameter>abs_num</parameter> is greater than 4 <function>ADDRESS</function> returns #VALUE! error.</para>
</listitem>
<listitem>
<para>If <parameter>row_num</parameter> or <parameter>col_num</parameter> is less than one, <function>ADDRESS</function> returns #VALUE! error.</para>
<para><function>CHOOSE</function> returns the value of index <parameter>index</parameter>. <parameter>index</parameter> is rounded to an integer if it is not.</para>
<itemizedlist>
<listitem>
<para>If <parameter>index</parameter> < 1 or <parameter>index</parameter> > number of values, <function>CHOOSE</function> returns #VALUE! error.</para>
<para><function>COLUMN</function> function returns the column number of the current cell unless <parameter>reference</parameter> is given. In that case, it returns an array of the column numbers of all cells in <parameter>reference</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>reference</parameter> is neither an array nor a reference nor a range, <function>COLUMN</function> returns #VALUE! error.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para><function>COLUMN</function>() in E1 equals 5.</para>
<para><function>HLOOKUP</function> function finds the col in range that has a first row cell similar to <parameter>value</parameter>. If <parameter>approximate</parameter> is not true it finds the col with an exact equivalence. If <parameter>approximate</parameter> is true, then the values must be sorted in order of ascending value for correct function; in this case it finds the col with value less than <parameter>value</parameter> it returns the value in the col found at a 1-based offset in <parameter>row</parameter> rows into the <parameter>range</parameter>. <parameter>as_index</parameter> returns the 0-based offset that matched rather than the value.</para>
<itemizedlist>
<listitem>
<para><function>HLOOKUP</function> returns #NUM! if <parameter>row</parameter> < 0.</para>
</listitem>
<listitem>
<para><function>HLOOKUP</function> returns #REF! if <parameter>row</parameter> falls outside <parameter>range</parameter>.</para>
<para><function>INDEX</function> gives a reference to a cell in the given <parameter>array</parameter>.The cell is pointed out by <parameter>row</parameter> and <parameter>col</parameter>, which count the rows and columns in the array.</para>
<itemizedlist>
<listitem>
<para>If <parameter>row</parameter> and <parameter>col</parameter> are omited the are assumed to be 1.</para>
</listitem>
<listitem>
<para>If the reference falls outside the range of the <parameter>array</parameter>, <function>INDEX</function> returns a #REF! error.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then <function>INDEX</function>(A1:A5,4,1,1) equals 25.9</para>
<para><function>INDIRECT</function> function returns the contents of the cell pointed to by the <parameter>ref_text</parameter> string. The string specifies a single cell reference the format of which is either A1 or R1C1 style. The style is set by the <parameter>format</parameter> boolean, which defaults to the A1 style.</para>
<itemizedlist>
<listitem>
<para>If <parameter>ref_text</parameter> is not a valid reference returns #REF!</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>If A1 contains 3.14 and A2 contains A1, then</para>
<para><function>LOOKUP</function> function finds the row index of <parameter>value</parameter> in <parameter>vector1</parameter> and returns the contents of <parameter>vector2</parameter> at that row index. Alternatively a single array can be used for <parameter>vector1</parameter>. If the area is longer than it is wide then the sense of the search is rotated.</para>
<itemizedlist>
<listitem>
<para>If <function>LOOKUP</function> can't find <parameter>value</parameter> it uses the largest value less than <parameter>value</parameter>.</para>
</listitem>
<listitem>
<para>The data must be sorted.</para>
</listitem>
<listitem>
<para>If <parameter>value</parameter> is smaller than the first value it returns #N/A.</para>
<para><function>MATCH</function> function finds the row index of <parameter>seek</parameter> in <parameter>vector</parameter> and returns it.</para>
<para>If the area is longer than it is wide then the sense of the search is rotated. Alternatively a single array can be used.</para>
<itemizedlist>
<listitem>
<para>The <parameter>type</parameter> parameter, which defaults to +1, controls the search:</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> = 1, <function>MATCH</function> finds largest value <= <parameter>seek</parameter>.</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> = 0, <function>MATCH</function> finds first value == <parameter>seek</parameter>.</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> = -1, <function>MATCH</function> finds smallest value >= <parameter>seek</parameter>.</para>
</listitem>
<listitem>
<para>For <parameter>type</parameter> = 0, the data can be in any order. * For <parameter>type</parameter> = -1 and <parameter>type</parameter> = +1, the data must be sorted. (And in these cases, <function>MATCH</function> uses a binary search to locate the index.)</para>
</listitem>
<listitem>
<para>If <parameter>seek</parameter> could not be found, #N/A is returned.</para>
<para><function>OFFSET</function> function returns a cell range. The cell range starts at offset (<parameter>row</parameter>,<parameter>col</parameter>) from <parameter>range</parameter>, and is of height <parameter>height</parameter> and width <parameter>width</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>range</parameter> is neither a reference nor a range, <function>OFFSET</function> returns #VALUE!.</para>
</listitem>
<listitem>
<para>If either <parameter>height</parameter> or <parameter>width</parameter> is omitted, the height or width of the reference is used.</para>
<para><function>VLOOKUP</function> function finds the row in range that has a first column similar to <parameter>value</parameter>. If <parameter>approximate</parameter> is not true it finds the row with an exact equivalence. If <parameter>approximate</parameter> is true, then the values must be sorted in order of ascending value for correct function; in this case it finds the row with value less than <parameter>value</parameter>. It returns the value in the row found at a 1-based offset in <parameter>column</parameter> columns into the <parameter>range</parameter>. <parameter>as_index</parameter> returns the 0-based offset that matched rather than the value.</para>
<itemizedlist>
<listitem>
<para><function>VLOOKUP</function> returns #NUM! if <parameter>column</parameter> < 0.</para>
</listitem>
<listitem>
<para><function>VLOOKUP</function> returns #REF! if <parameter>column</parameter> falls outside <parameter>range</parameter>.</para>
<para><function>ABS</function> implements the Absolute Value function: the result is to drop the negative sign (if present). This can be done for integers and floating point numbers.</para>
<para><function>ACOS</function> function calculates the arc cosine of <parameter>x</parameter>; that is the value whose cosine is <parameter>x</parameter>.</para>
<itemizedlist>
<listitem>
<para>The value it returns is in radians.</para>
</listitem>
<listitem>
<para>If <parameter>x</parameter> falls outside the range -1 to 1, <function>ACOS</function> returns the #NUM! error.</para>
<para><function>ACOSH</function> function calculates the inverse hyperbolic cosine of <parameter>x</parameter>; that is the value whose hyperbolic cosine is <parameter>x</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> is less than 1.0, <function>ACOSH</function>() returns the #NUM! error.</para>
<para><function>ASIN</function> function calculates the arc sine of <parameter>x</parameter>; that is the value whose sine is <parameter>x</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> falls outside the range -1 to 1, <function>ASIN</function> returns the #NUM! error.</para>
<para><function>ASINH</function> function calculates the inverse hyperbolic sine of <parameter>x</parameter>; that is the value whose hyperbolic sine is <parameter>x</parameter>.</para>
<para><function>ATAN</function> function calculates the arc tangent of <parameter>x</parameter>; that is the value whose tangent is <parameter>x</parameter>.</para>
<para><function>ATAN2</function> function calculates the arc tangent of the two variables <parameter>b1</parameter> and <parameter>b2</parameter>. It is similar to calculating the arc tangent of <parameter>b2</parameter> / <parameter>b1</parameter>, except that the signs of both arguments are used to determine the quadrant of the result.</para>
<para><function>ATANH</function> function calculates the inverse hyperbolic tangent of <parameter>x</parameter>; that is the value whose hyperbolic tangent is <parameter>x</parameter>.</para>
<itemizedlist>
<listitem>
<para>If the absolute value of <parameter>x</parameter> is greater than 1.0, <function>ATANH</function> returns #NUM! error.</para>
<para><function>BETA</function> function returns the value of the mathematic beta function extended to all real numbers except 0 and negative integers.</para>
<itemizedlist>
<listitem>
<para>If <parameter>a</parameter>, <parameter>b</parameter>, or (<parameter>a</parameter> + <parameter>b</parameter>) are non-positive integers, <function>BETA</function> returns #NUM! error.</para>
<para><function>CEILING</function> function rounds <parameter>x</parameter> up to the nearest multiple of <parameter>significance</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> or <parameter>significance</parameter> is non-numeric <function>CEILING</function> returns #VALUE! error.</para>
</listitem>
<listitem>
<para>If <parameter>x</parameter> and <parameter>significance</parameter> have different signs <function>CEILING</function> returns #NUM! error.</para>
<para><function>COUNTIF</function> function counts the number of cells in the given <parameter>range</parameter> that meet the given <parameter>criteria</parameter>.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 23, 27, 28, 33, and 39. Then</para>
<para><function>FLOOR</function> function rounds <parameter>x</parameter> down to the next nearest multiple of <parameter>significance</parameter>.</para>
<itemizedlist>
<listitem>
<para><parameter>significance</parameter> defaults to 1.</para>
<para><function>LCM</function> returns the least common multiple of integers. The least common multiple is the smallest positive number that is a multiple of all integer arguments given.</para>
<itemizedlist>
<listitem>
<para>If any of the arguments is less than one, <function>LCM</function> returns #NUM!.</para>
</listitem>
<listitem>
<para>If any of the arguments is non-integer, it is truncated.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para><function>LCM</function>(2,13) equals to 26.</para>
<para><function>LCM</function>(4,7,5) equals to 140.</para>
<para><function>LOG</function> computes the logarithm of <parameter>x</parameter> in the given base <parameter>base</parameter>. If no <parameter>base</parameter> is given <function>LOG</function> returns the logarithm in base 10. <parameter>base</parameter> must be > 0. and cannot equal 1.</para>
<para><function>MDETERM</function> function returns the determinant of a given matrix.</para>
<itemizedlist>
<listitem>
<para>If the <parameter>matrix</parameter> does not contain equal number of columns and rows, <function>MDETERM</function> returns #VALUE! error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that A1, ..., A4 contain numbers 2, 3, 7, and 3, B1, ..., B4 4, 2, 4, and 1, C1, ..., C4 9, 4, 3, and 2, and D1, ..., D4 7, 3, 6, and 5. Then</para>
<para><function>MMULT</function> function returns the matrix product of two arrays. The result is an array with the same number of rows as <parameter>array1</parameter> and the same number of columns as <parameter>array2</parameter>.</para>
<para><function>MOD</function> function returns the remainder when <parameter>divisor</parameter> is divided into <parameter>number</parameter>.</para>
<itemizedlist>
<listitem>
<para><function>MOD</function> returns #DIV/0! if <parameter>divisor</parameter> is zero.</para>
<para><function>MROUND</function> function rounds a given number to the desired multiple.</para>
<para><parameter>number</parameter> is the number you want rounded and <parameter>multiple</parameter> is the the multiple to which you want to round the number.</para>
<itemizedlist>
<listitem>
<para>If <parameter>number</parameter> and <parameter>multiple</parameter> have different sign, <function>MROUND</function> returns #NUM! error.</para>
<para><function>QUOTIENT</function> function returns the integer portion of a division. <parameter>numerator</parameter> is the divided number and <parameter>denominator</parameter> is the divisor.</para>
<para><function>ROMAN</function> function returns an arabic number in the roman numeral style, as text. <parameter>number</parameter> is the number you want to convert and <parameter>type</parameter> is the type of roman numeral you want.</para>
<itemizedlist>
<listitem>
<para>If <parameter>type</parameter> is 0 or it is omitted, <function>ROMAN</function> returns classic roman numbers.</para>
</listitem>
<listitem>
<para>Type 1 is more concise than classic type, type 2 is more concise than type 1, and type 3 is more concise than type 2. Type 4 is simplified type.</para>
</listitem>
<listitem>
<para>If <parameter>number</parameter> is negative or greater than 3999, <function>ROMAN</function> returns #VALUE! error.</para>
<para><function>ROUND</function> function rounds a given number.</para>
<para><parameter>number</parameter> is the number you want rounded and <parameter>digits</parameter> is the number of digits to which you want to round that number.</para>
<itemizedlist>
<listitem>
<para>If <parameter>digits</parameter> is greater than zero, <parameter>number</parameter> is rounded to the given number of digits.</para>
</listitem>
<listitem>
<para>If <parameter>digits</parameter> is zero or omitted, <parameter>number</parameter> is rounded to the nearest integer.</para>
</listitem>
<listitem>
<para>If <parameter>digits</parameter> is less than zero, <parameter>number</parameter> is rounded to the left of the decimal point.</para>
<para><function>ROUNDDOWN</function> function rounds a given <parameter>number</parameter> down. <parameter>number</parameter> is the number you want rounded down and <parameter>digits</parameter> is the number of digits to which you want to round that number.</para>
<itemizedlist>
<listitem>
<para>If <parameter>digits</parameter> is greater than zero, <parameter>number</parameter> is rounded down to the given number of digits.</para>
</listitem>
<listitem>
<para>If <parameter>digits</parameter> is zero or omitted, <parameter>number</parameter> is rounded down to the nearest integer.</para>
</listitem>
<listitem>
<para>If <parameter>digits</parameter> is less than zero, <parameter>number</parameter> is rounded down to the left of the decimal point.</para>
<para><function>ROUNDUP</function> function rounds a given number up.</para>
<para><parameter>number</parameter> is the number you want rounded up and <parameter>digits</parameter> is the number of digits to which you want to round that number.</para>
<itemizedlist>
<listitem>
<para>If <parameter>digits</parameter> is greater than zero, <parameter>number</parameter> is rounded up to the given number of digits.</para>
</listitem>
<listitem>
<para>If <parameter>digits</parameter> is zero or omitted, <parameter>number</parameter> is rounded up to the nearest integer.</para>
</listitem>
<listitem>
<para>If <parameter>digits</parameter> is less than zero, <parameter>number</parameter> is rounded up to the left of the decimal point.</para>
<para><function>SERIESSUM</function> function returns the sum of a power series. <parameter>x</parameter> is the base of the power series, <parameter>n</parameter> is the initial power to raise <parameter>x</parameter>, <parameter>m</parameter> is the increment to the power for each term in the series, and <parameter>coefficients</parameter> are the coefficients by which each successive power of <parameter>x</parameter> is multiplied.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 1.23, 2.32, 2.98, 3.42, and 4.33. Then</para>
<para><function>SIGN</function> function returns 1 if the <parameter>number</parameter> is positive, zero if the <parameter>number</parameter> is 0, and -1 if the <parameter>number</parameter> is negative.</para>
<para><function>SUMA</function> computes the sum of all the values and cells referenced in the argument list. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1).</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11, 15, 17, 21, and 43. Then</para>
<para><function>SUMIF</function> function sums the values in the given <parameter>range</parameter> that meet the given <parameter>criteria</parameter>. If <parameter>actual_range</parameter> is given, <function>SUMIF</function> sums the values in the <parameter>actual_range</parameter> whose corresponding components in <parameter>range</parameter> meet the given <parameter>criteria</parameter>.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 23, 27, 28, 33, and 39. Then</para>
<para><function>SUMPRODUCT</function> function multiplies corresponding data entries in the given arrays or ranges, and then returns the sum of those products. If an array entry is not numeric, the value zero is used instead.</para>
<itemizedlist>
<listitem>
<para>If arrays or range arguments do not have the same dimensions, <function>SUMPRODUCT</function> returns #VALUE! error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11, 15, 17, 21, and 43 and the cells B1, B2, ..., B5 hold numbers 13, 22, 31, 33, and 39. Then</para>
<para><function>SUMX2MY2</function> function returns the sum of the difference of squares of corresponding values in two arrays. <parameter>array1</parameter> is the first array or range of data points and <parameter>array2</parameter> is the second array or range of data points. The equation of <function>SUMX2MY2</function> is SUM (x^2-y^2).</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>If <parameter>array1</parameter> and <parameter>array2</parameter> have different number of data points, <function>SUMX2MY2</function> returns #N/A error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11, 15, 17, 21, and 43 and the cells B1, B2, ..., B5 hold numbers 13, 22, 31, 33, and 39. Then</para>
<para><function>SUMX2PY2</function> function returns the sum of the sum of squares of corresponding values in two arrays. <parameter>array1</parameter> is the first array or range of data points and <parameter>array2</parameter> is the second array or range of data points. The equation of <function>SUMX2PY2</function> is SUM (x^2+y^2).</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>If <parameter>array1</parameter> and <parameter>array2</parameter> have different number of data points, <function>SUMX2PY2</function> returns #N/A error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11, 15, 17, 21, and 43 and the cells B1, B2, ..., B5 hold numbers 13, 22, 31, 33, and 39. Then</para>
<para><function>SUMXMY2</function> function returns the sum of squares of differences of corresponding values in two arrays. <parameter>array1</parameter> is the first array or range of data points and <parameter>array2</parameter> is the second array or range of data points. The equation of <function>SUMXMY2</function> is SUM (x-y)^2.</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>If <parameter>array1</parameter> and <parameter>array2</parameter> have different number of data points, <function>SUMXMY2</function> returns #N/A error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11, 15, 17, 21, and 43 and the cells B1, B2, ..., B5 hold numbers 13, 22, 31, 33, and 39. Then</para>
<para><function>NT_PHI</function> function calculates the number of integers less than or equal to <parameter>n</parameter> that are relatively prime to <parameter>n</parameter>.</para>
<para><function>RANDBETWEEN</function> function returns a random integer number between and including <parameter>bottom</parameter> and <parameter>top</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>bottom</parameter> or <parameter>top</parameter> is non-integer, they are truncated.</para>
<para><function>RANDCAUCHY</function> returns a Cauchy-distributed random number with scale parameter a. The Cauchy distribution is also known as the Lorentz distribution.</para>
<para><function>RANDDISCRETE</function> returns one of the values in the <parameter>val_range</parameter>. The probabilities for each value are given in the <parameter>prob_range</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>prob_range</parameter> is omitted, the uniform discrete distribution is assumed.</para>
</listitem>
<listitem>
<para>If the sum of all values in <parameter>prob_range</parameter> is other than one, <function>RANDDISCRETE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>val_range</parameter> and <parameter>prob_range</parameter> are not the same size, <function>RANDDISCRETE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>val_range</parameter> or <parameter>prob_range</parameter> is not a range, <function>RANDDISCRETE</function> returns #VALUE! error.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para><function>RANDDISCRETE</function>(A1:A6) returns one of the values in the range A1:A6.</para>
<para><function>RANDEXPPOW</function> returns a random variate from the exponential power distribution with scale parameter <parameter>a</parameter> and exponent <parameter>b</parameter>. The distribution is,</para>
<para> p(x) dx = {1 over 2 a Gamma(1+1/b)} exp(-|x/a|^b) dx, for x >= 0.</para>
<itemizedlist>
<listitem>
<para>For <parameter>b</parameter> = 1 this reduces to the Laplace distribution.</para>
</listitem>
<listitem>
<para>For <parameter>b</parameter> = 2 it has the same form as a normal distribution with sigma = a/sqrt(2).</para>
<para><function>RANDGEOM</function> returns a geometric-distributed random number. The number of independent trials with probability <parameter>p</parameter> until the first success. The probability distribution for geometric variates is,</para>
<para><function>RANDGUMBEL</function> returns a Type I or Type II Gumbel-distributed random number. <parameter>type</parameter> is either 1 or 2 and specifies the type of the distribution (Type I or Type II).</para>
<itemizedlist>
<listitem>
<para>If <parameter>type</parameter> is neither 1 nor 2, <function>RANDGUMBEL</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> is omitted, Type I is assumed.</para>
<para><function>RANDHYPERG</function> returns a hypergeometric-distributed random number. The probability distribution for hypergeometric random variates is,</para>
<para><function>RANDLANDAU</function> returns a random variate from the Landau distribution. The probability distribution for Landau random variates is defined analytically by the complex integral,</para>
<para> p(x) = (1/(2 pi i)) int_{c-i infty}^{c+i infty} ds exp(s log(s) + x s).</para>
<para>For numerical purposes it is more convenient to use the following equivalent form of the integral,</para>
<para><function>RANDLAPLACE</function> returns a Laplace-distributed random number. Laplace distribution is also known as two-sided exponential probability distribution.</para>
<para><function>RANDNORMTAIL</function> returns a random variates from the upper tail of a normal distribution with standard deviation <parameter>sigma</parameter>. The values returned are larger than the lower limit <parameter>a</parameter>, which must be positive. The method is based on Marsaglia's famous rectangle-wedge-tail algorithm (Ann Math Stat 32, 894-899 (1961)), with this aspect explained in Knuth, v2, 3rd ed, p139, 586 (exercise 11).</para>
<para>The probability distribution for normal tail random variates is,</para>
<para><function>RANDRAYLEIGHTAIL</function> returns a random variate from the tail of the Rayleigh distribution with scale parameter sigma and a lower limit of a. The distribution is,</para>
<para><function>SIMTABLE</function> returns one of the values in the given argument list depending on the round number of the simulation tool. When the simulation tool is not activated, <function>SIMTABLE</function> returns <parameter>d1</parameter>.</para>
<para>With the simulation tool and the <function>SIMTABLE</function> function you can test given decision variables. Each <function>SIMTABLE</function> function contains the possible values of a simulation variable. In most valid simulation models you should have the same number of values <parameter>dN</parameter> for all decision variables. If the simulation is run more rounds than there are values defined, <function>SIMTABLE</function> returns #N/A! error (e.g. if A1 contains `=<function>SIMTABLE</function>(1)' and A2 `=<function>SIMTABLE</function>(1,2)', A1 yields #N/A! error on the second round).</para>
<para>The successive use of the simulation tool also requires that you give to the tool at least one input variable having RAND() or any other RAND<distribution name>() function in it. On each round, the simulation tool iterates for the given number of rounds over all the input variables to reevaluate them. On each iteration, the values of the output variables are stored, and when the round is completed, descriptive statistical information is created according to the values.</para>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para><function>SIMTABLE</function>(TRUE,FALSE) returns TRUE on the first simulation round and FALSE on the second round.</para>
<para><function>SIMTABLE</function>(223,225,227,229) returns 227 on the simulation round #3.</para>
<para><function>AVERAGE</function> computes the average of all the values and cells referenced in the argument list. This is equivalent to the sum of the arguments divided by the count of the arguments.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>AVERAGEA</function> returns the average of the given arguments. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers and strings 11.4, 17.3, "missing", 25.9, and 40.1. Then</para>
<para><function>BERNOULLI</function> returns the probability p(k) of obtaining <parameter>k</parameter> from a Bernoulli distribution with probability parameter <parameter>p</parameter>.</para>
<para><function>BETADIST</function> function returns the cumulative beta distribution. <parameter>a</parameter> is the optional lower bound of <parameter>x</parameter> and <parameter>b</parameter> is the optional upper bound of <parameter>x</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>a</parameter> is not given, <function>BETADIST</function> uses 0.</para>
</listitem>
<listitem>
<para>If <parameter>b</parameter> is not given, <function>BETADIST</function> uses 1.</para>
<para><function>BETAINV</function> function returns the inverse of cumulative beta distribution. <parameter>a</parameter> is the optional lower bound of <parameter>x</parameter> and <parameter>b</parameter> is the optional upper bound of <parameter>x</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>a</parameter> is not given, <function>BETAINV</function> uses 0.</para>
</listitem>
<listitem>
<para>If <parameter>b</parameter> is not given, <function>BETAINV</function> uses 1.</para>
<para><function>BINOMDIST</function> function returns the binomial distribution. <parameter>n</parameter> is the number of successes, <parameter>trials</parameter> is the total number of independent trials, <parameter>p</parameter> is the probability of success in trials, and <parameter>cumulative</parameter> describes whether to return the sum of the binomial function from 0 to <parameter>n</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>n</parameter> or <parameter>trials</parameter> are non-integer they are truncated.</para>
<para><function>CAUCHY</function> returns the Cauchy distribution with scale parameter <parameter>a</parameter>. If <parameter>cum</parameter> is TRUE, <function>CAUCHY</function> returns the cumulative distribution.</para>
<para><function>CHIDIST</function> function returns the one-tailed probability of the chi-squared distribution. <parameter>dof</parameter> is the number of degrees of freedom.</para>
<itemizedlist>
<listitem>
<para>If <parameter>dof</parameter> is non-integer it is truncated.</para>
<para><function>CHITEST</function> function returns the test for independence of chi-squared distribution.</para>
<para><parameter>actual_range</parameter> is a range that contains the observed data points. <parameter>theoretical_range</parameter> is a range that contains the expected values of the data points.</para>
<para><function>CONFIDENCE</function> function returns the confidence interval for a mean. <parameter>x</parameter> is the significance level, <parameter>stddev</parameter> is the population standard deviation, and <parameter>size</parameter> is the size of the sample.</para>
<itemizedlist>
<listitem>
<para>If <parameter>size</parameter> is non-integer it is truncated.</para>
<para><function>CORREL</function> returns the correlation coefficient of two data sets.</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>COVAR</function> returns the covariance of two data sets.</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>CRITBINOM</function> function returns the smallest value for which the cumulative is greater than or equal to a given value. <parameter>n</parameter> is the number of trials, <parameter>p</parameter> is the probability of success in trials, and <parameter>alpha</parameter> is the criterion value.</para>
<itemizedlist>
<listitem>
<para>If <parameter>trials</parameter> is a non-integer it is truncated.</para>
<para><function>EXPONDIST</function> function returns the exponential distribution. If the <parameter>cumulative</parameter> boolean is false it will return:</para>
<para><function>EXPPOWDIST</function> returns the probability density p(x) at <parameter>x</parameter> for Exponential Power distribution with scale parameter <parameter>a</parameter> and exponent <parameter>b</parameter>.</para>
<para><function>FDIST</function> function returns the F probability distribution. <parameter>dof1</parameter> is the numerator degrees of freedom and <parameter>dof2</parameter> is the denominator degrees of freedom.</para>
<para><function>FORECAST</function> function estimates a future value according to existing values using simple linear regression. The estimated future value is a y-value for a given x-value (<parameter>x</parameter>).</para>
<itemizedlist>
<listitem>
<para>If <parameter>known_x</parameter> or <parameter>known_y</parameter> contains no data entries or different number of data entries, <function>FORECAST</function> returns #N/A error.</para>
</listitem>
<listitem>
<para>If the variance of the <parameter>known_x</parameter> is zero, <function>FORECAST</function> returns #DIV/0 error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>FREQUENCY</function> function counts how often given values occur within a range of values. The results are given as an array.</para>
<para><parameter>data_array</parameter> is a data array for which you want to count the frequencies. <parameter>bin_array</parameter> is an array containing the intervals into which you want to group the values in data_array. If the <parameter>bin_array</parameter> is empty, <function>FREQUENCY</function> returns the number of data points in <parameter>data_array</parameter>.</para>
<para><function>FTEST</function> function returns the two-tailed probability that the variances in the given two data sets are not significantly different.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>GAMMADIST</function> function returns the gamma distribution. If <parameter>cum</parameter> is TRUE, <function>GAMMADIST</function> returns the incomplete gamma function, otherwise it returns the probability mass function.</para>
<para><function>GEOMDIST</function> returns the probability p(k) of obtaining <parameter>k</parameter> from a geometric distribution with probability parameter <parameter>p</parameter>.</para>
<para><function>GEOMEAN</function> returns the geometric mean of the given arguments. This is equal to the Nth root of the product of the terms.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>GROWTH</function> function applies the ``least squares'' method to fit an exponential curve to your data and predicts the exponential growth by using this curve.</para>
<para><function>GROWTH</function> returns an array having one column and a row for each data point in <parameter>new_x</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>known_x</parameter>'s is omitted, an array {1, 2, 3, ...} is used.</para>
</listitem>
<listitem>
<para>If <parameter>new_x</parameter>'s is omitted, it is assumed to be the same as <parameter>known_x</parameter>'s.</para>
</listitem>
<listitem>
<para>If <parameter>known_y</parameter>'s and <parameter>known_x</parameter>'s have unequal number of data points, <function>GROWTH</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>const</parameter> is FALSE, the line will be forced to go through the origin, i.e., b will be zero. The default is TRUE.</para>
<para><function>HARMEAN</function> returns the harmonic mean of the N data points (that is, N divided by the sum of the inverses of the data points).</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>HYPGEOMDIST</function> function returns the hypergeometric distribution. <parameter>x</parameter> is the number of successes in the sample, <parameter>n</parameter> is the number of trials, <parameter>M</parameter> is the number of successes overall, and <parameter>N</parameter> is the population size.</para>
<para>If the optional argument <parameter>cumulative</parameter> is TRUE, the cumulative left tail will be returned.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter>,<parameter>n</parameter>,<parameter>M</parameter> or <parameter>N</parameter> is a non-integer it is truncated.</para>
</listitem>
<listitem>
<para>If <parameter>x</parameter>,<parameter>n</parameter>,<parameter>M</parameter> or <parameter>N</parameter> < 0 <function>HYPGEOMDIST</function> returns #NUM! error.</para>
<para><function>INTERCEPT</function> function calculates the point where the linear regression line intersects the y-axis.</para>
<itemizedlist>
<listitem>
<para>If <parameter>known_x</parameter> or <parameter>known_y</parameter> contains no data entries or different number of data entries, <function>INTERCEPT</function> returns #N/A error.</para>
</listitem>
<listitem>
<para>If the variance of the <parameter>known_x</parameter> is zero, <function>INTERCEPT</function> returns #DIV/0 error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>KURT</function> returns an unbiased estimate of the kurtosis of a data set.</para>
<para>Note, that this is only meaningful if the underlying distribution really has a fourth moment. The kurtosis is offset by three such that a normal distribution will have zero kurtosis.</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>If fewer than four numbers are given or all of them are equal <function>KURT</function> returns #DIV/0! error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>LANDAU</function> returns the probability density p(x) at <parameter>x</parameter> for the Landau distribution using an approximation method.</para>
<para><function>LAPLACE</function> returns the probability density p(x) at <parameter>x</parameter> for Laplace distribution with mean <parameter>a</parameter>.</para>
<para><function>LARGE</function> returns the k-th largest value in a data set.</para>
<itemizedlist>
<listitem>
<para>If data set is empty <function>LARGE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>k</parameter> <= 0 or <parameter>k</parameter> is greater than the number of data items given <function>LARGE</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>LINEST</function> function calculates the ``least squares'' line that best fit to your data in <parameter>known_y</parameter>'s. <parameter>known_x</parameter>'s contains the corresponding x's where y=mx+b.</para>
<para><function>LINEST</function> returns an array having two columns and one row. The slope (m) of the regression line y=mx+b is given in the first column and the y-intercept (b) in the second.</para>
<para>If <parameter>stat</parameter> is TRUE, extra statistical information will be returned. Extra statistical information is written bellow the regression line coefficients in the result array. Extra statistical information consists of four rows of data. In the first row the standard error values for the coefficients m1, (m2, ...), b are represented. The second row contains the square of R and the standard error for the y estimate. The third row contains the F-observed value and the degrees of freedom. The last row contains the regression sum of squares and the residual sum of squares.</para>
<itemizedlist>
<listitem>
<para>If <parameter>known_x</parameter>'s is omitted, an array {1, 2, 3, ...} is used.</para>
</listitem>
<listitem>
<para>If <parameter>known_y</parameter>'s and <parameter>known_x</parameter>'s have unequal number of data points, <function>LINEST</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>const</parameter> is FALSE, the line will be forced to go through the origin, i.e., b will be zero. The default is TRUE.</para>
</listitem>
<listitem>
<para>The default of <parameter>stat</parameter> is FALSE.</para>
<para><function>LOGEST</function> function applies the ``least squares'' method to fit an exponential curve of the form</para>
<para> y = b * m{1}^x{1} * m{2}^x{2}... to your data.</para>
<para>If <parameter>stat</parameter> is TRUE, extra statistical information will be returned. Extra statistical information is written bellow the regression line coefficients in the result array. Extra statistical information consists of four rows of data. In the first row the standard error values for the coefficients m1, (m2, ...), b are represented. The second row contains the square of R and the standard error for the y estimate. The third row contains the F-observed value and the degrees of freedom. The last row contains the regression sum of squares and the residual sum of squares.</para>
<itemizedlist>
<listitem>
<para>If <parameter>known_x</parameter>'s is omitted, an array {1, 2, 3, ...} is used. <function>LOGEST</function> returns an array { m{n},m{n-1}, ...,m{1},b }.</para>
</listitem>
<listitem>
<para>If <parameter>known_y</parameter>'s and <parameter>known_x</parameter>'s have unequal number of data points, <function>LOGEST</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>const</parameter> is FALSE, the line will be forced to go through (0,1),i.e., b will be one. The default is TRUE.</para>
</listitem>
<listitem>
<para>The default of <parameter>stat</parameter> is FALSE.</para>
<para><function>LOGFIT</function> function applies the ``least squares'' method to fit the logarithmic equation</para>
<para>y = a + b * ln(sign * (x - c)) , sign = +1 or -1</para>
<para>to your data. The graph of the equation is a logarithmic curve moved horizontally by c and possibly mirrored across the y-axis (if sign = -1).</para>
<para><function>LOGFIT</function> returns an array having five columns and one row. `Sign' is given in the first column, `a', `b', and `c' are given in columns 2 to 4. Column 5 holds the sum of squared residuals.</para>
<para>An error is returned when there are less than 3 different x's or y's, or when the shape of the point cloud is too different from a ``logarithmic'' one.</para>
<para>You can use the above formula</para>
<para>= a + b * ln(sign * (x - c))</para>
<para>or rearrange it to</para>
<para>= (exp((y - a) / b)) / sign + c</para>
<para>to compute unknown y's or x's, respectively.</para>
<para>Technically, this is non-linear fitting by trial-and-error. The accuracy of `c' is: width of x-range -> rounded to the next smaller (10^integer), times 0.000001. There might be cases in which the returned fit is not the best possible.</para>
<para><function>LOGINV</function> function returns the inverse of the lognormal cumulative distribution. <parameter>p</parameter> is the given probability corresponding to the normal distribution, <parameter>mean</parameter> is the arithmetic mean of the distribution, and <parameter>stddev</parameter> is the standard deviation of the distribution.</para>
<itemizedlist>
<listitem>
<para>If <parameter>p</parameter> < 0 or <parameter>p</parameter> > 1 or <parameter>stddev</parameter> <= 0 <function>LOGINV</function> returns #NUM! error.</para>
<para><function>LOGISTIC</function> returns the probability density p(x) at <parameter>x</parameter> for a logistic distribution with scale parameter <parameter>a</parameter>.</para>
<para><function>LOGNORMDIST</function> function returns the lognormal distribution. <parameter>x</parameter> is the value for which you want the distribution, <parameter>mean</parameter> is the mean of the distribution, and <parameter>stddev</parameter> is the standard deviation of the distribution.</para>
<para><function>LOGREG</function> function transforms your x's to z=ln(x) and applies the ``least squares'' method to fit the linear equation</para>
<para>y = m * z + b</para>
<para>to your y's and z's --- equivalent to fitting the equation</para>
<para>y = m * ln(x) + b</para>
<para>to y's and x's.</para>
<para>If <parameter>known_x</parameter>'s is omitted, an array {1, 2, 3, ...} is used. <function>LOGREG</function> returns an array having two columns and one row. m is given in the first column and b in the second.</para>
<para>If <parameter>known_y</parameter>'s and <parameter>known_x</parameter>'s have unequal number of data points, <function>LOGREG</function> returns #NUM! error.</para>
<para>If <parameter>const</parameter> is FALSE, the curve will be forced to go through [1; 0], i.e., b will be zero. The default is TRUE.</para>
<para>If <parameter>stat</parameter> is TRUE, extra statistical information will be returned which applies to the state AFTER transformation to z. Extra statistical information is written below m and b in the result array. Extra statistical information consists of four rows of data. In the first row the standard error values for the coefficients m, b are represented. The second row contains the square of R and the standard error for the y estimate. The third row contains the F-observed value and the degrees of freedom. The last row contains the regression sum of squares and the residual sum of squares.The default of <parameter>stat</parameter> is FALSE.</para>
<para><function>MAX</function> returns the value of the element of the values passed that has the largest value, with negative numbers considered smaller than positive numbers.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>MAXA</function> returns the largest value of the given arguments. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers and strings 11.4, 17.3, "missing", 25.9, and 40.1. Then</para>
<para><function>MIN</function> returns the value of the element of the values passed that has the smallest value, with negative numbers considered smaller than positive numbers.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>MINA</function> returns the smallest value of the given arguments. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers and strings 11.4, 17.3, "missing", 25.9, and 40.1. Then</para>
<para><function>MODE</function> returns the most common number of the data set. If the data set has many most common numbers <function>MODE</function> returns the first one of them.</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>If the data set does not contain any duplicates <function>MODE</function> returns #N/A error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 11.4, 25.9, and 40.1. Then</para>
<para><function>NEGBINOMDIST</function> function returns the negative binomial distribution. <parameter>f</parameter> is the number of failures, <parameter>t</parameter> is the threshold number of successes, and <parameter>p</parameter> is the probability of a success.</para>
<itemizedlist>
<listitem>
<para>If <parameter>f</parameter> or <parameter>t</parameter> is a non-integer it is truncated.</para>
<para><function>NORMDIST</function> function returns the normal cumulative distribution. <parameter>x</parameter> is the value for which you want the distribution, <parameter>mean</parameter> is the mean of the distribution, <parameter>stddev</parameter> is the standard deviation.</para>
<itemizedlist>
<listitem>
<para>If <parameter>stddev</parameter> is 0 <function>NORMDIST</function> returns #DIV/0! error.</para>
<para><function>NORMINV</function> function returns the inverse of the normal cumulative distribution. <parameter>p</parameter> is the given probability corresponding to the normal distribution, <parameter>mean</parameter> is the arithmetic mean of the distribution, and <parameter>stddev</parameter> is the standard deviation of the distribution.</para>
<itemizedlist>
<listitem>
<para>If <parameter>p</parameter> < 0 or <parameter>p</parameter> > 1 or <parameter>stddev</parameter> <= 0 <function>NORMINV</function> returns #NUM! error.</para>
<para><function>NORMSDIST</function> function returns the standard normal cumulative distribution. <parameter>x</parameter> is the value for which you want the distribution.</para>
<para><function>NORMSINV</function> function returns the inverse of the standard normal cumulative distribution. <parameter>p</parameter> is the given probability corresponding to the normal distribution.</para>
<para><function>PARETO</function> returns the probability density p(x) at <parameter>x</parameter> for a Pareto distribution with exponent <parameter>a</parameter> and scale <parameter>b</parameter>.</para>
<para><function>PERCENTILE</function> function returns the 100*<parameter>k</parameter>-th percentile of the given data points (that is, a number x such that a fraction <parameter>k</parameter> of the data points are less than x).</para>
<itemizedlist>
<listitem>
<para>If <parameter>array</parameter> is empty, <function>PERCENTILE</function> returns #NUM! error.</para>
<para><function>PERCENTRANK</function> function returns the rank of a data point in a data set. <parameter>array</parameter> is the range of numeric values, <parameter>x</parameter> is the data point which you want to rank, and the optional <parameter>significance</parameter> specifies the number of significant digits for the returned value, truncating the remainder. If <parameter>significance</parameter> is omitted, <function>PERCENTRANK</function> uses three digits.</para>
<itemizedlist>
<listitem>
<para>If <parameter>array</parameter> contains no data points, <function>PERCENTRANK</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>significance</parameter> is less than one, <function>PERCENTRANK</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>x</parameter> exceeds the largest value or is less than the smallest value in <parameter>array</parameter>, <function>PERCENTRANK</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>x</parameter> does not match any of the values in <parameter>array</parameter> or <parameter>x</parameter> matches more than once, <function>PERCENTRANK</function> interpolates the returned value.</para>
<para><function>PERMUT</function> function returns the number of permutations. <parameter>n</parameter> is the number of objects, <parameter>k</parameter> is the number of objects in each permutation.</para>
<para><function>POISSON</function> function returns the Poisson distribution. <parameter>x</parameter> is the number of events, <parameter>mean</parameter> is the expected numeric value <parameter>cumulative</parameter> describes whether to return the sum of the Poisson function from 0 to <parameter>x</parameter>.</para>
<itemizedlist>
<listitem>
<para>If <parameter>x</parameter> is a non-integer it is truncated.</para>
<para><function>PROB</function> function returns the probability that values in a range or an array are between two limits. If <parameter>upper_limit</parameter> is not given, <function>PROB</function> returns the probability that values in <parameter>x_range</parameter> are equal to <parameter>lower_limit</parameter>.</para>
<itemizedlist>
<listitem>
<para>If the sum of the probabilities in <parameter>prob_range</parameter> is not equal to 1 <function>PROB</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If any value in <parameter>prob_range</parameter> is <=0 or > 1, <function>PROB</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>x_range</parameter> and <parameter>prob_range</parameter> contain a different number of data entries, <function>PROB</function> returns #N/A error.</para>
<para><function>RANK</function> returns the rank of a number in a list of numbers. <parameter>x</parameter> is the number whose rank you want to find, <parameter>ref</parameter> is the list of numbers, and <parameter>order</parameter> specifies how to rank numbers. If <parameter>order</parameter> is 0, numbers are ranked in descending order, otherwise numbers are ranked in ascending order.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>RAYLEIGH</function> returns the probability density p(x) at <parameter>x</parameter> for a Rayleigh distribution with scale parameter <parameter>sigma</parameter>.</para>
<para><function>RAYLEIGHTAIL</function> returns the probability density p(x) at <parameter>x</parameter> for a Rayleigh tail distribution with scale parameter <parameter>sigma</parameter> and lower limit <parameter>a</parameter>.</para>
<para><function>SKEW</function> returns an unbiased estimate for skewness of a distribution.</para>
<para>Note, that this is only meaningful if the underlying distribution really has a third moment. The skewness of a symmetric (e.g., normal) distribution is zero.</para>
<itemizedlist>
<listitem>
<para>Strings and empty cells are simply ignored.</para>
</listitem>
<listitem>
<para>If less than three numbers are given, <function>SKEW</function> returns #DIV/0! error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>SLOPE</function> returns the slope of the linear regression line.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>SMALL</function> returns the k-th smallest value in a data set.</para>
<itemizedlist>
<listitem>
<para>If data set is empty <function>SMALL</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>k</parameter> <= 0 or <parameter>k</parameter> is greater than the number of data items given <function>SMALL</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para>The <function>SSMEDIAN</function> function returns the median for grouped data as commonly determined in the social sciences. The data points given in <parameter>array</parameter> are assumed to be the result of grouping data into intervals of length <parameter>interval</parameter></para>
<itemizedlist>
<listitem>
<para>If <parameter>interval</parameter> is not given, <function>SSMEDIAN</function> uses 1.</para>
</listitem>
<listitem>
<para>If <parameter>array</parameter> is empty, <function>SSMEDIAN</function> returns #NUM! error.</para>
<para><function>STANDARDIZE</function> function returns a normalized value. <parameter>x</parameter> is the number to be normalized, <parameter>mean</parameter> is the mean of the distribution, <parameter>stddev</parameter> is the standard deviation of the distribution.</para>
<itemizedlist>
<listitem>
<para>If <parameter>stddev</parameter> is 0 <function>STANDARDIZE</function> returns #DIV/0! error.</para>
<para><function>STDEVA</function> returns the standard deviation based on a sample. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers and strings 11.4, 17.3, "missing", 25.9, and 40.1. Then</para>
<para><function>STDEVPA</function> returns the standard deviation based on the entire population. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers and strings 11.4, 17.3, "missing", 25.9, and 40.1. Then</para>
<para><function>STEYX</function> function returns the standard error of the predicted y-value for each x in the regression.</para>
<itemizedlist>
<listitem>
<para>If <parameter>known_y</parameter>'s and <parameter>known_x</parameter>'s are empty or have a different number of arguments then <function>STEYX</function> returns #N/A error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>SUBTOTAL</function> function returns a subtotal of given list of arguments. <parameter>function_nbr</parameter> is the number that specifies which function to use in calculating the subtotal.</para>
<para>The following functions are available:</para>
<para> 1 AVERAGE</para>
<para> 2 COUNT</para>
<para> 3 COUNTA</para>
<para> 4 MAX</para>
<para> 5 MIN</para>
<para> 6 PRODUCT</para>
<para> 7 STDEV</para>
<para> 8 STDEVP</para>
<para> 9 SUM</para>
<para> 10 VAR</para>
<para> 11 VARP</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 23, 27, 28, 33, and 39. Then</para>
<para><function>TDIST</function> function returns the Student's t-distribution. <parameter>dof</parameter> is the degree of freedom and <parameter>tails</parameter> is 1 or 2 depending on whether you want one-tailed or two-tailed distribution.<parameter>tails</parameter> = 1 returns the size of teh right tail.</para>
<para><function>TREND</function> function estimates future values of a given data set using the ``least squares'' line that best fit to your data. <parameter>known_y</parameter>'s is the y-values where y=mx+b and <parameter>known_x</parameter>'s contains the corresponding x-values. <parameter>new_x</parameter>'s contains the x-values for which you want to estimate the y-values. If <parameter>const</parameter> is FALSE, the line will be forced to go through the origin, i.e., b will be zero.</para>
<itemizedlist>
<listitem>
<para>If <parameter>known_x</parameter>'s is omitted, an array {1, 2, 3, ...} is used.</para>
</listitem>
<listitem>
<para>If <parameter>new_x</parameter>'s is omitted, it is assumed to be the same as <parameter>known_x</parameter>'s.</para>
</listitem>
<listitem>
<para>If <parameter>const</parameter> is omitted, it is assumed to be TRUE.</para>
</listitem>
<listitem>
<para>If <parameter>known_y</parameter>'s and <parameter>known_x</parameter>'s have unequal number of data points, <function>TREND</function> returns #NUM! error.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>TRIMMEAN</function> returns the mean of the interior of a data set. <parameter>ref</parameter> is the list of numbers whose mean you want to calculate and <parameter>fraction</parameter> is the fraction of the data set excluded from the mean. For example, if <parameter>fraction</parameter>=0.2 and the data set contains 40 numbers, 8 numbers are trimmed from the data set (40 x 0.2), 4 from the top and 4 from the bottom of the set.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>TTEST</function> function returns the probability of a Student's t-Test.</para>
<para><parameter>array1</parameter> is the first data set and <parameter>array2</parameter> is the second data set. If <parameter>tails</parameter> is one, <function>TTEST</function> uses the one-tailed distribution and if <parameter>tails</parameter> is two, <function>TTEST</function> uses the two-tailed distribution. <parameter>type</parameter> determines the kind of the test:</para>
<para> 1 Paired test</para>
<para> 2 Two-sample equal variance</para>
<para> 3 Two-sample unequal variance</para>
<itemizedlist>
<listitem>
<para>If the data sets contain a different number of data points and the test is paired (<parameter>type</parameter> one), <function>TTEST</function> returns the #N/A error.</para>
</listitem>
<listitem>
<para><parameter>tails</parameter> and <parameter>type</parameter> are truncated to integers.</para>
</listitem>
<listitem>
<para>If <parameter>tails</parameter> is not one or two, <function>TTEST</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>If <parameter>type</parameter> is any other than one, two, or three, <function>TTEST</function> returns #NUM! error.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1, and the cells B1, B2, ... B5 23.2, 25.8, 29.9, 33.5, and 42.7. Then</para>
<para><function>VAR</function> estimates the variance of a sample of a population. To get the true variance of a complete population use VARP.</para>
<itemizedlist>
<listitem>
<para><function>VAR</function> is also known as the N-1-variance. Under reasonable conditions, it is the maximum-likelihood estimator for the true variance.</para>
</listitem>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>VARA</function> returns the variance based on a sample. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers and strings 11.4, 17.3, "missing", 25.9, and 40.1. Then</para>
<para><function>VARP</function> calculates the variance of a set of numbers where each number is a member of a population and the set is the entire population.</para>
<itemizedlist>
<listitem>
<para><function>VARP</function> is also known as the N-variance.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers 11.4, 17.3, 21.3, 25.9, and 40.1. Then</para>
<para><function>VARPA</function> returns the variance based on the entire population. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted.</para>
<itemizedlist>
<listitem>
<para>This function is Excel compatible.</para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>Examples</title>
<para/>
<para>Let us assume that the cells A1, A2, ..., A5 contain numbers and strings 11.4, 17.3, "missing", 25.9, and 40.1. Then</para>
<para><function>WEIBULL</function> function returns the Weibull distribution. If the <parameter>cumulative</parameter> boolean is true it will return:</para>
<para><function>EXACT</function> returns true if <parameter>string1</parameter> is exactly equal to <parameter>string2</parameter> (this routine is case sensitive).</para>
<para><function>FIND</function> returns position of <parameter>string1</parameter> in <parameter>string2</parameter> (case-sensitive), searching only from character <parameter>start</parameter> onwards (assuming 1 if omitted).</para>
<para><function>FIXED</function> returns <parameter>num</parameter> as a formatted string with <parameter>decimals</parameter> numbers after the decimal point, omitting commas if requested by <parameter>no_commas</parameter>.</para>
<para><function>LEFT</function> returns the leftmost <parameter>num_chars</parameter> characters or the left character if <parameter>num_chars</parameter> is not specified.</para>
<para><function>MID</function> returns a substring from <parameter>string</parameter> starting at <parameter>position</parameter> for <parameter>length</parameter> characters.</para>
<para><function>REPLACE</function> returns <parameter>old</parameter> with <parameter>new</parameter> replacing <parameter>num</parameter> characters from <parameter>start</parameter>.</para>
<para><function>RIGHT</function> returns the rightmost <parameter>num_chars</parameter> characters or the right character if <parameter>num_chars</parameter> is not specified.</para>
<para><function>SEARCH</function> returns the location of the <parameter>search_</parameter> string within <parameter>text</parameter>. The search starts with the <parameter>start_num</parameter> character of text <parameter>text</parameter>. If <parameter>start_num</parameter> is omitted, it is assumed to be one. The search is not case sensitive.</para>
<para><parameter>search_string</parameter> can contain wildcard characters (*) and question marks (?). A question mark matches any character and a wildcard matches any string including the empty string. If you want the actual wildcard or question mark to be found, use tilde (~) before the character.</para>
<itemizedlist>
<listitem>
<para>If <parameter>search_string</parameter> is not found, <function>SEARCH</function> returns #VALUE! error.</para>
</listitem>
<listitem>
<para>If <parameter>start_num</parameter> is less than one or it is greater than the length of <parameter>text</parameter>, <function>SEARCH</function> returns #VALUE! error.</para>
<synopsis><function>SUBSTITUTE</function>(<parameter>text</parameter>,<parameter/> old,<parameter/> new [,<parameter>num</parameter>])</synopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><function>SUBSTITUTE</function> replaces <parameter>old</parameter> with <parameter>new</parameter> in <parameter>text</parameter>. Substitutions are only applied to instance <parameter>num</parameter> of <parameter>old</parameter> in <parameter>text</parameter>, otherwise every one is changed.</para>