Infragistics2.Excel.v9.2 Indicates an exposed type or member which was added as part of a new feature. Creates a new instance. Gets or sets the value indicating whether member or type should be excluded from the internal feature documentation. Gets or sets a short name description of the feature. Gets or sets a more granular sub-feature name description of the feature. Gets or sets the version in which the feature was added. This interface can be implemented on items to be contained in the sparse array to get a fast IndexOf operation. Gets the owner data of the item. The sparse array context.

GetOwnerData and methods are used by the implementation to maintain a transparent piece of data. It uses this data to provide efficient IndexOf operation.

The owner data of the item.
Sets the owner data of the item. The owner data to assign to the item. The sparse array context.

and SetOwnerData methods are used by the implementation to maintain a transparent piece of data. It uses this data to provide efficient IndexOf operation.

ISparseArrayMultiItem interface. Returns a descendant item at the specified index. The returned item doesn't necessarily have to be an immediate child. The index of the descendant item. The descendant item found at the specified index. Gets the scroll count of this item. If the scroll count is 0 then item is considered hidden otherwise it's considered visible. Scroll count must be a non-negative number. ICreateItemCallback interface. Returns a new item to be assigned to a location in the array. CreateItem should not set the new item at the location in the array. Array and relativeIndex are provided for information only. Also the implementation should not modify array in any way otherwise results will be undefined. The array to provide as context; this array will remain unmodified. The relative index of the item to create. SparseArray class. Initializes a new instance of the class with the default factor Initializes a new instance of the class If true then either all items should implement ISparseArrayItem interface or the derived class should override and methods to maintain owner data for items. Initializes a new instance of the class . The number in determining how the array should grow. Initializes a new instance of the class. The number in determining how the array should grow. Must be between 0f and 1f exclusive. Initializes a new instance of the class. The number in determining how the array should grow. Must be between 0f and 1f exclusive. If true then all the items must implement ISparseArrayItem interface. Initializes a new instance of the class. Specifies whether scroll count and position should be maintained. The number in determining how the array should grow. Must be between 0f and 1f exclusive. Expands the array to the new count. New count must be greater than or equal to the current count. This has the same logical effect as adding new count - current count number of null items at the end of the array. The new size of the array. Adds the speicifed item at the end of the collection. The index at which the item was added. Inserts the specified item at the specified location in the array. The location in the array that the item should be inserted. The item to insert into the array. Adds items in the specified collection to the end of the collection. Inserts items in the specified collection to the collection at the specified index. The index at which to insert the specified items. The collection of items to insert into the array. Removes an item at the specified index. The index of the item to remove. Retruns the index of the specified item. The item whose index should be determined. The index of the specified item, or -1 if the item is not found. Removes the specified item. If the item doesn't exist in the collection, it does nothing. The item to remove from the array. Returns true if the specified item is contained in the collection. The item that should be searched for within the collection. True if the object was found in the collection, otherwise false. Removes all items from the array. Copies all the elements from this collection to the specified array starting at index. The array into which the items should be copied. The position in the array at which copying should begin. Copies all the elements from this collection to the specified array starting at index. The array into which the items should be copied. The position in the array at which copying should begin. A callback mechanism used to insert new items when null slots are encountered. Returns a new array containing all the elements of this collection. An object array containing all the elements of this collection. Returns a new array of specified type containing all the elements of this collection. The of array to create. An array of the specified type containing all the elements of this collection. Gets the item at the specified index. If the item at the specified index is null and createItemCallback parameter is non-null, it will call CreateItem on the callback to create it and set it on the array at the specified index. The index of the item to get. The item at the specified index, or null if no item exists. Gets the item at the specified index. If the item at the specified index is null and createItemCallback parameter is non-null, it will call CreateItem on the callback to create it and set it on the array at the specified index. The index of the item to get. A callback mechanism used to insert new items when null slots are encountered. The item at the specified index, or null if no item exists. Sorts the array. Returns the owner data of the item. Derived class can override GetOwnerData and SetOwnerData to support owner data without having to implement ISparseArrayItem interface on the items. The item whose owner data should be returned. The owner data of the item, or null if none found. Sets the owner data on item. Derived class can override GetOwnerData and SetOwnerData to support owner data without having to implement ISparseArrayItem interface on the items. The item whose owner data should be assigned. The owner data to assign to the item. Called by the sparse array whenever visible count or scroll count changes or is dirtied. Default implementation does nothing. This may get called multiple times for the same change as well as may get called even when the count doesn't change but is simply dirtied. Sets the owner data on all the items contained in the tree. Typically you do not need to call this as the sprase array automatically manages the owner data as you add and remove items. This is useful if you deserialize the sparse array and need to make sure that the owner data are set properly on the contained items. Returns an instance of IEnumerator that can be used to enumerate through all the elements of this collection. A to traverse the collection. Returns an instance of IEnumerator that can be used to enumerate through all the elements of this collection. New elements will be created to fill null slots via createItemCallback parameter if it's non-null. A callback mechanism used to insert new items when null slots are encountered. A to traverse the collection. Retruns the number of items contained in the collection. Indexer. Indicates whether this collection is synchronized. Always returns false. Returns an object that can be used to synchronize thread access. Returns a new instance of enumerable that can be used to enumerate through only the non-null items in the collection. Identifies formula token types in the UltraCalcFormulaToken class Collection of objects Copys the collection to an array. Array used for the desitnation of the copy. The zero-based index in array at which copying begins. Returns the collection enumerator. Collection enumerator. Denotes whether the collection is thread-safe. Returns a number of elements in the collection. Returns an object that can be used to synchronize access to the collection. Add a formula refernce the given predecessor reference UCReference predecessor reference IUltraCalcReference of formula that contains the given predecessor Return the position of the given predecessor in the collection Remove the given formula ancestor from the given predecessor's list of formulas. IUltraCalcReference that's referenced by given ancestor's formula Formula refernce to remove for given predecessor's list of formulas Remove the given formula ancestor from the given predecessor's list of formulas. Position of the predecessor in the ancestor list Position of the ancestor in the predecessor's Ancestors list Indicates whether to update the predecessor reference in the ancestor map Return the collection of ancestors of the given predecessor Reference whose collection of formulas to return Collection of references whose formulas reference the given predecessor Copys the collection to an array. Array used for the desitnation of the copy. The zero-based index in array at which copying begins. Returns the collection enumerator. Collection enumerator. Denotes whether the collection is thread-safe. Returns a number of elements in the collection. Returns an object that can be used to synchronize access to the collection. Provides methods and properties to manage a list of formulas that reference a given reference Default constructor Predecessor constructor predecessor for this instance Equality method that returns whether an object is equal to this one Object to compare to this entry True if object is equal to this instance, else false Return hashcode for this object Integer hash code for this object Storage for predecessor Storage for ancestor collection Get/Set the predecessor for this entry Get/Set the ancestor collection for this entry IUltraCalcReference implementation for caching the Formula of the underlying reference. The Primary Reference Inteface. Create a new reference relative to this reference. The reference string. The new reference. A reference string may be external or internal.

A external reference has the form "//object_name/object_specific_part". The control identified by object_name must implement IUltraCalcReference and be able to parse object_specific_part.

An internal reference is a reference within the same control that implements this instance of the interface. An internal reference can be absolute or relative. Absolute references must begin with the "/" character. Such references must be created relative to the root object in the control. Relative references are created relative to this reference.

Note that in complex reference models, multiple reference strings may point to the same underlying object. The reference string used to create the reference must be available to other methods such as ResolveReference, References and MarkRelativeIndicies. Consequently, if the reference string is relative, a proxy reference object should be returned that retains the relative reference string.

Returns true if this reference contains inReference The contained candidate. true if inReference is contained by this reference. This method is used by the UltraCalcEngine to determine if the passed in reference is either a child of this reference or a more fully scoped version of this reference. Each element in this reference is compared with the corresponding element in the input reference. If the identifers are the same, and if this scope contains the input scope, then the input reference is contained by this reference. If the input reference is longer than this reference and the common element are contained, then the input reference is contained. Returns true if inReference is a proper subset of this reference The subset candidate. true if inReference is contained by this reference. This method is used by the UltraCalcEngine to determine if the passed in reference is fully contained by this reference. Each element in this reference is compared with the corresponding element in the input reference. If the identifers are the same, and if this scope entirely contains the input scope, then the input reference is a proper subset this reference. The fully qualified unique name for the referenced element. Read Only. The unqualified name of this referenced element. Read Only. The , if any, associated with this Reference. If this reference does not contain a Value then a is returned. The , if any, associated with this Reference. If this reference can not contain a formula then null is returned. Returns a context for the Reference.

Returns a meaningful object context for the reference. This could be an UltraGridCell, UltraGridColumn, NamedReference, Control, etc.

Return a collection of references if this Reference is enumerable. An exception is thrown if this reference is not enumerable. A Reference collection. The collection returned by this method must be constained to the scope specified by the original string used to create the reference. For example, if the original reference string was [Customers(State="MA")/Total], then the collection should be constained to the Total cells for all customers that have State = "MA". Returns true if this reference is enumerable. Returns the normalized absolute name. UltraCalcEngine makes use normalized absolute names of references to compare two references and search for references. This property should return the absolute name with case insensitive parts of the absolute names converted to lower case. Initializes a new Registers an assembly containing derived types. Loaded assembly to register Returns true if the assembly was registered successfully, else false if the registration failed

All types within the registered assembly are enumerated and any that derive from class are added to the list of available formula functions

Registers a single User defined function instance to register Returns true if the type was registered successfully, else false if the registration failed

Users can build custom functions used in formulas by sub-classing the class. Once the derived class is instaniated it must be registered by using the AddFunction method before being avilable and referenced by a formulas. Users can build a library of functions packaged in an assembly and register all the functions within the assembly by using the AddFunctionLibrary method.

Adds a formula into the calculation network. Formula instance containing compiled formula string to add into the calculation network

Formulas are entered into the calculation network by first compiling the formula string using the Compile method on the UltraCalcFormula class, then passing the UltraCalcFormula instance to the AddFormula method.

Deletes a formula from the calculation network Formula instance to be removed

References to formulas that are deleted are recalculated.

Performs a time-based recalculation Denotes the number of 100-nanosecond intervals used to perform time-based partial recalculation cycles Returns true if there are still formulas to recalculate or false if recalculation process is complete

This method performs a partial recalculation cycle, yielding after the given number of ticks has expired. This method should be repeately called until it returns false denoting all dirty formulas have been recalculated.

Performs a synchronous recalculation Returns true if the reference is dirty, else false

This method recalculates all dirty formulas before returning.

Checks to see if a reference is dirty, and optionally waits for it to be recalculated Reference whose dirty state is requested Denotes whether caller wants to wait until the reference is recalculated True if the reference is dirty Outputs information about the current state of the calculation engine. Occurs after a single evaluation of a formula has completed. Returns the formula function factory for this instance of the calc engine

Use the function factory to access detailed information about each function available to formulas compiled against this instance of the calc engine.

Gets a dictionary of all references which should be ignored from recalculations for now due to dynamically added references which were dirty. Provides methods to compile and evaluate formulas.

Interface implemented by the formula object. Evaluate the compiled expression against the given base reference Base reference used to resolve relative references into absolute references Retuns an UltraCalcValue containing result of formula evaluation Adds a reference created during the evaluation of the formula to the refernces of the formula.

If the reference is already in the references or dynamic references collection of the formula, this will have no effect.

The reference to add to the formula's dynamic references collection.
Formula string. Returns whether the formula contains an always dirty function. Base reference associated with the formula.

Base reference associated with the formula. For example, in the case of a column formula, BaseReference would be the column reference.

Retuns a collection of references contained in the formula token string Collection of IUltraCalcReferences Gets the collection of reference created during the last evaluation of the formula. Evaluate the compiled expression against the given base reference Base reference used to resolve relative references into absolute references Retuns an UltraCalcValue containing result of formula evaluation Denotes whether the formula contains an always dirty function Returns the formula string Gets or sets the formula base reference

The base reference of a formula is sometimes referred to as the Left-Hand-Side (LHS)of an expression. It represents the location within the grid, or other object, whose value is being computed by the given formula. References within the formula expression my be fully qualified or relative to the formula's base reference. For example, if we want to calculate a "[Total]" column in a grid we might have a formula such as "[Units] * [Price]". Each cells within the "Total" column would be computed multiplying the "Units" cell and "Price" cell for row in the band.

Returns a collection of formula tokens in pre-fix form, called Reverse Polish Notation. Formula token collection

Compiling a formula converts the in-fix expression string into an intemediate post-fix form optimized for evaluation.

Retuns a collection of references contained in the formula token string Collection of IUltraCalcReferences Provides methods and properties that manage a collection of IUltraCalcFormulaReference objects. Default constructor. Constructor that accepts a collection of formula tokens used to access the references in a formula. The formula which owns the collection. Adds a reference to the collection. IUltraCalcReference instance to add to collection. Copys the collection to an array. Array used for the desitnation of the copy. The zero-based index in array at which copying begins. Returns the collection enumerator. Collection enumerator. Underlying collection object managing the token collection. Denotes whether the collection is thread-safe. Returns a number of elements in the collection. Returns an object that can be used to synchronize access to the collection. Abstract base class from which all formula tokens must derive. Interface implemented by the calcengine formula token object. Return the token's type code The UltraClacFormulaTokenType for the this token Default constructor Return the token's type code The UltraClacFormulaTokenType for the this token Interface implemented by the calcengine formula token object. The UltraCalcValue represented by the token. Interface implemented by the calcengine formula token object. Returns the number of arguments to the function. The name of the UltraCalcFunction represented by the token. Returns an UltraCalcOperatorFunction indicating the operator that the function reprsents or null of the function does not represent an operator. Returns the number of arguments to the function. The name of the UltraCalcFunction represented by the token. Returns an UltraCalcOperatorFunction indicating the operator that the function reprsents or null of the function does not represent an operator. Provides method and properties to manage a collection of UltraCalcFormulaTokens. Default constructor Add a token to the collection. Token to add to collection. Copies the collection to an array. Array that is the destination of the copy. Index into array to begin copying collection elements. Returns the collection enumerator Collection enumerator Underlying ArrayList used to manage token collection. Denotes whether the collection is thread-safe. Returns the number of collection elements. Returns an object that can be used to synchronize access to the collection. Base class for formula functions. Initializes a new Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. A helper method for extracting the instances from the stack. Number stack whose values should be popped. Number of items to pop/evaluate from the number stack True to ignore values whose IsNull returns true; otherwise false to include empty items in the list. An array of UltraCalcValue instances removed from the number stack. Indicates whether the results of the function is always dirty. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Base class for the built in functions. Calculates an average (arithmetic mean) for a series of numbers.

AVERAGE(value1, value2, ...)

Value1, value2, ... are one or more numeric values or references to numeric values. An average (arithmetic mean) is calculated by taking the sum of all values, and dividing by the number of values.

Each value is equally weighted. To obtain a weighted average, you can multiply each value by a weight in the expression.

AVERAGE( [Value1]*[Weight1], [Value2]*[Weight2], [Value3]*[Weight3])
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Adds a series of numbers to obtain a total amount.

SUM(value1,value2,...)

Value1, value2, ... are references for which you want to find the total value. Text representations of numbers and literal numeric constants that you specify in the list of arguments will be included in the sum. If value is a column or vector reference then the sum will be taken of all cells or values contained by the reference. Any error values in the argument list, or text that is not convertible to a numeric value, will produce an error.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '+' Unary plus formula operator (+20) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '-' Negation formula operator (-20) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '+' Addition formula operator (1+2) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '-' Subtraction formula operator (3-2) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '%' Percent formula operator (20%) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '*' Multiplication formula operator (2*3) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '/' Division formula operator (3/2) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '&' formula operator used to concatenate two strings. ("First" & "Second") Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Combines two or more text values into a single text string.

CONCATENATE(text1, text2, ..., textN)

Text1, text2, ..., textN are multiple text values that you want to concatenate into one text string. These text values may be text strings, numbers (which will be converted into text), or a single value reference (such as a cell reference) containing such a value.

This function provides for elementary text processing in UltraCalc, such as when building message text or appending some connective text or punctuation to the results of evaluating other text-bearing expressions.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '=' Equality formula operator (Price = 200) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function "<>" Inequality formula operator (Price <> 200) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function '<' Less than formula operator (Price < 200) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function "<=" Less than or equal formula operator (Price <= 200) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function ">" Greater than formula operator (Price > 200) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function ">=" Greater than or equal formula operator (Price >= 200) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function "^" Exponentiation formula operator (3^2) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Chooses between two outcomes (or UltraCalc expressions to evaluate) based on the result of a logical test on a value or UltraCalc expression you specify.

IF( boolean_test, result_if_true, [result_if_false])

Boolean_test is a value (or an UltraCalc expression) which the IF function evaluates to produce a boolean value of either TRUE or FALSE. The outcome of this test determines which result will be returned by the function.

Result_if_true is a value (or the outcome of another UltraCalc expression) that will be returned only when boolean_test has evaluated to the boolean value, TRUE.

Result_if_false is a value (or the outcome of another UltraCalc expression) that will be returned only when boolean_test has evaluated to the boolean value, FALSE.

The IF function allows you to write an UltraCalc expression that branches to one expression (when the boolean_test is TRUE) or another (when the boolean_test is FALSE) based on an arbitrary condition you have specified.

The result_if_false is not specified and boolean_test is FALSE, the IF function will return FALSE.

If boolean_test's evaluation produces an error value then neither Result_if_true nor Result_if_false will be evaluated. Instead, the IF function returns the error value from its evaluation of boolean_test.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates a number's absolute value.

ABS( value)

A number's absolute value is it's value without any sign. It represents the magnitude of a value while ignoring it's direction (positive or negative) on a number line or vector.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gets the remainder following integer division of two numbers.

MOD(numerator, denominator)

Numerator is the number being divided by denominator. When denominator can only be taken from numerator a certain whole number of types (the quotient), any leftover is the remainder.

Denominator is the number dividing the numerator. Any remainder will have the sign of the denominator. This number cannot be zero, otherwise the MOD() function returns a #DIV/0 error.

If you want to perform integer division on these two numbers then use the QUOTIENT() function.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Performs integer division on two numbers disregarding any remainder.

QUOTIENT(numerator, denominator)

Numerator is a numeric value that will be divided by the denominator. It is sometimes called the dividend.

Denominator is the numeric value that divides the numerator. It is sometimes called the divisor. It cannot be zero or a #DIV/0 error value will be returned.

When either the numerator or the denominator is not a number, the QUOTIENT() function returns an error value (#VALUE!).

If you need the remainder from an integer division, use the MOD() function.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Multiplies a series of numbers to return their total product.

PRODUCT( value1, value2, ..., valueN)

Value1 is the first number (the multiplicand) in a series of numbers that you want to multiply.

Value2 is the second number (the first multiplier) in a series of numbers that you want to multiply.

ValueN is the last number (the last multiplier) in a series of numbers that you want to multiply.

This function offers a convenience when you need to multiply many numbers or expressions at one time.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Raises the specific number to a power.

POWER(value, exponent)

Value is a numeric value or reference to a numeric value which you want to raise to a power.

Exponent is a real number power to which value is to be raised. Imaginary exponents are not supported.

Common applications of the POWER() function occur when you need to multiply a number against itself multiple times. For example, it is common in many computer applications to create bit mask values by raising the value 2 to integer exponents, which produce a sequence such as (1, 2, 4, 8, 16, 32, 64, 128, ...)

The POWER() function additionally supports fractional exponents, and can be used to emulate other functions such as the quad root (raising to an exponent of 0.25, which is 1/4) or the inverse square (raising to an exponent of -2.0).

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Converts a real numeric value (which may have a fractional part) into a whole number.

INT(value)

Value is a real numeric value that you want to convert into a whole number. INT() is a more specialized version of the TRUNC() function because it always produces integer values (whereas the TRUNC() function allows you to specify a precision at which to truncate the numeric value.)

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Truncates the fractional portion of a numeric value to produce an integer.

TRUNC(value, number_of_digits)

Value is a numeric value or reference to a numeric value that you want to truncate.

Number_of_digits specifies the precision at which truncation should occur. By default, truncation occurs zero places right of the decimal point which will produce an integer.

Truncation always discards the fractional value, causing the Value to move closer to zero (whether it was positive or negative before the truncation). It differs from the ROUND() function in that the value always changes to a lesser value.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Counts how many cells have numeric or date/time values.

COUNT(Value1, Value2, ..., ValueN)

Value1, value2, ... valueN can be references to different data structures, such as columns. Each numeric or date/time value is counted. Empty, error, boolean or text values that are not convertible into numeric values are not counted.

When a reference is a range reference, only those numeric and date/time values within the range will be counted.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function A constant function always returning the TRUE value of Boolean logic.

TRUE() will always evaluate to the boolean value of TRUE. It takes no arguments.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function A constant function always returning the FALSE value of Boolean logic.

FALSE() will always evaluate to the boolean value of FALSE. It takes no arguments.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Logical-NOT returns the inverse boolean value of it's argument.

NOT(boolean1)

Boolean1 is any boolean (TRUE or FALSE) value, or conditional statement (made up of any UltraCalc expression which itself evaluates to a boolean TRUE or FALSE value) to be inverted.

If boolean1 was TRUE, then the Logical-NOT would return FALSE. If boolean1 was FALSE, then the Logical-NOT would return TRUE.

If Boolean1 is an UltraCalc expression that evaluates to an error value, then the result of a Logical-NOT operation is undefined because an error value is neither TRUE nor FALSE.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Logical-AND returns the boolean value, FALSE, if at least one argument has a value of FALSE. When all arguments are TRUE, then this function returns TRUE.

AND(boolean1, boolean2, ...)

Boolean1, boolean2, ... are a list of boolean (TRUE or FALSE) values or conditional statements (any UltraCalc expression which itself evaluates to a boolean TRUE or FALSE value) to be evaluated for the constraint that all arguments should be TRUE (or conversely, that at least one argument should be FALSE.)

All arguments are tested (i.e., the logical-AND function does not use "short-circuit" evaluation, in which the function can stop executing as soon as the first argument having the boolean value, FALSE, has been processed.)

This function stops evaluating immediately when any argument results in an error value. An error value is neither TRUE nor FALSE, therefore the return value of the logical-AND function is undefined.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Logical-OR returns the boolean value, TRUE, if at least one argument has a value of TRUE. When all arguments are FALSE, then this function returns FALSE.

OR(boolean1, boolean2, ...)

Boolean1, boolean2, ... are a list of boolean (TRUE or FALSE) values or conditional statements (any UltraCalc expression which itself evaluates to a boolean TRUE or FALSE value) to be evaluated for the constraint that at least one argument should be TRUE (or conversely, that all arguments should be FALSE.)

All arguments are tested (i.e., the logical-OR function does not use "short-circuit" evaluation, in which the function can stop executing as soon as the first argument having the boolean value, TRUE, has been processed.)

This function stops evaluating immediately when any argument results in an error value. An error value is neither TRUE nor FALSE, therefore the return value of the logical-OR function is undefined.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gives you the smallest numeric value out of a series.

MIN(Value1, value2, ..., valueN)

Value1, value2, ... valueN are any number of numeric values or references to numeric values from which you want the minimum value found. Arguments may be numbers, boolean values, text values convertible into numbers, or empty. Error values and text values that are not convertible into numbers will produce an error.

The minimum value for a series of numbers can be it's largest magnitude negative number because larger magnitude negative numbers are less than smaller magnitude negative numbers. For example, given the expression MIN( -1500, -50, 5, 150), the return value is -1500 and not 5. To determine the numeric value with the smallest magnitude you would use the ABS() function on each argument. The following example would produce a minimum value of 5.

MIN( ABS(-1500), ABS(-50), ABS(5), ABS(150))

When the argument list is empty, MIN() returns zero.

MAX()
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gives you the largest numeric value out of a series.

MAX(Value1, value2, ..., valueN)

Value1, value2, ... valueN are any number of numeric values or references to numeric values from which you want the maximum value found. Arguments may be numbers, boolean values, text values convertible into numbers, or empty. Error values and text values that are not convertible into numbers will produce an error.

When the argument list is empty, MAX() returns zero.

MIN()
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the mathematical constant, e, raised to the specified power.

EXP(exponent)

Exponent is the power to which the base, e, is raised. This gives the function it's characteristic "exponential" growth.

Euler's Number, e, is the value 2.718281828459..., and is also the base of the natural logarithm. You can represent the constant e within your UltraCalc formula by specifying EXP(1). The exponential function (and natural logarithm) have many applications in mathematics, engineering, and for modeling behavioral and statistical distributions commonly observed in nature and the social sciences.

LN()
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Rounds the fractional portion of a numeric value up or down to produce an integer.

ROUND(value, number_of_digits)

Value is a numeric value or reference to a numeric value that you want to round up or down.

Number_of_digits specifies the precision at which rounding should occur. This will be the place value which UltraCalc examines to round up or down. By default, rounding occurs zero places right of the decimal point produces an integer.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the mathematical constant for the Greek letter, pi.

PI()

The mathematical constant pi represents the relationship between a circle's diameter and it's circumference. It is also the constant relating the square of a circle's radius with the surface area of the circle. It has a great many applications in mathematics, geometry, the sciences, and engineering.

The constant pi is a non-terminating decimal number, although UltraCalc approximates it to 15 significant digits of precision (3.14159265358979).

A common use of the PI function in UltraCalc is to convert a measurement in radians which is the form in which trigonometric functions take their arguments, and the more conventional degrees of arc. This conversion can be accomplished by multiplying the radian measurement by PI()/180. The following table describes some benchmarks for comparison between radians and degrees.

RadiansDegreesTurns of a wheel (common example)
00no turns
PI/445one-eighth turn
PI/290one-quarter turn
PI180one-half turn
2x PI360one complete turn
3x PI540one and one-half turn
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the square root of a number.

SQRT(value)

Value is the numeric value or reference to a numeric value which you are calculating the square root of. Only real roots are supported, therefore if value is negative (which would produce an imaginary root) the SQRT() function will return an error value (#NUM!).

The square root is the number whose product, when the number is multiplied against itself (squared), is value. Note that it is possible to multiply two negative square roots to produce the same positive value. By convention, the SQRT() function only returns the positive root.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the trigonometric cosine of a specified angle (measured in radians).

COS(value)

Value is the angle measured in radians for which you want to take the cosine. If your argument must be in degrees, multiply it by PI()/180 to convert it into radians.

The cosine is an sinusoidal function with a period of 2*PI() radians. It's value is always between 1 and -1. It behaves like the sine function, SIN(), with a phase shift (phi) of -PI()/4 radians.

The cosine function value derives from the geometric ratio between the length of the adjacent (non-hypotenuse) leg to the hypotenuse of a right triangle, when the hypotenuse has a length of one. It is continuous because at intervals of PI() radians the length of the adjacent leg and the hypotenuse are equal.

Another way of looking at this function is to imagine the hypotenuse is the radius, r, of a unit circle centered on a Cartesian plane with x- and y- axes. At any point on the edge of the unit circle, the hypotenuse makes an angle, theta, with the x-axis. The cosine function value of the angle theta is the distance from the center of the circle to the point in the direction of the x-axis. Applied in this fashion, the COS() function can be used to convert between Cartesian and Polar coordinate systems.

Both interpretations are equivalent because if you drop a line from a point on the unit circle that intersects the x-axis at a right angle you form a right triangle.

These trigonometric concepts appear frequently in many engineering, architectural and scientific applications.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the angle (measured in radians) having the specified value of the trigonometric cosine function.

ACOS(value)

Value is the real number result of the cosine function taken of an angle you want to find. The legal values of the cosine function are from -1 to 1. An inverse cosine by default will return the normal angle from 0 up to PI. This is because there are several angles which may have an identical value of their cosine. For example, the angles -PI/2, PI/2, 3PI/2, etc., all have a cosine of zero. You can find alternate angles by adding (or subtracting) any multiple of PI radians to the normal angle returned by the inverse cosine function.

You can convert the result of the inverse cosine function from radians into degrees by multiplying it by 180/PI().

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the angle (measured in radians) having the specified value of it's hyperbolic cosine function.

ACOSH(value)

Value is the hyperbolic cosine of some angle (measured in radians) that you want to find. As you might expect, the values of the hyperbolic cosine function (see the COSH function) increase at a hyperbolic rate, but one consequence is that these ever larger changes in the hyperbolic cosine will correspond to ever smaller changes in the angle. This relationship is intrinsic to many of the mathematical and engineering applications of the inverse hyperbolic cosine function, such as when resistance or strain builds up on a body increasingly as it is rotated (hysteresis).

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the trigonometric sine of a specified angle (measured in radians).

SIN(value)

Value is the angle measured in radians for which you want to take the cosine. If your argument must be in degrees, multiply it by PI()/180 to convert it into radians.

The sine is an sinusoidal function with a period of 2*PI() radians. It's value is always between 1 and -1.

The sine function value derives from the geometric ratio between the length of a right triangle's hypotenuse and the length of the opposite leg, when the hypotenuse has a length of one. It is a continuous function because at intervals of PI() radians the length of the opposite leg and the hypotenuse are equal.

Another way of looking at this function is to imagine the hypotenuse is the radius, r, of a unit circle centered on a Cartesian plane with x- and y- axes. At any point on the edge of the unit circle, the hypotenuse makes an angle, theta, with the x-axis. The sine function value of the angle theta is the distance from the center of the circle to the point in the direction of the y-axis. Applied in this fashion, the SIN() function can be used to convert between Cartesian and Polar coordinate systems.

Both interpretations are equivalent because if you drop a line from a point on the unit circle that intersects the y-axis at a right angle you form a right triangle.

These trigonometric concepts appear frequently in many engineering, architectural and scientific applications.

COS()
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the hyperbolic sine of a specified angle measured in radians.

SINH(value)

Value is an angle measured in radians for which you want to calculate the hyperbolic sine. If your angle is measured in degrees, multiply it by PI()/180 to convert into radians.

Many applications in mathematics and physics, for example determining the gravitational potential of a cylinder, make use of the hyperbolic sine function's characteristics.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the angle (measured in radians) having the specified value of the trigonometric sine function.

ASIN(value)

Value is the sine value of the angle you want. Legal sine values are confined to real numbers from -1 to 1, inclusive.

The angle returned will be between -PI()/2 and PI()/2 radians. To convert this angle into degrees, multiply by PI()/180.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the trigonometric tangent of a specified angle (measured in radians).

TAN(value)

Value is the angle measured in radians for which you want to take the tangent. If your argument must be in degrees, multiply it by PI()/180 to convert it into radians.

The tangent can have a value from -INF to +INF, however it is undefined at intervals of every PI()/2 radians +/- PI() radians.

The tangent function value derives from a well-known geometric ratio between the length of the opposite and the adjacent (non-hypotenuse) leg of a right triangle. All 3 angles inside of any triangle must add up to exactly PI() radians, and in a right triangle the angle opposite the hypotenuse must be PI()/2 radians. Given these facts, it is not possible for either of the other two angles within the triangle to reach PI()/2 radians themselves. If you choose an angle (other than the triangle's right angle) which approaches PI()/2 radians then the remaining angle must approach 0 radians. The tangent function value tells you in these circumstances how the leg of the right triangle opposite your angle approaches infinite length. These calculations have important applications in architecture and engineering.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the hyperbolic tangent of a specified angle measured in radians.

TANH(value)

Value is an angle measured in radians for which you want to calculate the hyperbolic tangent. If your angle is measured in degrees, multiply it by PI()/180 to convert into radians. The hyperbolic tangent has a range from -1 to 1.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the normalized angle (measured in radians) which has the specified tangent function value.

ATAN(value)

Value is a number containing a tangent function value that you want to retrieve the angle of. This function returns an angle of between PI()/2 and -PI()/2. Although the tangent function is undefined for values of PI()/2 and -PI()/2, the return value of this function is rounded to these values if Value is +INF or -INF, respectively.

This function is sometimes referred to as the inverse tangent function or the arctangent.

The angle returned is the principal value, as there exist an uncountable number of alternative angles satisfying the requirement of having Value as their tangent function value, at regular intervals of +/- PI() to either side of this principal value.

If you require a result in degrees, multiply the arctangent by 180/PI().

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the angle made with the x-axis on a Cartesian coordinate plane by the specified (x, y) coordinates.

ATAN2(x_ordinate, y_abscissa)

X_ordinate is a number representing the distance along the x-axis of a Cartesian point. It may also be thought of as the adjacent leg of a right triangle, where the right angle is made by dropping a perpendicular line from (x_ordinate, y_abscissa) to the point (x_ordinate, 0) on the x-axis.

Y_abscissa is a number representing the distance along the y-axis of a Cartesian point. It may also be thought of as the opposite leg of the right triangle constructed above.

This variation on the arctangent (or inverse tangent function) calculates for you the angle, theta, made with the x-axis when you extend a line segment from the origin at (0, 0) to your specified coordinates at (x_ordinate, y_abscissa). This line segment can also be seen to be the hypotenuse of a right triangle, or the radius of the circle on which the point, (x_ordinate, y_abscissa), sits on the edge. This function is another way of looking at the trigonometric tangent function value that is useful in many UltraCalc applications because it affords you a more convenient parameterization for some tasks, such as converting from Cartesian to Polar coordinate systems.

The return value of this function is within the range of PI()/2 and -PI()/2 measured in radians. If you need to convert this value into degrees then multiply the result by 180/PI().

ATAN() TAN()
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the next lesser whole number for a specified numeric value.

FLOOR(value)

Value is a real numeric value to be rounded down to the next lesser whole number (also called an integer). FLOOR() behaves differently from the INT() function because when value is negative, the "next lesser whole number" will be a number having greater magnitude (i.e., it becomes more negative.)

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the smallest whole number greater than or equal to the given number

CEILING(number)

Number is the numeric value you want to round.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Generates a pseudorandom number from zero up to (but not including) one.

RAND()

The RAND() function will generate another pseudorandom number each time it is evaluated. It returns a fractional number on a unit basis, therefore you can use RAND() to produce numbers between 0 and C by multiplying the RAND() result by C. It follows that to produce a pseudorandom number between A and B you could translate the result by A like this:

RAND() * ( [B] - [A] ) + [A]

The number generation of the RAND() function derives from the system clock, and therefore may not be entirely random. It should not be used for applications requiring cryptographically-strong randomness or uniform probability distributions.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the natural logarithm of a specified numeric value.

LN(value)

Value is a real number to calculate the natural logarithm of. Value must be positive as the logarithm is undefined for negative values.

A natural logarithm is a special case of a logarithm having the base of Euler's Number, e (2.71828...). It is the inverse of the EXP() function.

Logarithms have many applications in mathematics, life and social sciences.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the logarithm (base 10) of a specified numeric value.

LOG10(value)

Value is a real number to calculate the decimal logarithm of. Value must be positive as the logarithm is undefined for negative values.

To specify your own base for a logarithm use the LOG() function. To calculate the natural logarithm use the LN() function.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates a logarithm for a specified numeric value to the specified base.

LOG(value, base)

Value is a real number that you want to calculate the logarithm to base for. This number must be positive, as the logarithm is undefined for negative numbers.

Base is the base of the logarithm, which defaults to 10.

To calculate the natural logarithm (a logarithm to the base of Euler's Number, e) it is usually more convenient to call the LN() function.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates an investment's Net Present Value given it's expected rate or return and the cash flow represented as positive numeric values (income) and negative numeric values (payments).

NPV(discountRate, value1, value2, ..., valueN)

DiscountRate is the investment's expected rate of return over the life of the investment, expressed as a percentage growth (or decline) per payment period. In some applications this may be the fixed interest rate. This numeric value is used to discount cash flows paid into or received from the investment.

Value1, value2, ... valueN are any number of numeric values representing cash inflows (as positive numbers) or cash outflows (as negative numbers). These cash flows must occur at a fixed period (the same period at which the discountRate is expressed), although some cash flows may be zero. The order of the sequence is important, as value1 is assumed to occur (N-1) periods before valueN and will have been able to accrue that much more interest at the assumed discountRate.

By convention, the NPV() assumes cash flows occur at the end of each period. Consequently, the NPV() represents the present value as of the date one period's length before the first cash flow, value1, has been made. If you require flexibility in when cash flows occur (the beginning or end of each period), consider using the PV() function. However, it differs from NPV() in that NPV() allows cash flows of different amounts.

Only numeric values or text values convertible to numeric values may be passed to this function. If a column or range reference is passed as a value argument, only numeric values or text values convertible to numeric values are used.

IRR()
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the future value of an annuity having fixed payments and assuming a fixed interest rate or rate of return.

FV(interestRate, nPeriod, payment, presentValue, paymentDue)

InterestRate is the assumed interest rate per period. The future value calculation assumes no change in the interest rate over the course of the investment. If you anticipate interest rate fluctuations, you should calculate the future value incrementally over shorter periods in which the interest rate is held constant. In some calculations, the interestRate may be synonymous with an investments' expected growth or rate of return per period.

NPeriod is the total number of payment periods in an annuity. Each payment is assumed to be of the same amount, and occur at regular fixed time intervals. A payment earlier in the annuity will be invested for a longer period of time and therefore would accrue more interest than a payment made later in the annuity.

Payment is a fixed amount invested in the annuity at each period. Use a negative number to represent an outflow of cash paid out, and a positive number to represent an inflow of cash received. Calculating a future value requires either a non-zero series of payments or a presentValue.

PresentValue is the value of the investment at the beginning of the annuity. It represents the discounted value of a series of future payments, which over time could be worth a greater amount because they have accrued interest. If the annuity has no present value, then you must specify a non-zero payment amount.

PaymentDue is a numeric value of either 1 or 0, and indicates whether payments are invested in the annuity at the beginning of each period (1) or at the end of each period (0).

The interestRate and nPeriod arguments determine the frequency of payments. If interestRate is given as an annual rate, and nPeriod is 1 then payments are once per year. On the other hand, if nPeriod had been 4 then payments would occur quarterly. Please ensure you use consistent time values when specifying these arguments.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates an investment's present value by discounting what a series of fixed future payments is worth at a specified interest rate.

PV(interestRate, nPeriods, amount, futureValue, paymentDue)

InterestRate is the per-period rate of interest used to discount the future payments. For positive interest rates, the value of future payments diminishes (discounts) to what they are worth now. It is assumed you can reinvest the present value at interestRate to receive futureValue after nPeriods.

NPeriods are the total number of payment periods over the course of the annuity. If your retirement plan annuitizes in 35-years, and you make a fixed quarterly contribution into it, then you would use 35x4 or 140 as your total number of payment periods.

Amount is how much is paid (or received) each period. This amount must be constant over the course of the investment. If you need to calculate the Net Present Value of a series of variable payment amounts, then you should consider using the NPV() function.

FutureValue is the expected cash balance of the investment at culmination. If this argument is omitted, it will be assumed to be zero. In the common usage scenario of calculating loan repayments, a future value of zero represents having a zero liability when the loan is fully repaid. When specifying a zero future value, ensure that amount is non-zero (otherwise the loan could never be repaid). In retirement planning, you would normally estimate the future value you would like to have when you retire.

PaymentDue is a numeric value of either 1 or 0, and indicates whether payments are invested in the annuity at the beginning of each period (1) or at the end of each period (0).

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates what the payment amount should be on a loan at a fixed interest rate requiring a fixed number of payments.

PMT(interestRate, nPeriods, presentValue, futureValue, paymentDue)

InterestRate is the interest rate for the loan.

NPeriods is the number of payments required to pay back the loan.

PresentValue is the current value of the loan (also called the principal), which is a lump sum that the future series of nPeriods payments (which accumulate interest at interestRate) is worth today.

FutureValue is the cash balance in the future (for a loan, this will typically be a loan liability balance of zero) following this series of fixed payments, accruing a fixed interestRate. If omitted, a default future value of 0 is used.

PaymentDue is a numeric value of either 1 or 0, and indicates whether payments are invested in the annuity at the beginning of each period (1) or at the end of each period (0).

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates an investment's number of payment periods when the payment frequency, amount, and interest rate are held steady.

NPER(interestRate, amount, presentValue, futureValue, paymentDue)

InterestRate is the rate of interest per payment period. This numeric value must be held fixed for the duration of the investment. If you must calculate financing based on changes in interest rate then you will need to break up the calculation into several stages over which the interest rate is held constant.

Amount is the payment amount due each period. This numeric value must be constant over the duration of the investment.

PresentValue is a discounted value or lump sum payment that if taken today and invested at the interestRate would be worth the same as this series of fixed payments in the future.

FutureValue is the value after the last payment has been made. If this numeric value is omitted it is assumed to be zero (since this function is normally used in calculating loan repayment you will reach zero liability when the loan is finally paid off.)

PaymentDue indicates whether payments come due at the beginning of each payment period (1) or at the end of each payment period (0). If left unspecified, the default is to assume paymentDue occurs at the end of each payment period.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Rounds a positive number up and a negative number down to the nearest even integer.

EVEN(Number)

Number is the value to round.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Rounds a positive number up and a negative number down to the nearest odd integer.

ODD(Number)

Number is the value to round.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the principal portion of a payment due on an investment or loan with periodic, fixed payments and having a fixed rate of interest.

PPMT(interestRate, periodNumber, nPeriods, presentValue, futureValue, paymentDue)

InterestRate is a fixed rate of interest per period. This function assumes there is one payment made on each period, therefore in cases where you want to calculate quarterly or monthly payments you should adjust an annual interestRate accordingly by dividing it by the number of payments per year.

PeriodNumber identifies the period of the current payment, where the first payment has the number 1. The periodNumber must not exceed the total number of periods (nPeriods).

NPeriods is the total number of payments over the course of this investment or loan.

PresentValue is the discounted value of this series of future payments, if you could take a lump sum payment today and invest it at the fixed interestRate until the future date when this investment or loan had been repaid.

FutureValue is the expected value of this series of payments after the last payment has been made, where all previous payments have been accumulating interest at the fixed interestRate. When omitted, such as when this function is used for calculating loan payments that reduce an outstanding liability, the future value is assumed to be zero.

PaymentDue is a numeric value indicating that payments are due at the beginning of each period (1) or at the end of each period (0).

The PPMT() function calculates the portion of a fixed payment attributed to principal. If you need to calculate the portion of a fixed payment repaying interest then use the IPMT() function. To calculate fixed payment amounts, use the PMT() function.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the interest portion of a payment due on an investment or loan with periodic, fixed payments and having a fixed rate of interest.

IPMT(interestRate, periodNumber, nPeriods, presentValue, futureValue, paymentDue)

InterestRate is a fixed rate of interest per period. This function assumes there is one payment made on each period, therefore in cases where you want to calculate quarterly or monthly payments you should adjust an annual interestRate accordingly by dividing it by the number of payments per year.

PeriodNumber identifies the period of the current payment, where the first payment has the number 1. The periodNumber must not exceed the total number of periods (nPeriods).

NPeriods is the total number of payments over the course of this investment or loan.

PresentValue is the discounted value of this series of future payments, if you could take a lump sum payment today and invest it at the fixed interestRate until the future date when this investment or loan had been repaid.

FutureValue is the expected value of this series of payments after the last payment has been made, where all previous payments have been accumulating interest at the fixed interestRate. When omitted, such as when this function is used for calculating loan payments that reduce an outstanding liability, the future value is assumed to be zero.

PaymentDue is a numeric value indicating that payments are due at the beginning of each period (1) or at the end of each period (0).

The IPMT() function calculates the portion of a fixed payment attributed to interest. If you need to calculate the portion of a fixed payment repaying loan principal then use the PPMT() function. To calculate fixed payment amounts, use the PMT() function.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Converts a text value to all lowercase letters.

LOWER(text_value)

Text_value is a piece of text you want converted into lowercase. The invariant culture is used to translate characters, therefore this function may not be suitable for use with localizable text values.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Converts all lowercase letters in a text string to uppercase.

UPPER(text_value)

Text_value is the text you want to convert to uppercase. UPPER does not change characters in text that are not letters.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gets the leftmost characters from a text value, up to the specified number of characters.

LEFT(text_value, num_chars)

Text_value is a piece of text or reference to some text starting with a substring you want to retrieve.

Num_chars indicate the number of characters retrieved from the beginning of text_value. An error value is returned if this argument is less than zero. If this argument exceeds the length of text_value, then all of text_value is retrieved. If omitted, the first character of text_value is retrieved.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gets the rightmost characters from a text value, up to the specified number of characters.

RIGHT(text_value, num_chars)

Text_value is a piece of text or reference to some text ending with a substring you want to retrieve.

Num_chars indicate the number of characters retrieved from the end of text_value. An error value is returned if this argument is less than zero. If this argument exceeds the length of text_value, then all of text_value is retrieved. If omitted, the last character of text_value is retrieved.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gets a specified number of characters from the middle of a text string, starting from a specified position in that string.

MID(text_value, starting_point, character_count)

Text_value is a piece of text containing the substring you want to retrieve, when you know the position and length of your desired substring.

Character_count specifies how long of a substring to retrieve from text_value measured as a number of characters. If the requested length, when added to the specified starting_point, exceeds the length of text_value then the remainder of the string starting at starting_point is returned.

Starting_point is the one-based position within text_value of the first character in the substring you want to retrieve. If this argument exceeds the length of text_value then the function will return an empty string.

If either character_count or starting_point has a negative value, or evaluate to an error value, then the function returns an error value.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Removes any leading or trailing spaces from a text value, and normalizes runs of whitespace within a text value.

TRIM(text_value)

Text_value is a piece of text to trim and normalize the white space of. Trimming removes all leading and trailing white space. Normalization reduces runs of consecutive whitespace appearing within the text_value to single blank spaces.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Counts the number of characters in a text value.

LEN(text_value)

Text_value is any text string or reference to a text value for which you want a character count. The number of characters, including all whitespace, determines the length of the text string.

Depending on the character encoding used, some whitespace characters such as line-breaks may count as two characters (one character is a carriage return, the other character is a line feed).

An empty text string contains no characters.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Retrieves the numeric value of a piece of text that is supposed to represent either a number or a currency.

VALUE(text_value)

Text_value is any text value or single-value reference to a text string that you want to convert into a number. It may have been formatted with a sign, currency symbol, or thousands separator. These characters will be stripped to yield the numeric value of the text.

If the text_value is an error value or could not be converted into a numeric value then the function returns an error value.

Evaluates the function against the argument on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack.

Returns an error if the UltraCalcValue argument at the top of the number stack was an error.

Returns a value conversion into a double-precision numeric type if the incoming text can be interpreted as a numeric value (possibly after filtering off thousands separators, decimal separators, currency symbols, exponents and signs.)

Returns a numeric conversion from another numeric type if the incoming argument was not text (sometimes when the result of such a conversion is poorly defined this may defy an application's expectations, for example, a DATEVALUE may convert into a numeric value of ticks.)

An UltraCalcValue represents the result of the function evaluation.
Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function Finds one piece of text within another piece of text.

FIND(text_to_find, text_to_search, starting_point)

Text_to_find is the piece of text you want to find. It can be a reference (for example, a NamedReference to a constant text string or a CalcSettings reference to a TextBox on the form). It should be shorter in length than the text_to_search.

Text_to_search is the piece of text you want to search for text_to_find within. It's commonly a reference to a text string that you want to search.

Starting_point is the one-based character position inside of text_to_search at which UltraCalc will begin searching. This argument is optional and if omitted, the search will begin at the first character.

If text_to_find is not found this function returns a Value error, otherwise it returns the starting position of text_to_find within text_to_search.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Replaces a substring of a text value with some new text. This substring is specified by giving it's starting point and it's length in characters, within the original text value.

REPLACE(text_value, starting_point, character_count, new_text_value)

Text_value is the original text within which you want to replace some substring of text, and you already know the starting_point and character_count of that substring.

Starting_point is the one-based position within text_value where the replaced substring begins.

Character_count is the length of the substring being replaced as a count of the characters it contains. If this value when added to starting_point would exceed the length remaining in text_value then the entire remainder of text_value is replaced.

New_text_value is some new text that replaces the text of the specified substring. It is not required to be the same length as the replaced substring.

When starting_point or character_count are error values, or less than zero, an error value is returned. If starting_point exceeds the length of text_value then an error value is returned.

It is possible to use the REPLACE() function with other UltraCalc functions to express the replacement of one substring with another. The following UltraCalc expression replaces the word "Old" with the word "New" in the original text value.

REPLACE("Hello Old World", FIND("Old"), LEN("Old"), "New")
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates depreciation of an asset using the sum of years' digits (SYD) calculation method.

SYD(assetCost, salvageValue, lifespan, periodNumber)

AssetCost is the initial value of the asset when it was purchased new. This numeric value needs to be greater than the salvageValue (otherwise the asset would be appreciating in value).

SalvageValue is the market price you can get for an asset at the end of it's useful life (lifespan periods). In some situations, this may represent the value of the asset's spare parts.

Lifespan is the useful life of the asset being depreciated measured in fixed-length time periods (usually years). The appropriate lifespan to use may vary with the kind of asset being depreciated. As the name of this function suggests, the lifespan when using this depreciation method is normally measured in years (although this does not necessarily have to be the case).

PeriodNumber is the one-based number of the period to calculate the depreciation of the asset for, having a value of between 1 and lifespan. It must be measured in the same units of time as the lifespan.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates what the straight-line depreciation of an asset should be per period.

SLN(assetCost, salvageValue, lifespan)

AssetCost is the initial value of the asset when it was purchased new. This numeric value needs to be greater than the salvageValue (otherwise the asset would be appreciating in value).

SalvageValue is the market price you can get for an asset at the end of it's useful life (lifespan periods). In some situations, this may represent the value of the asset's spare parts.

Lifespan is the useful life of the asset being depreciated measured in fixed-length time periods (usually years). The appropriate lifespan to use may vary with the kind of asset being depreciated.

Straight-line depreciation expresses an asset's depreciation at a constant rate per period. The asset is assumed to lose useful value no faster in the first period depreciation is calculated than in the last period. An accountant can advise you as to which assets the straight-line depreciation calculation method is suitable.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates an asset's depreciation using the fixed declining balance (DB) method over a specified term.

DB(assetCost, salvageValue, lifespan, period, months)

AssetCost is the original cost or purchase price of the asset at the start of the calculation.

SalvageValue is the market value of the asset after it's expected useful life ends, sometimes this will be the value of the asset as spare parts.

Lifespan indicates for how many periods the asset is useful (it's useful life), and must be depreciated. Accounting standards vary on what lifespan is appropriate for different classes of assets, such as durable and non-durable goods.

Period indicates the number of units of time between decremental calculations of the depreciation. If lifespan is measured in years, then the value specified for the period must also be in years.

Months allows you to specify the number of months in the first year, if the depreciation does not begin on the first day of the year. You might specify months based on when the asset was purchased new. If omitted, the calculation defaults to 12 which is equivalent to calculating starting from the first day of the year.

For some assets, alternative calculation methods such as the DDB() function may be more appropriate. Your accountant can tell you for which assets the fixed declining balance method is an acceptable means of calculating depreciation.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates an asset's depreciation using the double declining balance (DDB) or another weighted factor method over a specified term.

DDB(assetCost, salvageValue, lifespan, period, weight)

AssetCost is the original cost or purchase price of the asset at the start of the calculation.

SalvageValue is the market value of the asset after it's expected useful life ends, sometimes this will be the value of the asset as spare parts.

Lifespan indicates for how many periods the asset is useful (it's useful life), and must be depreciated. Accounting standards vary on what lifespan is appropriate for different classes of assets, such as durable and non-durable goods.

Period indicates the number of units of time between decremental calculations of the depreciation. If lifespan is measured in years, then the value specified for the period must also be in years.

Weight allows you to fine tune the calculation method. By default, the double declining balance method uses a factor of 2.

For some assets, alternative calculation methods such as the DB() function may be more appropriate. Your accountant can advise you for which assets the double declining balance method is an acceptable means of calculating depreciation, and what factors can be used when depreciating certain assets such as high-tech equipment or motor vehicles which exhibit accelerated depreciation in their first years of use.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the interest rate yielded by a security investment redeemable at a future date, such as a zero coupon bond.

INTRATE(settlementDate, maturityDate, amount, redemptionValue, basis)

SettlementDate is the date on which a security purchase is settled with the buyer taking possession of the security. Market conventions for settlement of trades vary by security and exchange. The settlement date may be substantially later than a security's issue date when it is traded on the secondary market.

MaturityDate is the date when the security can be redeemed. It ceases to accrue any further value after this date. The maturity date must be later than the settlementDate or an error value is returned.

Amount is the purchase price of the security. For positive interest, this amount will be smaller than the redemptionValue because it discounts interest that will be accrued over the time period the security is held.

RedemptionValue is the price a security holder may redeem their security for at the maturityDate. In some cases, this may be called the face value of the security.

Basis describes what accounting convention to use when counting days per calendar year, and days on which interest can accrue. If omitted, a basis consistent with United States National Association of Security Dealers (NASD) of 30/360 will be employed.

BasisDay counting method
030/360 (US NASD)
1Actual/actual
2Actual/360
3Actual/365
430/360 (European)

Date values should be passed to this function using either the DATE() function or UltraCalcValue objects containing .NET DateTime values. Date values represented as text may not be interpreted as you had intended.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the .NET DateTime of the time represented by date formated in a string

DATEVALUE(date_text)

Date_text is text that represents a date in a .NET DateTime format

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the .NET DateTime ticks number that represents a particular date

DATE(year,month,day)

Year is the number representing the year

Month is a number representing the month of the year

Day is a number representing the day of the month

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the number of days between two dates based on a 360-day year (twelve 30-day months), which is used in some accounting calculations.

DAYS360(start_date,end_date,method)

Start_date and end_date are the two dates between which you want to know the number of days.

If start_date occurs after end_date, DAYS360 returns a negative number. Dates should be entered by using the DATE function, or as results of other formulas or functions. For example, use DATE(2008,5,23) for the 23rd day of May, 2008. Problems can occur if dates are entered as text.

Method is a logical value that specifies whether to use the U.S. or European method in the calculation:

FALSE or omitted U.S. (NASD) method. If the starting date is the 31st of a month, it becomes equal to the 30th of the same month. If the ending date is the 31st of a month and the starting date is earlier than the 30th of a month, the ending date becomes equal to the 1st of the next month; otherwise the ending date becomes equal to the 30th of the same month.

TRUE European method. Starting dates and ending dates that occur on the 31st of a month become equal to the 30th of the same month.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the day of a date value Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the month of a date value Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the year of a date value Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the hour of a time value Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the minute of a time value Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the second of a time value Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a .NET DateTime ticks value of the current day and time Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the .Net DateTime of the time represented by time formated in a string

TIMEVALUE(time_text)

Time_text is text that represents a date in the .NET DateTime format

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the .NET DateTime ticks value that represents a particular time

TIME(hour,minute,second)

Hour is a number representing the time's hour

Minute is a number representing the time's minute

Second is a number representing the time's second

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the median value of a specified list of numeric values.

MEDIAN(Value1, value2, ..., valueN)

Value1, value2, ..., valueN are any number of numeric values or references to numeric values for which you want the median value found. If any argument is an error value, or there are no numeric values within the series of arguments, then MEDIAN() will return an error value.

The median is the middle value of the sorted list of numeric values (you do not need to sort Value1, value2, ..., valueN prior to passing them to the MEDIAN() function). When the list contains an odd number of values, the median will be the value at position CEIL(N/2). For example, the median of the 5-value list 0, 20, 30, 50, 80, is the value in the third position: 30. When the list contains an even number of values, the median will be the average of the two values in the middle. For example, the median of the 4-value list 7, 20, 30, 45, is the average of the two middle elements (20 and 30): 25. Note that the value of the MEDIAN() varies most from the arithmetic mean of the sorted list when the distribution of values tends to favor one side or the other of that arithemtic mean. For example, the arithmetic mean of the 5-value list 1, 2, 3, 21, 43 is 14 but it's median value is 3.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the estimated variance for a specified sampling of numeric values.

VAR(Value1, value2, ..., valueN)

Value1, value2, ..., valueN are any number of numeric values or references to numeric values you provide to specify a sampling of your larger data population. If any argument contains an error value or there arte no numeric values in the sampling, the VAR() function evaluates to the first error value it encounters.

Variance is a measure of statistical variability, and is used in statistical studies based on small samplings from much larger data populations to draw inferences about the variability of those data populations.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Estimates the variance based on a sample. Number stack to evaluate Number of arguments on the stack to use A boolean indicating if the value was calculated Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates an approximate standard deviation of a specified sampling of numeric values.

STDEV(Value1, value2, ..., valueN)

Value1, value2, ..., valueN are any number of numeric values or references to numeric values that you've given to provide a sample space of your data set. If any value contains an error, then the function evaluates to the first error encountered. An error value is returned if the sample space contains no numeric values.

The standard deviation is used in statistical studies to make inferences about a larger population of data based on sampling only a subset. For well chosen samplings, a small standard deviation indicates most data points tend to cluster within a narrow range of values. A larger standard deviations indicates greater variability in the data points, and that there is a higher likelihood for values to occur farther away and/or more frequently away from the expected norm.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the underlying UltraCalc data type for the specified value.

TYPE( value)

Value is an UltraCalcValue object or the result of evaluating an UltraCalc expression.

UltraCalc data type:TYPE function returns:
Number1
Text2
Boolean4
Error16

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function When an error value is returned, the ERRORTYPE function returns a numeric value corresponding to the UltraCalcErrorCode enumeration.

ERRORTYPE(error_value)

Error_value is an UltraCalc error value resulting from the unsuccessful evaluation of an expression.

The ERRORTYPE function returns an error value of #N/A (Not Applicable) if you pass it an UltraCalc value that was not an error value.

Error_value ERRORTYPE returns
#NULL!1
#DIV/0!2
#VALUE!3
#REF!4
#NAME?5
#NUM!6
#N/A!7

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns #N/A!, the error value representing a not applicable result.

NA()

The NA function always returns the same constant error value.

You might use this function when you wanted an IF function or other complex UltraCalc expression to return the #N/A! error value.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value is blank.

ISBLANK(value)

Value can be any constant, reference or the result of evaluating an UltraCalc expression.

The definition of what constitutes "blank" is anything that causes the IsNull method of the UltraCalcValue object containing the argument, value, to return TRUE. This may vary for different kinds of UltraCalcValue object.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value is any error value, except #N/A!

ISERR(value)

Value is an UltraCalcValue object (perhaps the result of evaluating an UltraCalc expression) thought to be an error value. The ISERR function will return FALSE when value is not an error value, or it is an error but the error value was not applicable.

This is a weaker variation of the more stringent ISERROR function.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value is any error value without exception.

ISERROR(value)

Value is an UltraCalcValue object (perhaps the result of evaluating an UltraCalc expression) thought to be an error value. The ISERROR function will return FALSE only when value is not an error value.

A more relaxed variation of this function is the ISERR function, which returns TRUE when an error value is not applicable. The ISERROR function treats this case as being an error. If you are using certain UltraCalc functions then sometimes error values of #N/A! should be treated by your application as non-errors and you should choose ISERR instead of ISERROR.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns TRUE if the specified value refers to a two-state logic or Boolean value.

ISLOGICAL(value)

Value is an UltraCalcValue object, or the result of evaluating an UltraCalc expression, which is thought to be a boolean value (TRUE or FALSE.) Boolean values are named in honor of George Boole, whose development of Boolean algebra governs the special characteristics of logical functions upon these two values.

Depending on the kind of value, it may not be convertible into a boolean value and therefore the ISLOGICAL function returns FALSE. The ISLOGICAL function only furnishes information about the compatibility of a value with the boolean-typed values evaluated by UltraCalc.

The ISLOGICAL function does not perform deductive reasoning. A return value of TRUE should not be interpreted as proof any value or UltraCalc expression passed to the ISLOGICAL function represents a logical outcome.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if an error value is #N/A (not applicable.)

ISNA(value)

Value is an error value thought to be the error value returned when an error has happened, but the error code was not applicable.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns TRUE if the specified value refers to any not-text value.

ISNONTEXT( value)

Value is an UltraCalcValue object or the result of an UltraCalc expression evaluation that you want to test to determine whether it is a text value (such as a .NET String object) or a non-text value.

ISTEXT function
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value refers to a numeric value.

ISNUMBER( value)

Value is an UltraCalcValue or the result of evaluating an UltraCalc expression that you want to test to determine whether it is a number or not. A numeric value can be an integer, floating-point or decimal number.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value is an UltraCalc reference.

ISREF( reference)

Reference is an UltraCalcValue object that contains a reference to some application-specific control, field, or piece of information. You can think of it as an address which the UltraCalc engine uses to look-up a value in your application when one is needed to evaluate an expression.

The ISREF function returns TRUE when the specified UltraCalcValue is a reference. Since it's value is defined by the contents at another referenced location, it's possible for this UltraCalcValue object to change in value based on changes in your application (outside of the UltraCalc engine.) Proper implementation of the IUltraCalcReference interface and NotifyValueChange methods will ensure the UltraCalc engine is made aware of any changes in a referenced value, and that all references depending on this value are refreshed.

Conversely, the ISREF function will return FALSE should the UltraCalcValue you supply represent a constant value or the temporary result of evaluating an UltraCalc expression (a constant value sitting at the top of the UltraCalc engine's number stack.)

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value refers to a text (or string) value.

ISTEXT(value)

Value is an UltraCalcValue object or the result of evaluating an UltraCalc expression that you want to test to determine whether it is of a text (e.g., string) value or a non-text value (which could be a numeric, boolean, or error value.)

ISNONTEXT function
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value is an even number.

ISEVEN(value)

Value is a number thought to be even (divisible by the integer 2.) A value that is not an integer will first be converted to an integer using the FLOOR function before evaluation.

ISODD function
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns TRUE if the specified value is an odd number.

ISODD(value)

Value is a number thought to be odd (not divisible by the integer 2.) A value that is not an integer will first be converted to an integer using the FLOOR function before evaluation.

ISEVEN function
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates an internal rate of return for a given series of cash flows represented by either positive (incoming) or negative (outgoing) numeric values.

IRR(value_reference, estimate)

Value_reference must be a column or range reference of numeric values representing cash outflows (payments) as negative numeric values, and cash inflows (income) as positive numeric values. Each cash flow must occur with a regular period. If payments occur at irregular intervals, then you must represent the cash flow periods as taking place on a period common to all cash flows, and at intervals without a cash flow specify a zero value. For example, if you finance the purchase of a television by taking a $300 loan with monthly payments of $110, but your payments do not start for three months, your series of cash flows would be monthly but would show three zero values for the months without payments (+300, 0, 0, 0, -110, -110, -110).

Estimate is an approximation close to what you expect the resulting internal rate of return to be. This function employs an iterative algorithm starting with this estimate and then repeatedly converging on a result that has a diminishing margin of error. If you do not provide an estimate then this function uses 10 percent as it's starting point.

If after twenty iterations the margin of error has not closed to within 1/1000 basis point then a #NUM error value will be returned.

The IRR() function has applications where you may be given a series of cash flows without an interest rate, such as in the retail financing example above, and wish to calculate what it's effective rate of interest would be. The internal rate is based on the period between cash flows, therefore when calculating payments that are not annual, you must annualize the internal rate.

NPV()
Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Calculates the per-period interest rate for a series of cash flows (an annuity).

RATE(nPeriods, amount, presentValue, paymentDue, futureValue, estimate)

NPeriods are the total number of cash flows, whether a payment (negative amount) or a receipt (positive amount) occuring periodically with a fixed time period between each cash flow.

Amount is the amount of cash paid (negative) or received (positive). It must be held constant over the course of the annuity.

PresentValue is the value today of the series of future payments. Payments made in the future are discounted by the interest rate being calculated, because it is assumed that at that interest rate a smaller sum could be invested today and would grow to the amount at a future time when that payment became due.

PaymentDue indicates whether cash flows occur at the beginning of each period (1) or at the end of each period (0). If not specified, the payments at the end of each period is assumed.

FutureValue is the accumulated balance attained after nPeriods payments have been made and accrued interest at the calculated rate. If left unspecified, the default future value is assumed to be zero (this represents reaching zero loan liability, when a loan has been fully repaid).

Estimate is an approximation of the interest rate used to start the calculation (which works by iteratively refining the estimate until it converges on the correct value). When no estimate is given a default of 10% is assumed.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a boolean indicating if the value is null (Nothing in VB). Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a null value (Nothing in VB) Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a boolean indicating if the value is DBNull. Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns DBNull Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a value resulting from adding a specified interval to a DateTime. Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a value specifying the number of time intervals between two DateTime values. Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the character specified by the code number from the character set for your computer. Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gives you the numeric code corresponding the the first character in a specific text string.

CODE(Text)

Text is a text string of at least one character in length. This function returns the numeric code of the first character in Text. These code values correspond to those used by your machine to encode the text characters in a string (e.g., Unicode).

If Text is an empty string of zero length, then this function returns the code zero.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Formats a numeric value rounded to a specified number of decimal places and with optional thousands separators.

FIXED(value, decimal_places, exclude_thousands_separators)

Value is the numeric value to be rounded and formatted as text.

Decimal_places indicate how many places to the right of the decimal point the value should be rounded. If omitted, rounding occurs to two decimal places.

Exclude_thousands_separators is a boolean value (TRUE or FALSE) indicating whether commas should appear in the formatted text value. By default the formatted text includes commas as thousands separators.

This function may not return text values consistent with your locale's formatting of numbers because it operates using culture invariant settings (these include commas as thousands separators and decimal points) to facilitate unambiguously parsing the text values it formats into numeric values for subsequent calculations. Applications may instead choose to format numeric values after UltraCalc has finished processing them, but before presenting them to their end user.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Gets the host's current date.

No arguments are passed to this function.

The date returned for TODAY() is based on the local time of the host running UltraCalc. In some distributed applications, such as those built for the Web, this may be different from today's date at the client.

The date/time value returned is always adjusted to Midnight (00:00).

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the angle (measured in radians) having the specified value of it's hyperbolic sine function.

ASINH(value)

Value is the hyperbolic sine of some angle (measured in radians) that you want to find. As you might expect, the values of the hyperbolic sine function (see the SINH function) increase at a hyperbolic rate, but one consequence is that these ever larger changes in the hyperbolic sine will correspond to ever smaller changes in the angle. This relationship is intrinsic to many of the mathematical and engineering applications of the inverse hyperbolic sine function, such as when resistance or strain builds up on a body increasingly as it is rotated (hysteresis).

Evaluates the function, Arcsinh, against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Calculates the hyperbolic tangent of a specified angle measured in radians.

TANH(value)

Value is an angle measured in radians for which you want to calculate the hyperbolic tangent. If your angle is measured in degrees, multiply it by PI()/180 to convert into radians. The hyperbolic tangent has a range from -1 to 1.

Evaluates the function, Arctanh, against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the angle (measured in radians) having the specified value of it's hyperbolic cosine function.

ACOSH(value)

Value is the hyperbolic cosine of some angle (measured in radians) that you want to find. As you might expect, the values of the hyperbolic cosine function (see the COSH function) increase at a hyperbolic rate, but one consequence is that these ever larger changes in the hyperbolic cosine will correspond to ever smaller changes in the angle. This relationship is intrinsic to many of the mathematical and engineering applications of the inverse hyperbolic cosine function, such as when resistance or strain builds up on a body increasingly as it is rotated (hysteresis).

Evaluates the function, Arccosh, against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns a date that is the specified number of months before or after the start date.

DATE(date, numberOfMonths)
Date is the starting date
NumberOfMonths is a number of months to shift the date. A positive number means a date after the startdate. A negative number indicates a date prior to the start date.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a date that is at the end of the month which is the specified number of months before or after the start date.

EOMONTH(date, numberOfMonths)
Date is the starting date
NumberOfMonths is a number of months to shift the date. A positive number means a date after the startdate. A negative number indicates a date prior to the start date.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a number representing the day of the week of the specified date.

WEEKDAY(date, returnType)
Date is a date.
ReturnType determines which numbering scheme is used for the days of the week. 1 (default) = Sunday (1) through Saturday (7) 2 = Monday (1) through Sunday (7) 3 = Monday (0) through Sunday (6)

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the total number of whole work days between the specified dates, excluding any specified holidays.

NETWORKDAYS(startDate, endDate [, holiday1, holiday2, ..., holidayN])
StartDate is the date from which to start.
EndDate is the date at which to end.
Holiday1, holiday2, ..., holidayN is any number of dates or range references containing dates that are to be considered non-working days.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the number of the week into which the specified date falls.

WEEKNUM(date, returnType)
Date is a date.
ReturnType determines which day begins the week. 1 (default) = Sunday is the first day of the week. 2 = Monday is the first day of the week.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a work day the specified number of days from the specified date, excluding any specified holidays.

WORKDAY(startDate, days [, holiday1, holiday2, ..., holidayN])
StartDate is the date from which to start.
Days is the number of work days to offset from the start date.
Holiday1, holiday2, ..., holidayN is any number of dates or range references containing dates that are to be considered non-working days.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a string representing the specified decimal value in the specified base number scheme.

Dec2X(number, places)
Number is the decimal value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) Minimum number of arguments required for the function Maximum number of arguments required for the function Returns a string representing the specified decimal value as a binary number.

Dec2Bin(number, places)
Number is the decimal value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) Returns a string representing the specified decimal value as a hexadecimal number.

Dec2Hex(number, places)
Number is the decimal value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert to (2 = hexadecimal, 8 = octal, 16 = Hexadecimal, etc.) Returns a string representing the specified decimal value as a octal number.

Dec2Oct(number, places)
Number is the decimal value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert to (2 = octal, 8 = octal, 16 = Hexadecimal, etc.) Returns the decimal value of a string representation of a number in a non-decimal number system.

X2Dec(number)
Number is a string represeting a number in a non-decimal number system.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the number string. Minimum number of arguments required for the function Maximum number of arguments required for the function Returns the decimal value of a string representation of a number in a binary system.

Bin2Dec(number)
Number is a string represeting a binary number.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Returns the decimal value of a string representation of a number in a hexadecimal system.

Hex2Dec(number)
Number is a string represeting a hexadecimal number.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert to (2 = hexadecimal, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Returns the decimal value of a string representation of a number in a octal system.

Oct2Dec(number)
Number is a string represeting a octal number.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The number system to convert to (2 = octal, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Converts a string representing a number in a non-decimal number system to a number in another non-decimal number system.

XBase2XBase(number, places)
Number is the value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. The minimum value that the number argument to this function will allow in the original number system. The maximum value that the number argument to this function will allow in the original number system. The minimum value that the number argument to this function will allow in the new number system. The maximum value that the number argument to this function will allow in the new number system. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the number string. Minimum number of arguments required for the function Maximum number of arguments required for the function Converts a string representing a binary number to a string representing the same number in the octal number system.

Bin2Oct(number, places)
Number is the value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The minimum value that the number argument to this function will allow in the new number system. The maximum value that the number argument to this function will allow in the new number system. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Converts a string representing a binary number to a string representing the same number in the hexadecimal number system.

Bin2Hex(number, places)
Number is the value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The minimum value that the number argument to this function will allow in the new number system. The maximum value that the number argument to this function will allow in the new number system. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Converts a string representing an octal number to a string representing the same number in the binary number system.

Oct2Bin(number, places)
Number is the value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The minimum value that the number argument to this function will allow in the new number system. The maximum value that the number argument to this function will allow in the new number system. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Converts a string representing an octal number to a string representing the same number in the hexadecimal number system.

Oct2Hex(number, places)
Number is the value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The minimum value that the number argument to this function will allow in the new number system. The maximum value that the number argument to this function will allow in the new number system. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Converts a string representing an hexadecimal number to a string representing the same number in the binary number system.

Hex2Bin(number, places)
Number is the value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The minimum value that the number argument to this function will allow in the new number system. The maximum value that the number argument to this function will allow in the new number system. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Converts a string representing an hexadecimal number to a string representing the same number in the octal number system.

Hex2Oct(number, places)
Number is the value to be converted.
Places is the number of characters to use in representing the value. If places is not specified, the mimumum number of characters neccessary to represent the value will be used. Places allows you to specify leading zeros.

Function name used to reference the function in a formula The minimum value that the number argument to this function will allow. The maximum value that the number argument to this function will allow. The minimum value that the number argument to this function will allow in the new number system. The maximum value that the number argument to this function will allow in the new number system. The number system to convert from (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The number system to convert to (2 = binary, 8 = octal, 16 = Hexadecimal, etc.) The maximum length of the 'number' string. Converts a value from one system of measurement to another. For example, meters to inches or hours to seconds.

CONVERT(number, fromUnit, toUnit)
Number is the value to convert.
FromUnit is the unit in which the number is given.
ToUnit is the units to convert to.
Weight and mass units: "g" = gram "sg" = slug "lbm" = pound mass (avoirdupois) "u" = U (atomic mass unit) "ozm" = Ounce mass (avoirdupois)
Distance units: "m" = Meter "mi" = Statute mile "Nmi" = Nautical mile "in" = Inch "ft" = Foot "yd" = Yard "ang" = Angstrom "Pica" = Pica (1/72 in.)
Time units: "yr" = Year "day" = Day "hr" = Hour "mn" = Minute "sec" = Second
Pressure units "Pa" (or "p") = Pascal "atm" (or "at") = Atmosphere "mmHg" = mm of Mercury
Force units "N" = Newton "dyn" (or "dy") = Dyne "lbf" = Pound force
Energy units: "J" = Joule "e" = Erg "c" = Thermodynamic calorie "cal" = IT calorie "eV" (or "ev") = Electron volt "HPh" (or "hh") = Horsepower-hour "Wh" (or "wh") = Watt-hour "flb" = Foot-pound "BTU" (or "btu") = BTU
Power units: "HP" (or "h") = Horsepower "W" (or "w") = Watt
Magentism units: "T" = Tesla "ga" = Gauss
Temperature units: "C" (or "cel") = Degree Celsius "F" (or "fah") = Degree Fahrenheit "K" (or "kel") = Kelvin
Liquid measure units: "tsp" = Teaspoon "tbs" = Tablespoon "oz" = Fluid ounce "cup" = Cup "pt" (or "us_pt") = U.S. pint "uk_pt" = U.K. pint "qt" = Quart "gal" = Gallon "l" (or "lt") = Liter
Any metric ToUnit or FromUnit may be prefixed with one of the following: exa ("E") = 1E+18 peta ("P") = 1E+15 tera ("T") = 1E+12 giga ("G") = 1E+09 mega ("M") = 1E+06 kilo ("k") = 1E+03 hecto ("h") = 1E+02 dekao ("e") = 1E+01 deci ("d") = 1E-01 centi ("c") = 1E-02 milli ("m") = 1E-03 micro ("u") = 1E-06 nano ("n") = 1E-09 pico ("p") = 1E-12 femto ("f") = 1E-15 atto ("a") = 1E-18

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Compares two numbers and returns 1 if they are equal or 0 if they are not.

DELTA(number1, [number2])
Number1 is a number.
Number2 is a number. If Number2 is not specified, Number1 will be compared to 0.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Compares two numbers and returns 1 the first number is greater than or equal to the second or returns 0 if not.

GESTEP(number, [step])
Number is a number.
Step is a number. If step is not specified, Number will be compared to 0.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns a complex number represented as a string in the format "x + yi" or "x + yj" by comining a real and imaginary number.

COMPLEX(realNumber, imaginaryNumber, [suffix])
RealNumber is the real coefficient of the complex number.
ImaginaryNumber is the imaginary coefficient of the number.
Suffix specifies the suffix to use. The acceptable values are "i" or "j". If omitted, "i" is used. Note that the suffix is case-sensitive; upper case "I" and "J" are not allowed and will result in a #VALUE error.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the absolute value of a complex number.

IMABS(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the imaginary coefficient of a complex number.

IMAGINARY(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the argument theta, and angle expressed in radians.

IMARGUMENT(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the conjugate of a complex number.

IMCONJUGATE(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the cosine of a complex number.

IMCOS(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the quotient of two complex numbers.

IMDIV(dividend, divisor)
Dividend is a complex number in the format: "x + yi" or "x + yj".
Divisor is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the exponential of a complex number.

IMEXP(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the natural logarithm of a complex number.

IMLN(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the real coefficient of a complex number.

IMREAL(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the difference between two complex numbers.

IMSUB(complexNumber1, complexNumber2)
ComplexNumber1 is a complex number in the format: "x + yi" or "x + yj" from which ComplexNumber2 will be subtracted.
ComplexNumber2 is a complex number in the format: "x + yi" or "x + yj" which will be subtracted from ComplexNumber1.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the product of 1 to n complex numbers.

IMPRODUCT(complexNumber1 [, complexNumber2, complexNumber3, ..., complexNumberN])
ComplexNumber1, ComplexNumber2, ..., ComplexNumberN is any number of complex numbers in the format: "x + yi" or "x + yj" which will be multiplied together.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the sum of 1 to n complex numbers.

IMSUM(complexNumber1 [, complexNumber2, complexNumber3, ..., complexNumberN])
ComplexNumber1, ComplexNumber2, ..., ComplexNumberN is any number of complex numbers in the format: "x + yi" or "x + yj" which will be added together.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the base-10 logarithm of a complex number.

IMLOG10(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the base-2 logarithm of a complex number.

IMLOG2(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the sine of a complex number.

IMSIN(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the square root of a complex number.

IMSQRT(complexNumber)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the complex number raised to the specified power.

IMPOWER(complexNumber, power)
ComplexNumber is a complex number in the format: "x + yi" or "x + yj".
Power is the power to which ComplexNumber will be raised.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Converts a dollary amount expressed as a decimal into a dollar amount expressed as a fraction.

DollarFr(decimalDollarAmount, Fraction)
DecimalDollarAmount is the dollar amount expressed as a decimal.
Fraction is the value used as the denominator of the fraction. If this value is not an integer, it will be truncated.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Converts a dollary amount expressed as a decimal into a dollar amount expressed as a fraction.

DollarFr(decimalDollarAmount, Fraction)
DecimalDollarAmount is the dollar amount expressed as a decimal.
Fraction is the value used as the denominator of the fraction. If this value is not an integer, it will be truncated.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns information about the current operating environment.

INFO(type)
Type is a string indicating the type of information to return.
"directory" = The full path to the current folder. "osversion" = The currently operating system version as a string. "system" = The current operating system. This will always return "pcdos" which indicates Microsoft Windows. The corresponding function in Excel can also return "mac" for Macintosh, but since NetAdvantage is only supported in Windows, this function will always return "pcdos".
The following are supported by Microsoft Excel, but have no correlation in UltraCalcManager: "numfile", "origin", "recalc", "release".
The following are supported in older versions of Excel, but not Office2007, and have no correlation in UltraCalcManager: "memavail", "memused", "totmem".

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Converts a value to a number.

N(value)
Value is the value to be converted to a number. The following are acceptable values:
A number - returns the number. A date - returns the date. True - returns 1. False - returns 0. An error value - returns the error value. Any other value - returns 0.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the factorial of a number.

FACT(number)
Number is a positive number for which the factorial will be calculated.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the double factorial of a number.

FACTDOUBLE(number)
Number is a positive number for which the double factorial will be calculated.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the number of possible combinations given a set of items and a number of chosen items from that set.

Combin(number, numberChosen)
Number is the number of items.
NumberChosen is the number of items chosen in each combination.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Converts radians to degrees.

DEGREES(radians)
Radians is a value in radians which will be converted to degrees.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Converts degrees to radians.

RADIANS(degrees)
Degrees is a value in degrees which will be converted to radians.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the greatest common divisor of integer values.

GCD(number1, [number2, number3, ..., numberN])
Number1, Number2, ..., NumberN is any number of integers.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the least common multiple of integer values.

LCM(number1, [number2, number3, ..., numberN])
Number1, Number2, ..., NumberN is any number of integers.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the multinomial of a set of numbers.

MULTINOMIAL(number1, [number2, number3, ..., numberN])
Number1, Number2, ..., NumberN is any number of numbers.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Rounds a number to the nearest multiple of another number.

MRound(number, multiple)
Number is a number to be rounded.
Multiple is a number indicating the multiple to which to round.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Generates a pseudorandom integer between two specified numbers.

RANDBETWEEN(bottom, top)
Bottom is the minumum value that will be returned.
Top is the maximum value that will be returned.

Evaluates the function against the arguments on the number stack Formula number stack containing function arguments Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula Minimum number of arguments required for the function Maximum number of arguments required for the function Converts a number into a roman number as a string.

ROMAN(number, form)
Number is the number to convert to roman numerals.
Form is a number or boolean value indicating whether to use classic roman numerals or a more concise version.
0 = (Default) Classic. (499 = "CDXCIX") 1 = More concise. (499 = "LDVLIV") 2 = More concise. (499 = "XDIX") 3 = More concise. (499 = "VDIV") 4 = Simplified. (499 = "ID") TRUE = Classic. FALSE = Simplified.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Rounds a number to down to the specified number of digits.

ROUNDDOWN(number, digits)
Number is a number to be rounded down.
Digits indicates the number of decimal places to round to. Positive numbers indicates places after the decimal point, negative numbers indicate places before the decimal point.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Rounds a number to up to the specified number of digits.

ROUNDUP(number, digits)
Number is a number to be rounded up.
Digits indicates the number of decimal places to round to. Positive numbers indicates places after the decimal point, negative numbers indicate places before the decimal point.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the sum of a power series.

SERIESSUM(inputValue, initialPower, step, coefficient1 [, coefficient2, coefficient3, ..., coefficientN])
InputValue is the input value to the power series.
InitialPower is the initial power to which X will be raised.
Step is the step which will be used to increase N for each term in the series.
Coefficient1, Coefficient2, ..., CoefficientN is a set of coefficients by which each successive power of X is multiplied.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the sign of a number. (-1, 0, or 1)

SIGN(number)
The number whose sign wil be returned.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Returns the square root of the specified number times Pi.

SQRTPI(number)
The number which will be multiplied by Pi.

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. The CHOOSE function returns one of the values provided in its arguments based on the number in the first argument.

CHOOSE(index_num, value1, [value2, ..., valueN])

Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Evaluates the function against the arguments on the number stack. Formula number stack containing function arguments. Denotes the number of function arguments pushed onto the number stack. An UltraCalcValue represents the result of the function evaluation. Function name used to reference the function in a formula. Minimum number of arguments required for the function. Maximum number of arguments required for the function. Class used to manage the stock and user defined instances Initializes a new Adds the specified function to the function list. Function to add A boolean indicating if the function was added. Adds a library of user defined functions contained in the given assembly. Loaded assembly containing a library of user defined functions

Once the assembly is loaded, any type that derives from UltraCalcFunction will be registered with the function factory

True if the function library was successfully loaded and its functions registered, else false
Returns the for the specified operator enumeration Operator whose function should be returned. The associated with the specified enumeration. Returns the function with the specified name Stack of instances used to evaluate formulas.

The number stack is used by the class to evaluate formulas. When formulas are compiled, the formula tokens are placed in a collection in post-fix, or Reverse Polish Notation (RPN) format. RPN format arranges the formula token list so each sub-expressions's terms are placed before their operator, and sub-expressions are ordered to enforce correct operator precedence. This format allows the formula evaluate method to loop through the formula token collection front to back pushing an operator's terms onto the number stack until an operator is reached. Each time an operator is reached, it's subexpression is computed and resulting value pushed onto the number stack. Once the end of the end of the formula collection is reached, the formulas calculated value is at the top of the number stack.

Initializes a new Push a value onto number stack. Value to push onto the number stack Pop value off top of the number stack. UltraCalcValue that was at the top of the number stack. Return value off top of the number stack. UltraCalcValue that is at the top of the number stack. Remove all values from number stack. Clear elements off top of number stack until it contains given number of elements Denotes the desired stack level Return the number of values on number stack Number of stack values Manages a collection of objects Initializes a new Initializes a new from another reference collection The original collection from which to copy. Adds the contents of the specified into this instances collection. Collection whose contents should be merged with this list. Add an IUltraCalcReference> elements to the collection Element to add to collection Ordinal Position within collection where element was inserted Insert an IUltraCalcReference> elements to the collection Ordinal postion to insert reference Reference element to be inserted into collecction Remove IUltraCalcReference element from collection Element to be removed from collection Remove element at given postion from collection Ordinal index denoting element to remove Return ordinal index of given element Element whose position is desired Ordinal index of reference Copys the collection to an array. Array used for the desitnation of the copy. The zero-based index in array at which copying begins. Returns the collection enumerator. Collection enumerator. Indexer method that returns a IUltraCalcReference by position Denotes whether the collection is thread-safe. Returns a number of elements in the collection. Returns an object that can be used to synchronize access to the collection. Constructor. Adds the item to the set. If the item already exists in the set, does nothing. Removes the specified item from the set. If the item doesn't exist in the set does nothing. Returns true if the specified item exists in this set. Adds items from the specified set to this set. Calculates the union of the specified sets. Calculates the intersection of the specified sets. Returns true of the specified set and this set intersect. Returns true if this set is a subset of the specified set. Clears the set. Returns a new enumerator that enumerates all the elements of this set. Copies all the elements of this set to the spcified array starting at the specified index in the array. Returns an array containing all the elements of this set. Returns the number of items contained in the set. Returns true if the set is empty, that is it has no elements. Indicates whether this data structure is synchronized. Returns the object that can be used to synchronize the access to this data structure. Enumeration of error codes assigned to UltraCalcErrorValue Occurs when an invalid or disconnected reference is encountered while evaluating a formula Occurs when the wrong type of argument or operand is used in a formula Occurs when a number is divided by zero (0) Occurs when @NA is entered into a formula Occurs with invalid numeric values in a formula or function Occurs when a circularity formula is used when circularities are not allowed. Occurs when there is an intersection of two references that do not contain any common cells. Occurs when text in a formula is not recognized. Exception containing an UltraCalcErrorValue Generic UltraCalc Exception. All UltraCalc Exceptions derive from this so that a developer can easily turn off our exceptions during debugging. Initializes a new Initializes a new with the specified error message Error message Initializes a new with the specified error message and exception instance. Error message The exception that caused this exception Initializes a new using the specified The UltraCalcErrorValue that has generated the exception. Returns the string representation of the underlying error value. The string representation of the underlying error value. Get the UltraCalcErrorValue associated with the exception Provides methods and properties used to define and manage an UltraCalc error value Initializes a new with the specified error code. UltraCalcErrorCode value to assign this instance Initializes a new with the specified error code and error message UltraCalcErrorCode value Localized Message indicating reason for error Initializes a new with the specified error code, message and error value. UltraCalcErrorCode value Localized Message indicating reason for error Value associated with error Return a string message that denotes reason for error String containing error message Raise an UltraCalcErrorException exception containing this class's error information Gets the error code for this class instance Gets error message for this class instance. Note that when setting this property the message is assumed to be localized. Gets the error object for this class instance Implementation of IUltraCalcReference interface that denotes a reference error Reference string constructor Absolute name of reference Localized Error message Get reference error message Provides methods that manage a composite data type representing an UltraCalc value.

An instance of this class may contain one of several base data types including doubles, singles, integers, booleans, strings, and error values.

The class implements the IConvertible interface providing methods to perform conversions between the basic data types.

Additionally the class provides methods to perform basic arithetic operations and comparisons between UltraCalcValue objects.

Storage for the underlying data type Initializes a new Object to be represented by the UltraCalcValue Default constructor Convert this class instance's value to an int A signed 32-bit integer value containing the equivalent value of this instance Convert this class instance's value to an int An IFormatProvider interface implementation that supplies culture-specific formatting information A signed 32-bit integer value containing the equivalent value of this instance

If there is no meaningful conversion to an integer this method will throw an InvalidCastException

Set this class's instance to an UltraCalcErrorValue based on the given exception Exception whose value is used to set this instance's error value Convert this instance's value to a . If this instance contains a object that implements the interface, this method returns the object instance, else a UltraCalcReferenceError is returned

The instance value's underlying data type must be reference to return a reference, else a UltraCalcReferenceError is returned.

If there is no meaningful conversion to a reference, this method will throw an InvalidCastException

Convert this instance's value to an A containing the equivalent error code to the value of this instance

This method returns an whose error code is set this instance's error code.

If there this instance does not contain an error, a containing a default value is returned

Returns a string representation of this instance's value. String representation of instance's value Indicates if the value of the specified is equivalent to the First to compare Second to compare True if the values are the same; otherwise false is returned. Compares current instance with the passed in instance. Returns -1, 1 or 0 depending on whether the current instance is less than, greater than or equal to the passed in instance respectively. The object that this instance should be compared against. -1, 1 or 0 depending on whether the current instance is less than, greater than or equal to the passed in instance respectively. Compares x and y instances and returns -1 if x is less than y, 1 if x is greater than y and 0 if x and y are equal. The first value to compare. The value to compare with the first value. -1, 1 or 0 depending on whether the current instance is less than, greater than or equal to the passed in instance respectively. Indicates if the specified has the save as this instance. UltraCalcValue to compare against True if the of both instances are equal; otherwise false. Gets the resolved value of the reference. This method will walk down the reference chain recursively to get the resolved value of the reference that is not just another reference. Convert this class instance's value to a ulong data type An IFormatProvider interface implementation that supplies culture-specific formatting information An 64-bit unsigned integer equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a SByte data type An IFormatProvider interface implementation that supplies culture-specific formatting information An 8-bit signed integer equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a double data type Convert this class instance's value to a double data type An IFormatProvider interface implementation that supplies culture-specific formatting information A double-precision floating-point equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Converts the to a double data type The resulting double value. If the return value is false, the result is 0. True if the value was successfully converted to a double; otherwise false. Convert this class instance's value to a DateTime data type Convert this class instance's value to a DateTime data type An IFormatProvider interface implementation that supplies culture-specific formatting information A DateTime equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a float data type Convert this class instance's value to a float data type An IFormatProvider interface implementation that supplies culture-specific formatting information A single-precision floating-point equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a boolean data type A boolean floating-point equivalent to the value of this instance Convert this class instance's value to a boolean data type An IFormatProvider interface implementation that supplies culture-specific formatting information A boolean floating-point equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a int data type A 32-bit signed integer floating-point equivalent to the value of this instance Convert this class instance's value to a int data type An IFormatProvider interface implementation that supplies culture-specific formatting information A 32-bit signed integer floating-point equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a ushort data type An IFormatProvider interface implementation that supplies culture-specific formatting information A 16-bit unsigned integer floating-point equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a short data type Convert this class instance's value to a short data type An IFormatProvider interface implementation that supplies culture-specific formatting information A 16-bit signed integer floating-point equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a string instance data type An IFormatProvider interface implementation that supplies culture-specific formatting information A string instance equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a byte data type Convert this class instance's value to a byte data type An IFormatProvider interface implementation that supplies culture-specific formatting information A 8-bit unsigned integer equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a char data type A Unicode character equivalent to the value of this instance Convert this class instance's value to a char type An IFormatProvider interface implementation that supplies culture-specific formatting information A Unicode character equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a long data type Convert this class instance's value to a long data type An IFormatProvider interface implementation that supplies culture-specific formatting information A 64-bit signed integer equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Returns the TypeCode for this instance The enumerated constant that is the TypeCode of the class or value type that implements this interface. Convert this class instance's value to a decimal data type A Decimal equivalent to the value of this instance Convert this class instance's value to a decimal data type An IFormatProvider interface implementation that supplies culture-specific formatting information A Decimal equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a uint data type The Type to which the value of this instance is converted An IFormatProvider interface implementation that supplies culture-specific formatting information An Object instance of type conversionType whose value is equivalent to the value of this instance.

If there is no meaningful conversion, this method will throw an InvalidCastException

Convert this class instance's value to a uint data type Format provider to use in conversion A 32-bit unsigned integer equivalent to the value of this instance

If there is no meaningful conversion, this method will throw an InvalidCastException

Converts a DateTime to Excel's numerical representation of a date.

When using the 1900 date system in Excel, dates before 3/1/1900 must be corrected, because Excel incorrectly assumes 1900 is a leap year. This overload assumes the 1900 date system is being used as so it corrects the date values.

The DateTime value to convert to the Microsoft Excel date format.
Converts a DateTime to Excel's numerical representation of a date. The DateTime value to convert to the Microsoft Excel date format. When using the 1900 date system in Excel, dates before 3/1/1900 must be corrected, because Excel incorrectly assumes 1900 is a leap year. Pass False to disable this correction. Converts Excel's numerical representation of a date to a DateTime.

When using the 1900 date system in Excel, dates before 3/1/1900 must be corrected, because Excel incorrectly assumes 1900 is a leap year. This overload assumes the 1900 date system is being used as so it corrects the date values.

The Microsoft Excel date format which should be converted to a DateTime.
Converts Excel's numerical representation of a date to a DateTime. The Microsoft Excel date format which should be converted to a DateTime. When using the 1900 date system in Excel, dates before 3/1/1900 must be corrected, because Excel incorrectly assumes 1900 is a leap year. Pass False to disable this correction. Gets the resolved value of the reference. This method will walk down the reference chain recursively to get the resolved value of the reference that is not just another reference.

If this is being called to use the resolved value in a calculation, should be True. Otherwise, if this is just being used to determine what type of resolved value is held, should be False.

If True and a reference is held by this value, the reference will be added to the dynamic references of the formula being evaluated.
Convert this class instance's value to an array data type An array equivalent to the value of this instance Convert this class instance's value to an array group data type An array group equivalent to the value of this instance Returns whether this class instance contains a value True if this instance class contains a reference, else false Returns whether this class instance contains an error value True if this class instance contains an error, else false Returns whether this class instance contains a null value True if this instance class contains a null value, else false Returns whether this class instance contains a DBNull value True if this instance class contains a null value, else false Returns whether this class instance contains a string value True if this instance class contains a string, else false Returns whether this class instance contains a boolean value True if this instance class contains a boolean, else false Returns whether this class instance contains a DateTime value True if this instance class contains a DateTime, else false Return the underlying value Returns whether this class instance contains an array value True if this instance class contains an array, else false Returns whether this class instance contains a group of array values True if this instance class contains an array group, else false Gets the workbook associated with the formula being solved. Identifies formula token types in the UltraCalcFormulaToken class Indicates a value token containing an IUltraCalcReference. Indicates a function token containing an IUltraCalcFunction. Enumeration of operator functions. Operator used to add two values ("+")

Note: This operator must take exactly two operands/arguments.

Operator used to subtract two values ("-")

Note: This operator must take exactly two operands/arguments.

Operator used to multiply two values ("*")

Note: This operator must take exactly two operands/arguments.

Operator used to divide two values ("/")

Note: This operator must take exactly two operands/arguments.

Operator used to compare two objects for equality ("=")

Note: This operator must take exactly two operands/arguments.

Operator used to compare if two values are different ("><" or "!=")

Note: This operator must take exactly two operands/arguments.

Operator used to determine if one value is greater than or equal to a second value. (">=")

Note: This operator must take exactly two operands/arguments.

Operator used to determine if one value is greater than a second value. (">")

Note: This operator must take exactly two operands/arguments.

Operator used to determine if one value is less than or equal to a second value. ("<=")

Note: This operator must take exactly two operands/arguments.

Operator used to determine if one value is less than a second value. ("<")

Note: This operator must take exactly two operands/arguments.

Operator used to concatenate 2 strings ("&")

Note: This operator must take exactly two operands/arguments.

Operator used to raise a value to a specified power ("^")

Note: This operator must take exactly two operands/arguments.

Operator used to convert a value to a percentage ("%")

Note: This operator must take exactly one operand/argument.

Negative unary operator ("-")

Note: This operator must take exactly one operand/argument.

Positive unary operator ("+")

Note: This operator must take exactly one operand/argument.

This abstract base class is used to implement the IUltraCalcReference interface for an object with a complex hierarchy of referencable elements. Initializes a new Create a new reference relative to this reference. The reference string. The new reference. Returns true if this reference contains inReference The contained candidate. true if inReference is contained by this reference. Returns true if inReference is a proper subset of this reference The subset candidate. true if inReference is contained by this reference. Returns a string representation of the reference based on the reference type and absolute name. A string representation of the reference based on the reference type and absolute name. Overridden. Default implementation returns the hash code of the normalized absolute name. These objects are going to be added to data structure that make use of GetHashCode and Equals methods. What this means is that the normalized absolute name must not change throughout the lifetime of this instance. If it does change then the overriding class must override this method and return a hash code based on some other immutable property of the instance. A hash code of the normalized absolute name. Overriden. Default implementation returns true if the normalized absolute names of this reference and the passed in reference match. These objects are going to be added to data structure that make use of GetHashCode and Equals methods. What this means is that the normalized absolute name must not change throughout the lifetime of this instance. If it does change then the overriding class must override this method and return a hash code based on some other immutable property of the instance. The reference to compare with this instance. True if the normalized absolute names of this reference and the passed in reference match Returns a context for the Reference.

Returns a meaningful object context for the reference. This could be an UltraGridCell, UltraGridColumn, NamedReference, Control, etc.

The fully qualified unique name for the referenced element. Read Only. Returns the normalized absolute name. UltraCalcEngine makes use of normalized absolute names of references to compare two references and search for references. This property should return the absolute name with case insensitive parts of the absolute names converted to lower case. The unqualified name of this referenced element. Used to construct the fully qualified name by the AbsoluteName method. Read Only. The UltraCalcValue, if any, associated with this Reference. If this reference does not contain a Value then a UltraCalcErrorValue is returned. The IUltraCalcFormula, if any, associated with this Reference. If this reference can not contain a formula then null is returned. Return a collection of references if this Reference is enumerable. An exception is thrown if this reference is not enumerable. A Reference collection. Returns true if this reference is enumerable. Implements the IUltraCalcReference and provides methods to connect and disconnect from an underlying calculation object reference

UCReference wraps an internal IUltraCalcReference class instance that points to the underlying object. That is, each method simply passes the IUltraCalcReference request to the underlying reference if the object is connected, else it returns, or throws, an appropriate error. UCReference has storage for the reference string and its underlying reference object.

There are two additional methods on UCReference: Connect and Disconnect.

Connect will attempt to obtain a reference to the object it refers to given a base reference and it's reference string by calling the base reference's CreateReference method passing it the reference string. If its successful, it will store the newly created reference and use it to dispatch IUltraCalcReference requests against it.

Disconnect will simply free the internal reference object after which its IUltraCalcReference methods will deal with a disconnected state.

Virtually all references can be in a disconnected state at some point in their lifetime, therefore the CalcEngine uses UCReference instances to connect to all references. That is, the UltraCalcFormulaCompiler.Compile method creates UCRefernces for the all references in the formula string. The CalcEngine exposes a TopoChange event that objects used to notify it of topological changes. The TopoChange event passes a reference to the CalcEngine that describes the object that changed (e.g. column, row, grid, etc) along with a Create / Delete action argument.

On Delete events, the CalcEngine will track down all formulas whose LHS is contained by the disconnected reference and delete them. This will clean up the recalc chain and ancestor map of any references including sub-references under the deleted reference. That is, column formulas will be deleted when the event's deleted reference is an entire grid, or cell references that are on the recalc chain when the deleted reference is a column. The ContainsReference on the reference passed with the TopoChange event determines whether the event affects a given reference. Secondly, all formulas who reference the deleted reference will be recalculated.

On Create events, the CalcEngine will track down all references contained by the created reference and call the Connect method passing in the their formula's BaseReference. This will cause the CalcReference to reconnect to the underlying reference. Secondly, each re-connected reference's ancestor's will be recalculated.

Default constructor Reference name constructor Name of reference entered into formula used to create the underlying object reference Create a new reference relative to this reference. The reference string. The new reference. Returns true if this reference contains inReference The contained candidate. true if inReference is contained by this reference. Returns true if inReference is a proper subset of this reference The subset candidate. true if inReference is contained by this reference. Associates the with the specified New underlying reference for the instance Returns true if the operation caused the UCReference to change so that it represents a different reference than before. Disconnects the from the underlying Returns true if the operation caused the UCReference to change so that it represents a different reference than before. Disconnects from the previous reference and connects to the specified New reference that should be the underlying reference for this instance Returns true if the operation caused the UCReference to change so that it represents a different reference than before. Overridden. Default implementation returns the hash code of the normalized absolute name. These objects are going to be added to data structure that make use of GetHashCode and Equals methods. What this means is that the normalized absolute name must not change throughout the lifetime of this instance. If it does change then the overriding class must override this method and return a hash code based on some other immutable property of the instance. A hash code of the normalized absolute name. Overriden. Default implementation returns true if the normalized absolute names of this reference and the passed in reference match. These objects are going to be added to data structure that make use of GetHashCode and Equals methods. What this means is that the normalized absolute name must not change throughout the lifetime of this instance. If it does change then the overriding class must override this method and return a hash code based on some other immutable property of the instance. The object to test for equality. True if the normalized absolute names of this instance and the passed in reference match. Returns a context for the Reference.

Returns a meaningful object context for the reference. This could be an UltraGridCell, UltraGridColumn, NamedReference, Control, etc.

Returns the absolute name for the reference Returns the normalized absolute name. UltraCalcEngine makes use normalized absolute names of references to compare two references and search for references. This property should return the absolute name with case insensitive parts of the absolute names converted to lower case. The unqualified name of this referenced element. Used to construct the fully qualified name by the AbsoluteName method. Read Only. The UltraCalcValue, if any, associated with this Reference. If this reference does not contain a Value then a UltraCalcErrorValue is returned. The IUltraCalcFormula, if any, associated with this Reference. If this reference can not contain a formula then null is returned. Return a collection of references if this Reference is enumerable. An exception is thrown if this reference is not enumerable. A Reference collection. Returns true if this reference is enumerable. Returns the underlying reference or this instance if the object is not connected. Returns the root name for the reference Indicates if the UCReference is currently connected to an underlying Factory class used to create an IPackage given a stream and a FileMode Opens an IPackage with a given IO stream and file mode. The IO stream on which to open the IPackage. The file mode in which to open the IPackage. The opened IPackage. Represents a container that can store multiple data objects. Creates a new uncompressed part with a given URI and content type. The uniform resource identifier (URI) of the new part. The content type of the data stream. The new created part. Creates a package-level relationship to a part with a given URI, target mode, relationship type, and identifier (ID). The uniform resource identifier (URI) of the target part. Indicates if the target part is System.IO.Packaging.TargetMode.Internal or System.IO.Packaging.TargetMode.External to the package. A URI that uniquely defines the role of the relationship. A unique XML identifier. The package-level relationship to the specified part. Returns a collection of all the package-level relationships. A collection of all the package-level relationships that are contained in the package. Returns the part with a given URI. The uniform resource identifier (URI) of the part to return. The part with the specified partUri. Returns a collection of all the parts in the package. A collection of all the System.IO.Packaging.PackagePart elements that are contained in the package. Indicates whether a part with a given URI is in the package. The System.Uri of the part to check for. true if a part with the specified partUri is in the package; otherwise, false. Provides a base class for parts stored in a System.IO.Packaging.Package. This class is abstract. Returns the part content stream opened with a specified System.IO.FileMode and System.IO.FileAccess. The I/O mode in which to open the content stream. The access permissions to use in opening the content stream. The content stream for the part. Creates a part-level relationship between this IPackagePart to a specified target IPackagePart or external resource. The URI of the target part. One of the enumeration values. For example, RelationshipTargetMode.Internal if the target part is inside the IPackage; or RelationshipTargetMode.External if the target is a resource outside the IPackage. The role of the relationship. A unique ID for the relationship. The part-level relationship between this IPackagePart to the target IPackagePart or external resource. Returns a collection of all the relationships that are owned by this part. A collection of all the relationships that are owned by the part. Returns the relationship that has a specified IPackageRelationship.Id. The IPackageRelationship.Id of the relationship to return. The relationship that matches the specified id. Gets the parent Package of the part. Gets the URI of the part. Gets the MIME type of the content stream. Represents an association between a source IPackage or IPackagePart, and a target object which can be a IPackagePart or external resource. Gets the URI of the package or part that owns the relationship. Gets the URI of the target resource of the relationship. Gets a string that identifies the relationship. Gets the qualified type name of the relationship. Gets a value that indicates whether the target of the relationship is RelationshipTargetMode.Internal or RelationshipTargetMode.External to the IPackage. Specifies whether the target of an IPackageRelationship is inside or outside the IPackage. The relationship references a part that is inside the package. The relationship references a resource that is external to the package. Abstract base class for a named reference defined in the workbook. Gets or sets the name of the reference.

See the overview on for details on how to access a named reference by name in formulas.

The value assigned is null or empty. The value assigned is longer than 255 characters. The value assigned is not a valid named reference. The name must begin with a letter, underscore (_), or a backslash (\). All other characters in the name must be letters, numbers, periods, underscores (_), or backslashes (\). The name cannot be a an A1 cell reference (1 to 3 letters followed by 1 to 6 numbers). In addition, the name cannot be 'r', 'R', 'c', or 'C' or start with a row or column reference in R1C1 cell reference mode ('R' followed by 1 to 6 numbers or 'C' followed by 1 to 6 numbers). The value assigned is the name of another named reference with the same Scope. Names are compared case-insensitively. The name of the reference.
Gets the scope of the named reference.

This can either be the workbook which the named reference belongs to or one of the worksheets in the workbook.

The scope determines how formulas need to preface a name in order to use the named reference.

If the scope is the workbook, formulas in any cell in the workbook can reference the named reference by specifying just the name or the workbook's file name, an exclamation point, and the name: =MyWorkbookName ='C:\MyWorkbook.xls'!MyWorkbookName When cells in other workbook's want to reference the named reference, they must use the second format by first specifying the file name when the workbook-scoped named reference exists.

If the scope is a worksheet, formulas in cells of the worksheet can reference the named reference by specifying just the name. In addition, they can fully qualify the named reference with the worksheet name and, optionally, the workbook file name: =MyWorksheetName =Sheet1!MyWorksheetName ='C:\[MyWorkbook.xls]Sheet1'!MyWorksheetName Formulas in cells of other worksheets in the same workbook can use the named reference as well, but they must specify the worksheet name and, optionally, the workbook file name: =Sheet2!OtherWorksheetName ='C:\[MyWorkbook.xls]Sheet2'!OtherWorksheetName Formulas in cells of other workbooks can also used the named reference, but they must specify the workbook file name, worksheet name, and named reference name.

The scope of the named reference.
Represents an array formula for a group of cells.

Array formulas are similar to regular formula in that they have the same grammar. However, array formulas must be set on a single region of cells only. When the array formula is applied to a region of cells, each cell's Formula property will be the array formula. The Value of each cell cannot be changed unless is called on the array formula or another value is applied to a region of cells which completely contains the array formula's region.

Because the array formula stores the region of the cells to which it is applied in the property, the array formula can only be applied to one region of cells.

Array formulas are created through Microsoft Excel by selecting a region of cells, entering a formula for that range, and pressing Ctrl+Shift+Enter. This causes the formula of each cell in the region to appear as follows: {=Formula}.

See the Microsoft Excel documentation for more information on array formulas.

Represents a formula for a cell or group of cells.

Formulas provide a way to show dynamic values in a cell. The value could be based any number of factors, such as the values of other cells and the time of day. Those alternate cells can even exist in different workbook files on the user's machine or on the internet.

See Microsoft Excel help for more information on formulas.

Use one of the Parse or TryParse overloads to create a new formula.

Converts the formula to a string representation, similar to the string with which it was created. This uses the with which the formula was created to create cell reference strings. The string representing the formula. Applies the formula to the specified cell.

This method, or one of the other ApplyTo overrides must be used to set the value of a cell to a formula.

After this method returns, the of the specified cell will return the formula.

The cell to apply the formula to. is null. is part of an array formula or data table which is not confined to just the cell.
Applies the formula to the specified region of cells.

This method, or one of the other ApplyTo overrides must be used to set the value of a cell to a formula.

After this method returns, the of all cells in the specified region will return the formula.

The region of cells to apply the formula to. is null. contains an array formula or data table which extends outside the region.
Applies the formula to all specified regions of cells.

This method, or one of the other ApplyTo overrides must be used to set the value of a cell to a formula.

After this method returns, the of all cells in all specified regions will return the formula.

The regions of cells to apply the formula to. is null. has a length of 0. Not all regions specified are from the same worksheet. One or more regions specified contain array formulas or data tables which extend outside the region.
Converts the formula to a string representation, similar to the string with which it was created. The cell reference mode used to create cell reference strings. The string representing the formula. Determines whether two instances are equal using the specified cell reference mode. This essentially performs a case-insensitive string comparison, ignoring the white space in the formula. The first Formula to compare. The second Formula to compare. The cell reference mode to use when comparing the two formulas. True if the formulas are both null or both equivalent; False otherwise. Parses the specified formula value and returns the formula which was created from it. The string which defines the formula to parse. The mode used to interpret cell references in the formula. is null or empty. is not defined in the enumeration. is not a valid formula. A instance which represents the formula specified. Parses the specified formula value and returns the formula which was created from it. The string which defines the formula to parse. The mode used to interpret cell references in the formula. The file format to use when parsing the formula. This will be used to determine certain limits which are format dependant. is null or empty. is not defined in the enumeration. is not defined in the enumeration. is not a valid formula. A instance which represents the formula specified. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the formula to parse. The mode used to interpret cell references in the formula. When this method returns, contains the formula which was parsed from , if the conversion succeeded, or null if the conversion failed. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. True if was converted successfully; False otherwise. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the formula to parse. The mode used to interpret cell references in the formula. When this method returns, contains the formula which was parsed from if the conversion succeeded or null if the conversion failed. This parameter is passed uninitialized. When this method returns, contains the error information if the conversion failed or null if the conversion succeeded. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. True if was converted successfully; False otherwise. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the formula to parse. The mode used to interpret cell references in the formula. The file format to use when parsing the formula. This will be used to determine certain limits which are format dependant. When this method returns, contains the formula which was parsed from , if the conversion succeeded, or null if the conversion failed. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. is not defined in the enumeration. True if was converted successfully; False otherwise. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the formula to parse. The mode used to interpret cell references in the formula. The file format to use when parsing the formula. This will be used to determine certain limits which are format dependant. When this method returns, contains the formula which was parsed from if the conversion succeeded or null if the conversion failed. This parameter is passed uninitialized. When this method returns, contains the error information if the conversion failed or null if the conversion succeeded. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. is not defined in the enumeration. True if was converted successfully; False otherwise. Applies the formula to all specified regions of cells.

This method, or one of the other ApplyTo overrides must be used to set the value of a cell to a formula.

After this method returns, the of all cells in all specified regions will return the array formula.

The regions of cells to apply the formula to. is null. The length is anything other than one. The array formula is already applied to a cell region. One or more regions specified contain array formulas or data tables which extend outside the region.
Removes this array formula as the formula for the cells to which it was applied.

After this method returns, the will be null.

Parses the specified formula value and returns the array formula which was created from it. The string which defines the array formula to parse. The mode used to interpret cell references in the array formula. is null or empty. is not defined in the enumeration. is not a valid formula. An instance which represents the array formula value specified. Parses the specified formula value and returns the array formula which was created from it. The string which defines the array formula to parse. The mode used to interpret cell references in the array formula. The file format to use when parsing the array formula. This will be used to determine certain limits which are format dependant. is null or empty. is not defined in the enumeration. is not defined in the enumeration. is not a valid formula. An instance which represents the array formula value specified. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the array formula to parse. The mode used to interpret cell references in the array formula. When this method returns, contains the array formula which was parsed from , if the conversion succeeded, or null if the conversion failed. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. True if was converted successfully; False otherwise. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the array formula to parse. The mode used to interpret cell references in the array formula. When this method returns, contains the array formula which was parsed from if the conversion succeeded or null if the conversion failed. This parameter is passed uninitialized. When this method returns, contains the error information if the conversion failed or null if the conversion succeeded. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. True if was converted successfully; False otherwise. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the array formula to parse. The mode used to interpret cell references in the array formula. The file format to use when parsing the formula. This will be used to determine certain limits which are format dependant. When this method returns, contains the array formula which was parsed from , if the conversion succeeded, or null if the conversion failed. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. is not defined in the enumeration. True if was converted successfully; False otherwise. Parses the specified formula value. The return value indicates whether the operation succeeded. The string which defines the array formula to parse. The mode used to interpret cell references in the array formula. The file format to use when parsing the formula. This will be used to determine certain limits which are format dependant. When this method returns, contains the array formula which was parsed from if the conversion succeeded or null if the conversion failed. This parameter is passed uninitialized. When this method returns, contains the error information if the conversion failed or null if the conversion succeeded. This parameter is passed uninitialized. is null or empty. is not defined in the enumeration. is not defined in the enumeration. True if was converted successfully; False otherwise. Gets the cells to which the array formula is applied.

If this is null, the formula has not yet been applied.

The cells to which the array formula is applied.
Contains version information for the Infragistics assemblies. Major.Minor number portion of the assembly version Build number portion of the assembly version Revision number portion of the assembly version Assembly version number Location of the resources for toolbox bitmaps. Assembly company name End year of assembly copyright The assembly version number for the satellite assemblies. The current build configuration for the assembly. BIFF8Writer provides static methods for exporting abstract workbook object to concrete Excel file.

Note: The BIFF8Writer class is no longer needed. Use one of the Save overloads on instead.

Writes existing workbook object to a file in BIFF8 format.

Note: The method should be used instead to write the workbook to a file.

Workbook to export. Filename of resulting excel file. If path is not included, file is created in default program folder.
Writes existing workbook object to a stream.

Note: The method should be used instead to write the workbook to a stream.

Workbook to export. Output file stream.
Writes existing workbook object to a stream in BIFF8 format.

Note: The method should be used instead to write the workbook to a stream.

Workbook to export. An output stream to generate the BIFF8 content into.
Represents a custom view in Microsoft Excel.

Custom views provide a way to save display options and optionally print options for the workbook and each worksheet in the workbook. These options can be different from the options currently set on the workbook and worksheets.

Multiple custom views can be saved with a workbook, and the options from a custom view can be applied to its associated workbook by calling the method on it.

Applies all options from the custom view to the associated workbook and its worksheets.

There is no state of the workbook indicating the custom view currently applied, so applying a custom view simply copies over all options saved with it to the workbook and its worksheet. If an applied custom view is then changed, those changes will not be updated on the workbook or worksheets. Instead, the custom view will need to be applied again for those changes to be reflected on the workbook or worksheet.

The custom view has previously been removed from its associated workbook.
Gets the display options associated with the specified worksheet.

Setting properties on the returned instance will not change the actual display of the worksheet. After setting properties, the method of the will apply them to the worksheet.

The worksheet whose associated display options are to be retrieved. is null. Null if the worksheet does not belong to the workbook associated with this custom view; otherwise, the display options associated with the worksheet.
Gets the hidden columns associated with the specified worksheet.

Adding columns on the returned instance will not actually hide columns in the worksheet. After modifying the hidden columns in this collection, the method of the will hide or unhide the columns.

The worksheet whose associated hidden columns are to be retrieved. is null. Null if is False or if the worksheet does not belong to the workbook associated with this custom view; otherwise, the collection of hidden columns associated with the worksheet.
Gets the hidden rows associated with the specified worksheet.

Adding rows on the returned instance will not actually hide rows in the worksheet. After modifying the hidden rows in this collection, the method of the will hide or unhide the rows.

The worksheet whose associated hidden rows are to be retrieved. is null. Null if is False or if the worksheet does not belong to the workbook associated with this custom view; otherwise, the collection of hidden rows associated with the worksheet.
Gets the print options associated with the specified worksheet.

Setting properties on the returned instance will not change the actual print settings of the worksheet. After setting properties, the method of the will apply them to the worksheet.

The worksheet whose associated print options are to be retrieved. is null. Null if is False or if the worksheet does not belong to the workbook associated with this custom view; otherwise, the print options associated with the worksheet.
Gets or sets the name of the custom view.

The name of the custom view is displayed in the custom views dialog of Microsoft Excel and must be case-insensitively unique to other custom views in the workbook.

The value assigned is a null or empty. The value assigned is the name of another custom view in this custom view's associated workbook (custom view names are compared case-insensitively). The name of the custom view.
Gets the value indicating whether hidden row and column settings are saved with the custom view.

If the value is False, the return value of and will always be null, regardless of the worksheet specified.

The value indicating whether hidden row and column settings are saved with the custom view.
Gets the value indicating whether print options are saved with the custom view.

If the value is False, the return value of will always be null, regardless of the worksheet specified.

The value indicating whether print options are saved with the custom view.
Gets the window options for the workbook associated with the custom view.

Setting properties on the returned instance will not change the actual window options of the associated workbook. After setting properties, the method of the will apply them to the workbook.

The window options for the workbook associated with the custom view..
Class which exposes the worksheet display options which can only be controlled through the custom view. Abstract base class which exposes the various display options available for a worksheet which can be saved with both a worksheet and a custom view.

This class provides a way to control how a worksheet is displayed when it is viewed in Microsoft Excel.

Resets the display options to their default settings.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank worksheet.

Gets the settings which control the frozen panes in the worksheet.

For these settings to be saved in the workbook file, must be True.

Note: Frozen and unfrozen panes cannot be used simultaneously, so depending on whether the panes are frozen or unfrozen, these settings may not be used.

The settings which control the frozen panes in the worksheet..
Gets or sets the color of the gridlines on the worksheet.

If the workbook is using a standard palette, the color set may be changed if it is not in the palette. In this case, the closest color in the standard palette will be used.

The workbook is using a custom palette and setting this color would cause the custom palette to use too many colors. The color of the gridlines on the worksheet.
Gets or sets the value which indicates if the panes in the worksheet are frozen.

Depending on the value of this property, either the or the will be used for the worksheet. The unused settings are ignored and are not saved with the workbook stream.

The value which indicates if the panes in the worksheet are frozen.
Gets or sets the value which indicates whether formulas are shown in cells.

If this value is True, the formula string will be displayed in the cell. If the value is False, the result of the formula will be displayed in the cell.

The value which indicates whether formulas are shown in cells.
Gets or sets the value which indicates whether gridlines are shown between cells. The value which indicates whether gridlines are shown between cells. Gets or sets the value which indicates whether outline symbols are shown for outlined columns and rows.

If the outline symbols are displayed, they provide a visual representation of the outline levels or rows and columns in Microsoft Excel. In addition, the outline symbols include the expansion indicators which allow for the expanding and collapsing of outline groups.

The value which indicates whether outline symbols are shown for outlined columns and rows.
Gets or sets the value which indicates whether to display row and column headers.

The row and column headers show the identifier of the row or column. They also allow the user to easily select all cells in a row or column by clicking them.

The value which indicates whether to display row and column headers.
Gets or sets the value which indicates whether to show rulers in the page layout view.

When this value is True, one ruler will display above the column headers of the active page in page layout view. Another ruler will also display before the row headers of the active page.

Note: This property will only affect the worksheet view if the is PageLayout.

Note: The value of PageLayout is only supported in Excel 2007. If a worksheet with that View is viewed in earlier versions of Microsoft Excel, the view will default to Normal view.

The value which indicates whether to show rulers in the page layout view.
Gets or sets the value which indicates whether zero values are shown in cells.

If this value is True, cells with a value of zero will display their values; otherwise, those cells will display as blanks.

The value which indicates whether zero values are shown in cells.
Gets the settings which control the unfrozen panes in the worksheet.

For these settings to be saved in the workbook file, must be False.

Note: Frozen and unfrozen panes cannot be used simultaneously, so depending on whether the panes are frozen or unfrozen, these settings may not be used.

The settings which control the unfrozen panes in the worksheet.
Gets or sets the current view of the worksheet.

The view determines the overall display of the worksheet in Microsoft Excel.

Note: The value of PageLayout is only supported in Excel 2007. If a worksheet with that View is viewed in earlier versions of Microsoft Excel, the view will default to Normal view.

The value assigned is not defined in the WorksheetView enumeration. The current view of the worksheet.
Gets or sets the visibility of the worksheet.

The visibility determines whether the worksheet's tab will appear in the tab bar at the bottom of Microsoft Excel.

The value assigned is not defined in the enumeration. The visibility of the worksheet.
Resets the display options to their default settings.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank worksheet.

Gets or sets the magnification level of the worksheet in the current .

Magnifications are stored as percentages of the normal viewing magnification. A value of 100 indicates normal magnification whereas a value of 200 indicates a zoom that is twice the normal viewing magnification.

The assigned value is outside the valid range of magnification levels for a worksheet. The level must be between 10 and 400. The magnification level of the worksheet in the current View.
A collection of instances in a workbook. Adds a new custom view to the collection. The name to give the newly created custom view. True to save print options for each worksheet with the custom view; False otherwise. True to save information about hidden rows and columns for each worksheet with the custom view; False otherwise. is a null or empty. is the name of another custom view in the collection (custom view names are compared case-insensitively). The newly created instance. Clears all custom views from the collection. Determines whether a custom view is in this collection. The custom view to locate in the collection. True if the custom view is found; False otherwise. Removes the specified custom view from the collection. The custom view to remove from the collection. True if the custom view was successfully removed; False if the custom view was not in the collection. Removes the custom view at the specified index from the collection. The zero-based index of the custom view in the collection. is less than zero or is greater than or equal to . Gets the number of custom views in the collection. The number of custom views in the collection. Gets the custom view at the specified index. The zero-based index of the custom view to get. is less than zero or is greater than or equal to . The custom view at the specified index. Represents the workbook window options which are saved with custom views.

The properties explicitly defined on this class and not inherited from the base class, , are options that can be saved with a custom view, but not with a workbook. Therefore, these properties will not be applied when the method is called.

Abstract base class which exposes the various workbook window options available which can be saved with both a workbook and a custom view.

This class provides a way to control how a workbook is displayed when it is viewed in Microsoft Excel.

Resets the window options to their default settings.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank workbook.

Gets or sets the way the objects and shapes are displayed in the workbook. The assigned value is not defined in the enumeration. The way the objects and shapes are displayed in the workbook. Gets or sets the scroll bars shown in the workbook window.

The vertical scroll bar occupies the entire height of the application if it is visible.

The horizontal scroll bar occupies the width of the application not used by the worksheet tab bar, if it is visible. Otherwise, it occupies the entire width of the application.

The assigned value is not defined in the enumeration. The scroll bars shown in the workbook window.
Gets or sets the selected worksheet of the workbook.

If this is an instance of and the SelectedWorksheet value is null, the workbook's selected worksheet will not be changed when the associated is applied.

Note: If the selected worksheet does not have its set to Visible when the workbook is saved, another worksheet will be selected.

The assigned value is null and this is an instance of whose associated has at least one . The assigned value does not belong to the workbook associated with this instance of . The selected worksheet of the workbook.
Gets or sets the value indicating whether the worksheet tab bar is visible.

If the value is False, the will not be used, but it will still be serialized with the workbook.

The value indicating whether the worksheet tab bar is visible.
Gets or sets the width of the worksheet tab bar, expressed in 1/1000ths of the application width.

This value is only used if is True. Regardless of whether the tab bar is visible, the width value is always saved with the workbook.

A value of 1000 indicates the worksheet tab bar occupies the entire width of the application, while a value of 0 indicates the worksheet tab bar has no width.

All space not occupied by the worksheet tab bar will be used by the horizontal scroll bar, if it is visible.

The value assigned is outside the valid range of 0 and 1000. The width of the worksheet tab bar, expressed in 1/1000ths of the application width.
Resets the window options to their default settings.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank workbook.

Gets or sets the pixel bounds of the workbook's MDI child window when owning these window options is applied.

Note: This property will have no affect on the workbook if is True. However, in this case, the value of this property will still be saved with the workbook.

Note: This setting cannot be saved with a in the Excel file. It can only be saved with a CustomView. Therefore, there is no corresponding property in and calling on the associated CustomView will not apply this property. Only by applying the custom view through the Microsoft Excel user interface will the setting on this property be applied.

The left or top of the value assigned is outside the bounds of -32768 and 32767. The width or height of the value assigned is outside the bounds of 0 and 65535. The pixel bounds of the workbook's MDI child window when CustomView owning these window options is applied.
Gets or sets the value indicating whether the workbook's MDI child window will be maximized when the owning these window options is applied.

Note: This setting cannot be saved with a in the Excel file. It can only be saved with a CustomView. Therefore, there is no corresponding property in and calling on the associated CustomView will not apply this property. Only by applying the custom view through the Microsoft Excel user interface will the setting on this property be applied.

The value indicating whether the workbook's MDI child window will be maximized when the CustomView owning these window options is applied.
Gets or sets the value indicating whether Microsoft Excel will display the formula bar when the owning these window options is applied.

Note: This setting cannot be saved with a in the Excel file. It can only be saved with a CustomView. Therefore, there is no corresponding property in and calling on the associated CustomView will not apply this property. Only by applying the custom view through the Microsoft Excel user interface will the setting on this property be applied.

The value indicating whether Microsoft Excel will display the formula bar when the CustomView owning these window options is applied.
Gets or sets the value indicating whether Microsoft Excel will display the status bar when the owning these window options is applied.

Note: This setting cannot be saved with a in the Excel file. It can only be saved with a CustomView. Therefore, there is no corresponding property in and calling on the associated CustomView will not apply this property. Only by applying the custom view through the Microsoft Excel user interface will the setting on this property be applied.

The value indicating whether Microsoft Excel will display the status bar when the CustomView owning these window options is applied.
Represents an error value in Microsoft Excel. Gets the string representation of the error value. The string representation of the error value. Gets the ErrorValue representing the #N/A error.

This error occurs when a value isn't available for some part of a formula.

The ErrorValue representing the #N/A error.
Gets the ErrorValue representing a circularity error.

There is no error constant for a circularity in Microsoft Excel and a circularity cannot be the result of a formula in Microsoft Excel. However, for run-time purposes, after loading or before saving a workbook, this error value will be used for the result of formulas which cause circular references when the owning workbook has set to False.

In Microsoft Excel, setting a circular reference formula on a cell will show an error dialog the first time the problem occurs. Subsequent formulas violating the circular reference restriction will just evaluate to zero. Therefore, when this value is encountered in a cell, it can be treated as a zero for calculation purposes. This error value will be returned though so an actual zero value in a cell can be differentiated from a circularity error.

Note: Because there is no circularity error constant in Microsoft Excel, this error value cannot be assigned to a cell manually. Attempting to assign this error value to a cell will result in an InvalidOperationException to be thrown. This error value will only be valid as the result of a formula which has been applied to a cell.

The ErrorValue representing a circularity error.
Gets the ErrorValue representing the #DIV/0! error.

This error occurs when a number is divided by zero.

The ErrorValue representing the #DIV/0! error.
Gets the ErrorValue representing the #NULL! error.

This error occurs when there is an intersection of two references that do not contain any common cells. The intersection operator is a space between two references.

The ErrorValue representing the #NULL! error.
Gets the ErrorValue representing the #REF! error.

This error occurs when a cell reference or cell range reference is not valid.

The ErrorValue representing the #REF! error.
Gets the ErrorValue representing the #NUM! error.

This error occurs when there are invalid numeric values in a formula.

The ErrorValue representing the #NUM! error.
Gets the ErrorValue representing the #NAME? error.

This error occurs when text in a formula is not recognized.

The ErrorValue representing the #NAME? error.
Gets the ErrorValue representing the #VALUE! error.

This error occurs when an incorrect argument or operand is used in a function.

The ErrorValue representing the #VALUE! error.
Represents a string with mixed formatting in a cell, cell comment, or shape.

The formatting of the string is controlled in a similar fashion as it would be in Microsoft Excel. In Excel, the user must select a portion of the text and set the various formatting properties of that selected text.

With the FormattedString, a portion of the string is "selected" by calling either GetFont(int) or GetFont(int,int). Formatting properties are then set on the returned and all characters in the font's selection range are given these properties.

Getting the formatting properties of a will return the formatting of the first character in font's selection range. This is similar to Excel, which will update the formatting interface to reflect the formatting of the first character in a selection range when a cell's text is selected.

Creates a new instance of the class. is null. The string that will be displayed in the cell with the formatting. Determines whether the specified is equal to this . The value to test for equality to this FormattedString. True if the is a FormattedString instance and it contains the same unformatted string and formatting as this FormattedString; False otherwise. Calculates the has code for this . A number which can be used in hashing functions. Returns the that represents this . This is just the unformatted string.

This will return the same value as .

The String that represents this FormattedString.
Creates a new that is a copy of this one.

This should be used if the same formatted string needs to be used in multiple cells. The FormattedString class can only exist as the of one cell at a time. If the FormattedString is already the value of a cell, and needs to be set as the value of another cell, clone the FormattedString and set the returned clone as value of the cell.

The cloned FormattedString only takes its original configuration for this instance. If this instance is cloned and than changed, the clone will not be changed as well; it will remain as it was when it was cloned.

A new FormattedString that is a copy of this one.
Gets the font which controls the formatting properties in the string from the specified start index to the end of the string.

If the start index is greater than or equal to the length of the unformatted string, no exception will be thrown. It will be thrown later when one of the formatting properties of the returned is set.

The index of the first character the returned font controls. is less than zero. A FormattedStringFont instance which controls the formatting of the end portion of the string.
Gets the font which controls the formatting properties in the string from the specified start index for the specified number of characters.

If the start index is greater than or equal to the length of the unformatted string, no exception will be thrown. It will be thrown later when one of the formatting properties of the returned is set.

The index of the first character the returned font controls. The number of characters after the start index controlled by the returned font. is less than zero. is less than one. A zero length string cannot be controlled by a formatting font. A FormattedStringFont instance which controls the formatting of a portion of the string.
Gets or sets the unformatted string.

If the new unformatted string assigned is shorter than the old unformatted string, all formatting outside the range of the new value will be lost.

The value assigned is a null string. The unformatted string.
Controls the formatting of a range of characters in a .

The formatting of the string is controlled in a similar fashion as it would be in Microsoft Excel. In Excel, the user must select a portion of the text and set the various formatting properties of that selected text.

With the , a portion of the string is "selected" by calling either GetFont(int) or GetFont(int,int). Formatting properties are then set on the returned FormattedStringFont and all characters in the font's selection range are given these properties.

Getting the formatting properties of a FormattedStringFont will return the formatting of the first character in font's selection range. This is similar to Excel, which will update the formatting interface to reflect the formatting of the first character in a selection range when a cell's text is selected.

Represents a font for the cell in the related context.

If a property of a font has a default value, value of the previous font in resolution chain is used. The resolution priority is the following: Cell (highest priority) Row Column Default Cell Format (lowest priority) For example, if a column font is set to blue and bold and a row font is set to italic and not bold, the font in the cell at the intersection of the row and column would have blue, italic text in the saved workbook.

Sets all font properties to specific font formatting. Source font format. Gets or sets the value which indicates whether the font is bold. The value assigned is not defined in the enumeration. The value which indicates whether the font is bold. Gets or sets the foreground color of the font. The foreground color of the font. Gets or sets the font height in twips (1/20th of a point).

A negative value indicates the default font height, in which case the is used.

The value assigned is positive and outside the valid font height range of 20 and 8180. The font height in twips (1/20th of a point).
Gets or sets the value which indicates whether the font is italic. The value assigned is not defined in the enumeration. The value which indicates whether the font is italic. Gets or sets the font family name. The font family name. Gets or sets the value which indicates whether the font is struck out. The value assigned is not defined in the enumeration. The value which indicates whether the font is struck out. Gets or sets the value which indicates whether the font is superscript or subscript. The value assigned is not defined in the enumeration. The value which indicates whether the font is superscript or subscript. Gets or sets the underline style of the font. The value assigned is not defined in the enumeration. The underline style of the font. Sets all properties of this font to the properties of the specified font. is null. The associated with the font is not the value of a . The font's selection range is outside the valid character range of the associated FormattedString. The font whose properties should be copied over to this font. Gets or sets the value indicating whether the font is bold.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The value assigned is not defined in the enumeration. The associated with the font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The value indicating whether the font is bold.
Gets or sets the fore color of the font.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The associated with the font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The fore color of the font.
Gets the formatted string which is controlled by this font. The formatted string which is controlled by this font. Gets or sets the height of the font.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The value assigned is positive and outside the valid font height range of 20 and 8180. The associated with font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The height of the font.
Gets or sets the value indicating whether the font is italic.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The value assigned is not defined in the enumeration. The associated with the font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The value indicating whether the font is italic.
Gets the number of characters covered by this font. Zero indicates the font controls from the to the end of the string. The number of characters covered by this font. Zero indicates the font controls from the StartIndex to the end of the string. Gets or sets the name of the font.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The associated with the font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The name of the font.
Gets the index of the first character covered by this font. The index of the first character covered by this font. Gets or sets the value indicating whether the font is struck out.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The value assigned is not defined in the enumeration. The associated with the font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The value indicating whether the font is struck out.
Gets or sets the value indicating whether the font is superscript or subscript.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The value assigned is not defined in the enumeration. The associated with the font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The value indicating whether the font is superscript or subscript.
Gets or sets the underline style of the font.

All characters in the selection range of this font will be affected by setting this property. Getting this property will return a value which indicates the formatting of the first character in this font's range.

The value assigned is not defined in the enumeration. The associated with the font is not the value of a . This font's selection range is outside the valid character range of the associated FormattedString. The underline style of the font.
A collection of hidden instances.

The columns in this collection do not necessarily have their property set to True. This collection applies to a , but belongs to a . When the CustomView which owns this collection is applied, the columns in this collection will have their property set to True. All other columns in the associated worksheet will be made visible.

Adds a column to the collection.

This collection does not allow duplicate values. If the specified column already exists in the collection, nothing will happen. This collection also keeps itself sorted, so the column added will not necessarily be added at the end of the collection.

is null. does not belong to the same worksheet this collection is associated with. The column to be added to the hidden columns collection.
Clears all columns from the collection. Determines whether the specified column exists in the collection. The column to search for in the collection. True if the column exists in the collection; False otherwise or if the specified column is null. Removes the specified column from the collection if it exists. The column to removed from the collection. True if the column existed in the collection and was removed; False otherwise or if the specified column is null. Removes the column at the specified index in the collection. The zero-based index of the column in the collection. is less than zero or is greater than or equal to . Gets the number of columns in the collection. The number of columns in the collection. Gets the column at the specified index. The zero-based index of the column to get. is less than zero or is greater than or equal to . The column at the specified index. Gets the worksheet associated with this collection. The worksheet associated with this collection. A collection of hidden instances.

The rows in this collection do not necessarily have their property set to True. This collection applies to a , but belongs to a . When the CustomView which owns this collection is applied, the rows in this collection will have their property set to True. All other rows in the associated worksheet will be made visible.

Adds a row to the collection.

This collection does not allow duplicate values. If the specified row already exists in the collection, nothing will happen. This collection also keeps itself sorted, so the row added will not necessarily be added at the end of the collection.

is null. does not belong to the same worksheet this collection is associated with. The row to be added to the hidden rows collection.
Clears all rows from the collection. Determines whether the specified row exists in the collection. The row to search for in the collection. True if the row exists in the collection; False otherwise or if the specified row is null. Removes the specified row from the collection if it exists. The row to removed from the collection. True if the row existed in the collection and was removed; False otherwise or if the specified row is null. Removes the row at the specified index in the collection. The zero-based index of the row in the collection. is less than zero or is greater than or equal to . Gets the number of rows in the collection. The number of rows in the collection. Gets the row at the specified index. The zero-based index of the row to get. is less than zero or is greater than or equal to . The row at the specified index. Gets the worksheet associated with this collection. The worksheet associated with this collection. Represents the format for the cell in the related context.

Cell formatting is associated with each cell, row, and column in a Worksheet. If a property of the cell format has a default value, the value of the previous format in resolution chain is used. The resolution priority is the following: Cell (highest priority) Row Column Default Cell Format (lowest priority) For example, if a row format background color is blue, a column format background color is red, and a cell with the default background color (Color.Empty) is at the intersection of the row and column, it will have a blue color in exported file (as the row has a higher priority than the column). The Resolution process is done internally during exporting process, which means that cell format background color is always default if not explicitly set.

Copies all cell format properties to from the specified cell format. The cell format from which to copy the properties. Gets or sets the horizontal alignment of the content in a cell. The value assigned is not defined in the enumeration. The horizontal alignment of the content in a cell. Gets or sets the bottom border color.

If the border color is set to a non-default value and the is set to Default, it will be resolved to Thin.

The bottom border color.
Gets or sets the bottom border style.

If the border style is set to a non-default value and the is default (Color.Empty), it will be resolved to Color.Black.

The value assigned is not defined in the enumeration. The bottom border style.
Gets or sets the fill pattern in the cell.

If fill pattern is set to Solid, the cell is filled using just the . For all other patterns, both FillPatternForegroundColor and are used.

The value assigned is not defined in the enumeration. The fill pattern in the cell.
Gets or sets the background color of the fill pattern.

If the background color is set to a non-default value and is set to Default, resolved fill pattern style is Gray50percent.

The background color of the fill pattern.
Gets or sets the foreground color of the fill pattern.

If the foreground color is set to a non-default value and is set to Default, resolved fill pattern style is Solid. There, a solid cell color can easily be applied by setting only the FillPatternForegroundColor.

The foreground color of the fill pattern.
Gets or sets the default font formatting.

This font formatting is just the default font used in the cell. This can be overridden by strings on a character by character basis by using the class.

The default font formatting.
Gets or sets the number format string.

For more information on excel format strings, consult Microsoft Excel help.

The number format string.
Gets or sets the indent in units of average character widths. The assigned value is outside the valid indent level range of 0 and 15. The indent in units of average character widths. Gets or sets the left border color.

If the border color is set to a non-default value and the is set to Default, it will be resolved to Thin.

The left border color.
Gets or sets the left border style.

If the border style is set to a non-default value and the is default (Color.Empty), it will be resolved to Color.Black.

The value assigned is not defined in the enumeration. The left border style.
Gets or sets the valid which indicates whether the cell is locked in protected mode.

The Locked valid is used in Excel file only if the associated or is protected. Otherwise the value is ignored.

The valid which indicates whether the cell is locked in protected mode.
Gets or sets the right border color.

If the border color is set to a non-default value and the is set to Default, it will be resolved to Thin.

The right border color.
Gets or sets the right border style.

If the border style is set to a non-default value and the is default (Color.Empty), it will be resolved to Color.Black.

The value assigned is not defined in the enumeration. The right border style.
Gets or sets the rotation of the cell content in degrees.

Cell text rotation, in degrees; 0 – 90 is up 0 – 90 degrees, 91 – 180 is down 1 – 90 degrees, and 255 is vertical.

The rotation of the cell content in degrees.
Gets or sets the value indicating whether the cell content will shrink to fit the cell.

If True, the size of the cell font will shrink so all data fits within the cell.

The value assigned is not defined in the enumeration. The value indicating whether the cell content will shrink to fit the cell.
Gets or sets the top border color.

If the border color is set to a non-default value and the is set to Default, it will be resolved to Thin.

The top border color.
Gets or sets the top border style.

If the border style is set to a non-default value and the is default (Color.Empty), it will be resolved to Color.Black.

The value assigned is not defined in the enumeration. The top border style.
Gets or sets the vertical alignment of the content in a cell. The value assigned is not defined in the enumeration. The vertical alignment of the content in a cell. Gets or sets the value which indicates whether text will wrap in a cell.

If True, and the row associated with the cell has a default , the row's height will automatically be increased to fit wrapped content.

The value assigned is not defined in the enumeration. The value which indicates whether text will wrap in a cell.
A collection of instances in a workbook. Adds a named reference with a scope of the collection's associated to the collection.

The of the owning will be used to parse the formula.

The name to give the named reference. The formula to give the named reference. is null or empty. is longer than 255 characters. is invalid. The name must begin with a letter, underscore (_), or a backslash (\). All other characters in the name must be letters, numbers, periods, underscores (_), or backslashes (\). The name cannot be a an A1 cell reference (1 to 3 letters followed by 1 to 6 numbers). In addition, the name cannot be 'r', 'R', 'c', or 'C' or start with a row or column reference in R1C1 cell reference mode ('R' followed by 1 to 6 numbers or 'C' followed by 1 to 6 numbers). is used by another named reference which also has a scope of the workbook. Named reference names are compared case-insensitively. is null or empty. is not a valid formula. The inner exception will contain the describing the reason the formula was not valid. The named reference which was added to the collection.
Adds a named reference with a scope of the collection's associated to the collection. The name to give the named reference. The formula to give the named reference. The mode used to interpret cell references in the formula. is null or empty. is longer than 255 characters. is invalid. The name must begin with a letter, underscore (_), or a backslash (\). All other characters in the name must be letters, numbers, periods, underscores (_), or backslashes (\). The name cannot be a an A1 cell reference (1 to 3 letters followed by 1 to 6 numbers). In addition, the name cannot be 'r', 'R', 'c', or 'C' or start with a row or column reference in R1C1 cell reference mode ('R' followed by 1 to 6 numbers or 'C' followed by 1 to 6 numbers). is used by another named reference which also has a scope of the workbook. Named reference names are compared case-insensitively. is null or empty. is not a valid formula. The inner exception will contain the describing the reason the formula was not valid. is not defined in the enumeration. The named reference which was added to the collection. Adds a named reference with a scope of a worksheet to the collection.

The of the owning will be used to parse the formula.

The name to give the named reference. The formula to give the named reference. The scope of the named reference. is null or empty. is longer than 255 characters. is invalid. The name must begin with a letter, underscore (_), or a backslash (\). All other characters in the name must be letters, numbers, periods, underscores (_), or backslashes (\). The name cannot be a an A1 cell reference (1 to 3 letters followed by 1 to 6 numbers). In addition, the name cannot be 'r', 'R', 'c', or 'C' or start with a row or column reference in R1C1 cell reference mode ('R' followed by 1 to 6 numbers or 'C' followed by 1 to 6 numbers). is used by another named reference which also has a scope of the specified . Named reference names are compared case-insensitively. is null or empty. is not a valid formula. The inner exception will contain the describing the reason the formula was not valid. is null. does not belong to the workbook owning this collection. The named reference which was added to the collection.
Adds a named reference with a scope of a worksheet to the collection. The name to give the named reference. The formula to give the named reference. The mode used to interpret cell references in the formula. The scope of the named reference. is null or empty. is longer than 255 characters. is invalid. The name must begin with a letter, underscore (_), or a backslash (\). All other characters in the name must be letters, numbers, periods, underscores (_), or backslashes (\). The name cannot be a an A1 cell reference (1 to 3 letters followed by 1 to 6 numbers). In addition, the name cannot be 'r', 'R', 'c', or 'C' or start with a row or column reference in R1C1 cell reference mode ('R' followed by 1 to 6 numbers or 'C' followed by 1 to 6 numbers). is used by another named reference which also has a scope of the specified . Named reference names are compared case-insensitively. is null or empty. is not a valid formula. The inner exception will contain the describing the reason the formula was not valid. is not defined in the enumeration. is null. does not belong to the workbook owning this collection. The named reference which was added to the collection. Clears all named references from the collection. Determines whether a named reference is in the collection. The named reference to locate in the collection. True if the named reference is found; False otherwise. Finds a named reference in the collection with a scope of the collection's associated .

Named reference names are compared case-insensitively.

The name of the named reference to find. is null or empty. The named reference with the specified name or null if the named reference was not found.
Finds a named reference in the collection with a scope of the specified worksheet.

Named reference names are compared case-insensitively.

The name of the named reference to find. The worksheet that the named reference found must have a scope of. is null or empty. is null. The named reference with the specified name or null if the named reference was not found.
Finds all named references in the collection with the specified name.

Named reference names are compared case-insensitively.

The name of the named references to find. is null or empty. An array of instances with the specified name.
Removes the specified named reference from the collection. The named reference to remove fro the collection. True if the named reference existed in the collection and was removed; False otherwise. Removes the named reference at the specified index in the collection. The zero-based index of the named reference in the collection. is less than zero or is greater than or equal to . Gets the number of named references in the collection. The number of named references in the collection. Gets the named reference at the specified index. The zero-based index of the named reference to get. is less than zero or is greater than or equal to . The named reference at the specified index. Gets the workbook associated with this collection. The workbook associated with this collection. Class which exposes the various print options available for a worksheet which can be saved with both a worksheet and a custom view.

This class provides a way to control how a worksheet is printed.

Resets the print options to their default settings.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank worksheet.

Gets or sets the margin at the bottom of each printed page of the worksheet. The assigned value is outside the valid margin range of 0 and 100. The margin at the bottom of each printed page of the worksheet. Gets or sets the value indicating whether the printed pages should be centered horizontally. The value indicating whether the printed pages should be centered horizontally. Gets or sets the value indicating whether the printed pages should be centered vertically. The value indicating whether the printed pages should be centered vertically. Gets or sets the value indicating whether the printed pages should be printed using draft quality. The value indicating whether the printed pages should be printed using draft quality. Gets or sets the footer for each page of the printed worksheet.

The '&' character in the header and footer is a special character. Depending on what is after it, the formatting of the text can be controlled or dynamic text can be inserted. Below is a list of the available commands: Section commands &L The following text will appear in the left section. The formatting of new sections is always the default formatting, regardless of the formatting of the previous section. &C The following text will appear in the center section. The formatting of new sections is always the default formatting, regardless of the formatting of the previous section. &R The following text will appear in the right section. The formatting of new sections is always the default formatting, regardless of the formatting of the previous section. Replacement commands && Insert the '&' character. &A Insert the current worksheet name. &D Insert the current date. &F Insert the current file name. &G Insert an image (Note: This command is currently not supported). &N Insert the number of pages the worksheet will need to print. &P Insert the current page number. &T Insert the current time. &Z Insert the current file path (without the file name). Formatting commands &B Toggle bold. &E Toggle double underlining. &I Toggle italics. &S Toggle strikethrough. &U Toggle underlining. &X Toggle superscript. &Y Toggle subscript. &<FontSize> Sets a new font size for the following text. The size is expressed as a positive integer. If a number is to follow this command in the header, it must be separated by a space. &"<FontName>" Sets a new font for the following text. If the font name is not recognized, the default font will be used. &"<FontName>,<FontStyle>" Sets the new font and font style for the following text. The font style is usually "Regular", "Bold", "Italic", or "Bold Italic", but can be other styles depending on the font. The available font styles can be seen in the font dialog when a font is selected.

The header or footer string could look like this: &L&"Arial,Bold"&D&CPage &P of &N on &A&R&14&F.

The footer for each page of the worksheet.
Gets or sets the footer margin for each printed page of the worksheet. The assigned value is outside the valid margin range of 0 and 100. The footer margin for each printed page of the worksheet. Gets or sets the header for each page of the printed worksheet.

The '&' character in the header and footer is a special character. Depending on what is after it, the formatting of the text can be controlled or dynamic text can be inserted. Below is a list of the available commands: Section commands &L The following text will appear in the left section. The formatting of new sections is always the default formatting, regardless of the formatting of the previous section. &C The following text will appear in the center section. The formatting of new sections is always the default formatting, regardless of the formatting of the previous section. &R The following text will appear in the right section. The formatting of new sections is always the default formatting, regardless of the formatting of the previous section. Replacement commands && Insert the '&' character. &A Insert the current worksheet name. &D Insert the current date. &F Insert the current file name. &G Insert an image (Note: This command is currently not supported). &N Insert the number of pages the worksheet will need to print. &P Insert the current page number. &T Insert the current time. &Z Insert the current file path (without the file name). Formatting commands &B Toggle bold. &E Toggle double underlining. &I Toggle italics. &S Toggle strikethrough. &U Toggle underlining. &X Toggle superscript. &Y Toggle subscript. &<FontSize> Sets a new font size for the following text. The size is expressed as a positive integer. If a number is to follow this command in the header, it must be separated by a space. &"<FontName>" Sets a new font for the following text. If the font name is not recognized, the default font will be used. &"<FontName>,<FontStyle>" Sets the new font and font style for the following text. The font style is usually "Regular", "Bold", "Italic", or "Bold Italic", but can be other styles depending on the font. The available font styles can be seen in the font dialog when a font is selected.

The header or footer string could look like this: &L&"Arial,Bold"&D&CPage &P of &N on &A&R&14&F.

The header for each page of the worksheet.
Gets or sets the header margin for each printed page of the worksheet. The assigned value is outside the valid margin range of 0 and 100. The header margin for each printed page of the worksheet. Gets or sets the margin at the left of each printed page of the worksheet. The assigned value is outside the valid margin range of 0 and 100. The margin at the left of each printed page of the worksheet. Gets or sets the maximum number of pages allowed in the horizontal direction to print the worksheet.

A value of zero indicates no maximum is used in the horizontal direction. As many pages as needed will be used.

Note: For MaxPagesHorizontally and to affect the way the worksheet is printed, must be set to a value of FitToPages. However, if the the ScalingType is different and these values aren't used, they will still be saved with the worksheet.

The value assigned is outside the valid range of 0 and 32767. The maximum number of pages allowed in the horizontal direction to print the worksheet.
Gets or sets the maximum number of pages allowed in the vertical direction to print the worksheet.

A value of zero indicates no maximum is used in the vertical direction. As many pages as needed will be used.

Note: For and MaxPagesVertically to affect the way the worksheet is printed, must be set to a value of FitToPages. However, if the the ScalingType is different and these values aren't used, they will still be saved with the worksheet.

The value assigned is outside the valid range of 0 and 32767. The maximum number of pages allowed in the vertical direction to print the worksheet.
Gets or sets the number of copies to print. The assigned value is outside the valid range of 1 and 65535. The number of copies to print. Gets or sets the orientation for each page of the printed worksheet. The assigned value is not defined in the enumeration. The orientation for each page of the printed worksheet. Returns the resolved orientation for each page of the printed worksheet. Gets or sets the order in which to print pages for multiple page worksheets. The assigned value is not defined in the enumeration. The order in which to print pages for multiple page worksheets. Gets or sets the method with which pages are numbered.

If this is set to a value of UseStartPageNumber, the first page is numbered using the .

The assigned value is not defined in the enumeration. The method with which pages are numbered.
Gets or sets the paper size for each printed page of the worksheet. The assigned value is not defined in the enumeration. The paper size for each printed page of the worksheet. Gets or sets the way error values of cells are printed.

A cell can have an error value if its is set directly to an or if it is set to a that evaluates to an error.

The assigned value is not defined in the enumeration. The way error values of cells are printed.
Gets or sets the value which indicates whether to print the worksheet gridlines. The value which indicates whether to print the worksheet gridlines. Gets or sets the value indicating whether the worksheet should be printed in black and white. The value indicating whether the worksheet should be printed in black and white. Gets or sets the way cell comments are printed.

If this is set to a value of PrintAsDisplayed, the comments will only print if they are displayed on the worksheet. If comments are hidden but indicators are shown, neither the indicators nor the comments will print.

The assigned value is not defined in the enumeration. The way cell notes are printed.
Gets or sets the value indicating whether to print row and column headers.

The row and column headers show the identifier of the row or column.

The value indicating whether to print row and column headers.
Gets or sets the horizontal print resolution in DPI. The value assigned is outside the valid range of 0 and 65535. The horizontal print resolution in DPI. Gets or sets the margin at the right of each printed page of the worksheet. The assigned value is outside the valid margin range of 0 and 100. The margin at the right of each printed page of the worksheet. Gets or sets the scaling factor to use when printing the worksheet.

The scaling factor is similar to magnifications in that is it stored as a percentage of the normal scaling. A value of 100 indicates normal scaling whereas a value of 200 indicates the worksheet is scaled to twice its normal size.

Note: For ScalingFactor to affect the way the worksheet is printed, must be set to a value of UseScalingFactor.

The assigned value is outside the valid range of 10 and 400. The scaling factor to use when printing the worksheet.
Gets or sets the method for scaling the worksheet when it is printed.

If this is set to a value of UseScalingFactor, is used to uniformly scale the worksheet on the printed pages.

If this is set to a value of FitToPages, and are used to set the maximum number of pages to fit the printed worksheet into in both directions.

The assigned value is not defined in the enumeration. The method for scaling the worksheet when it is printed.
Gets or sets the page number for the first printed page of the worksheet.

For this value to be used, must be set to a value of UseStartPageNumber.

The assigned value is outside the valid range of -32765 and 32767. The page number for the first printed page of the worksheet.
Gets or sets the margin at the top of each printed page of the worksheet. The assigned value is outside the valid margin range of 0 and 100. The margin at the top of each printed page of the worksheet. Gets or sets the vertical print resolution in DPI. The value assigned is outside the valid range of 0 and 65535. The vertical print resolution in DPI. System.String Represents the ST_CellRef simple XML type. Represents the ST_Ref simple XML type. Represents the ST_Sqref simple XML type. Represents the ST_SheetState simple XML type, which is an xml-escaped string. Represents the ST_RelationshipID simple XML type. System.Int16 System.Int32 System.Int64 System.Int16 System.Int32 System.Int64 System.Boolean System.DateTime System.Single System.Single System.Double System.UInt16 System.UInt16 System.UInt32 System.UInt32 System.UInt64 System.UInt64 System.Byte System.SByte System.Decimal System.Object Represents the ST_VectorBaseType simple XML type. Represents the ST_Visibility simple XML type. Represents the ST_SheetState simple XML type Represents the ST_CalcMode simple XML type. Represents the ST_RefMode simple XML type. Represents the ST_FontScheme simple XML type. Represents the ST_UnderlineValues simple XML type. Represents the ST_VerticalAlignRun simple XML type. Represents the ST_BorderStyle simple XML type. Represents the ST_SheetViewType simple XML type. Represents the ST_Pane simple XML type. Represents the ST_GradientType simple XML type. Represents the ST_PatternType simple XML type. Represents the ST_Objects simple XML type. Represents the ST_Links simple XML type. Represents the ST_CellType simple XML type. Represents the ST_HorizontalAlignment simple XML type. Represents the ST_VerticalAlignment simple XML type. Represents the ST_Orientation simple XML type. Represents the ST_PageOrder simple XML type. Represents the ST_CellComments simple XML type. Represents the ST_PrintError simple XML type. Represents the ST_PaneState simple XML type. Represents the ST_Guid simple XML type. Represents the ST_Comments simple XML type. Represents the ST_Comments simple XML type. Represents the ST_UnsignedIntHex simple XML type. Represents the ST_SystemColorVal simple XML type. Represents the ST_EditAs simple XML type. Represents the ST_DrawingElementId simple XML type. Represents the ST_Coordinate simple XML type. Represents the ST_PositiveCoordinate simple XML type. WorksheetVisibility.Visible WorksheetVisibility.Hidden WorksheetVisibility.StrongHidden CalculationMode.Automatic CalculationMode.AutomaticExceptForDataTables CalculationMode.Manual CellReferenceMode.A1 CellReferenceMode.R1C1 This font is the major font for this theme This font is the minor font for this theme This font is not a theme font FontUnderlineStyle.Double FontUnderlineStyle.DoubleAccounting FontUnderlineStyle.None FontUnderlineStyle.Single FontUnderlineStyle.SingleAccounting FontSuperscriptSubscriptStyle.None FontSuperscriptSubscriptStyle.Subscript FontSuperscriptSubscriptStyle.Superscript CellBorderLineStyle.DashDot CellBorderLineStyle.DashDotDot CellBorderLineStyle.Dashed CellBorderLineStyle.Dotted CellBorderLineStyle.Double CellBorderLineStyle.Hair CellBorderLineStyle.Medium CellBorderLineStyle.MediumDashDot CellBorderLineStyle.MediumDashDotDot CellBorderLineStyle.MediumDashed CellBorderLineStyle.None CellBorderLineStyle.SlantedDashDot CellBorderLineStyle.Thick CellBorderLineStyle.Thin the transition from color to the next is along a line the boundary of the transition from one color to the next is a rectangle defined by the top, bottom, left and right attributes on the gradientFill Infragistics.Excel.FillPatternStyle FillPatternStyle.None FillPatternStyle.Solid FillPatternStyle.Gray50percent FillPatternStyle.Gray75percent FillPatternStyle.Gray25percent FillPatternStyle.HorizontalStripe FillPatternStyle.VerticalStripe FillPatternStyle.DiagonalStripe FillPatternStyle.ReverseDiagonalStripe FillPatternStyle.DiagonalCrosshatch FillPatternStyle.ThickDiagonalCrosshatch FillPatternStyle.ThinHorizontalStripe FillPatternStyle.ThinVerticalStripe FillPatternStyle.ThinDiagonalStripe FillPatternStyle.ThinReverseDiagonalStripe FillPatternStyle.ThinHorizontalCrosshatch FillPatternStyle.ThinDiagonalCrosshatch FillPatternStyle.Gray12percent FillPatternStyle.Gray6percent Infragistics.Excel.HorizontalCellAlignment HorizontalCellAlignment.Center HorizontalCellAlignment.CenterAcrossSelection HorizontalCellAlignment.Fill HorizontalCellAlignment.General HorizontalCellAlignment.Justify HorizontalCellAlignment.Left HorizontalCellAlignment.Right Infragistics.Excel.VerticalCellAlignment VerticalCellAlignment.Bottom VerticalCellAlignment.Center VerticalCellAlignment.Distributed VerticalCellAlignment.Justify VerticalCellAlignment.Top No value WorksheetShape.ShapeId WorksheetShape.Visible WorksheetShape.GetBoundsInTwips.Width WorksheetShape.GetBoundsInTwips.Height WorksheetShape.GetBoundsInTwips.Left WorksheetShape.GetBoundsInTwips.Top Group-specific; represents the horizontal component of the offset for the first child. Always the same as Off.x. Group-specific; represents the vertical component of the offset for the first child. Always the same as Off.y Group-specific; represents the width of the child extent area. Always the same as Ext.cx. Group-specific; represents the height of the child extent area. Always the same as Ext.cy. WorksheetImage.Image For internal use only. The IPackage.GetPart method threw an exception. The IPackagePart conforms fully to the ECMA TC45 Open Packaging Conventions. The package implementer shall require a part name. [M1.1] The package implementer shall require a content type and the format designer shall specify the content type. [M1.2], [M1.13] A part name shall not have empty segments. [M1.3] A part name shall start with a forward slash (“/”) character. [M1.4] A part name shall not have a forward slash as the last character. [M1.5] A segment shall not hold any characters other than pchar characters. [M1.6] A segment shall not contain percent-encoded forward slash (“/”), or backward slash (“\”) characters. [M1.7] A segment shall not contain percent-encoded unreserved characters. [M1.8] A segment shall not end with a dot (“.”) character. [M1.9] A segment shall include at least one non-dot character. [M1.10] A package implementer shall neither create nor recognize a part with a part name derived from another part name by appending segments to it. [M1.11] Part name equivalence is determined by comparing part names as case-insensitive ASCII strings. Packages shall not contain equivalent part names and package implementers shall neither create nor recognize packages with equivalent part names. [M1.12] IPackage implementers shall only create and only recognize parts with a content type; format designers shall specify a content type for each part included in the format. Content types for package parts shall fit the definition and syntax for media types as specified in RFC 2616, §3.7. [M1.13] Content types shall not use linear white space either between the type and subtype or between an attribute and its value. Content types also shall not have leading or trailing white spaces. IPackage implementers shall create only such content types and shall require such content types when retrieving a part from a package; format designers shall specify only such content types for inclusion in the format. [M1.14] The package implementer shall require a content type that does not include comments and the format designer shall specify such a content type. [M1.15] IPackage implementers and format designers shall not create content types with parameters for the package specific parts defined in this Open Packaging specification and shall treat the presence of parameters in these content types as an error. [M1.22] If the package implementer specifies a growth hint, it is set when a part is created and the package implementer shall not change the growth hint after the part has been created. [M1.16]

The PackageConformanceManager does not verify this convention.

XML content shall be encoded using either UTF-8 or UTF-16. If any part includes an encoding declaration, as defined in §4.3.3 of the XML 1.0 specification, that declaration shall not name any encoding other than UTF-8 or UTF-16. IPackage implementers shall enforce this requirement upon creation and retrieval of the XML content. [M1.17] XML content shall be valid against the corresponding XSD schema defined in this Open Packaging specification. In particular, the XML content shall not contain elements or attributes drawn from namespaces that are not explicitly defined in the corresponding XSD unless the XSD allows elements or attributes drawn from any namespace to be present in particular locations in the XML markup. IPackage implementers shall enforce this requirement upon creation and retrieval of the XML content. [M1.20] XML content shall not contain elements or attributes drawn from “xml” or “xsi” namespaces unless they are explicitly defined in the XSD schema or by other means described in this Open Packaging specification. IPackage implementers shall enforce this requirement upon creation and retrieval of the XML content. [M1.21] The Relationships part shall not have relationships to any other part. IPackage implementers shall enforce this requirement upon the attempt to create such a relationship and shall treat any such relationship as invalid. [M1.25] The package implementer shall require that every Relationship element has an Id attribute, the value of which is unique within the Relationships part, and that the Id type is xsd:ID, the value of which conforms to the naming restrictions for xsd:IDas described in the W3C Recommendation “XML Schema Part 2: Datatypes.” [M1.26] The package implementer shall require the Type attribute to be a URI that defines the role of the relationship and the format designer shall specify such a Type. [M1.27] The package implementer shall require the Target attribute to be a URI reference pointing to a target resource. The URI reference shall be a URI or a relative reference. [M1.28] When set to Internal, the Target attribute shall be a relative reference and that reference is interpreted relative to the “parent” part. For package relationships, the package implementer shallresolve relative references in the Target attribute against the pack URI that identifies the entire package resource. [M1.29] The package implementer shall name relationship parts according to the special relationships part naming convention and require that parts with names that conform to this naming convention have the content type for a Relationships part. [M1.30] Constants which define the reason that a OpenPackagingNonConformanceException was thrown. OpenPackagingNonConformanceException class Undefined; used for variable initialization. The IPackagePart in a IPackage is determined to be the core properties relationship for the package, after one has already been processed.

As stipulated in Annex H, Part 4 of 'Office Open XML Part 2 - Open Packaging Conventions':

"The format designer shall specify and the format producer shall create at most one core properties relationship for a package. A format consumer shall consider more than one core properties relationship for a package to be an error."

The IPackagePart in a IPackage is determined to be the core properties relationship for the package, and that IPackagePart is found to contain references to the Markup Compatibility namespace.

As stipulated in Annex H, Part 4 of 'Office Open XML Part 2 - Open Packaging Conventions':

"The format designer shall not specify and the format producer shall not create Core Properties that use the Markup Compatibility namespace as defined in Annex F, “Standard Namespaces and Content Types”. A format consumer shall consider the use of the Markup Compatibility namespace to be an error."

The IPackagePart in a IPackage is determined to be the core properties relationship for the package, and that IPackagePart is found to contain refinements to Dublin Core elements other than the 'dcterms:created' and 'dcterms:modified' elements.

As stipulated in Annex H, Part 4 of 'Office Open XML Part 2 - Open Packaging Conventions':

"Producers shall not create a document element that contains refinements to the Dublin Core elements, except for the two specified in the schema: dcterms:created and dcterms:modified. Consumers shall consider a document element that violates this constraint to be an error."

The IPackagePart in a IPackage is determined to be the core properties relationship for the package, and that IPackagePart is found to contain an element which contains the xml:lang attribute.

As stipulated in Annex H, Part 4 of 'Office Open XML Part 2 - Open Packaging Conventions':

"Producers shall not create a document element that contains the xml:lang attribute. Consumers shall consider a document element that violates this constraint to be an error."

The IPackagePart in a IPackage is determined to be the core properties relationship for the package, and that IPackagePart is found to contain an element which contains the xsi:type attribute, with the exception of the 'dcterms:created' and 'dcterms:modified' elements, for which the attribute is required, and is expected to hold the value 'dcterms:W3CDTF'.

As stipulated in Annex H, Part 4 of 'Office Open XML Part 2 - Open Packaging Conventions':

"Producers shall not create a document element that contains the xsi:type attribute, except for a 'dcterms:created' or 'dcterms:modified' element where the xsi:type attribute shall be present and shall hold the value dcterms:W3CDTF, where dcterms is the namespace prefix of the Dublin Core namespace. Consumers shall consider a document element that violates this constraint to be an error."

A loaded IPackagePart is found to contain a DTD (Document Type Definition) declaration.

As stipulated in section 8.1.4, paragraph 2 of 'Office Open XML Part 2 - Open Packaging Conventions':

"The XML 1.0 specification allows for the usage of Document Type Definitions (DTDs), which enable Denial of Service attacks, typically through the use of an internal entity expansion technique. As mitigation for this potential threat, DTD declarations shall not be used in the XML markup defined in this Open Packaging specification. IPackage implementers shall enforce this requirement upon creation and retrieval of the XML content and shall treat the presence of DTD declarations as an error."

A loaded IPackagePart has the same name as an existing one.

As stipulated in section 8.1.1.2 of 'Office Open XML Part 2 - Open Packaging Conventions':

"Part name equivalence is determined by comparing part names as case-insensitive ASCII strings. Packages shall not contain equivalent part names and package implementers shall neither create nor recognize packages with equivalent part names."

Writes the global records that define the workbook data (not the worksheets). True if any workshete in the workbookhas shapes; False otherwise Class used to represent the Fill element This class is used the represent the Format (xf) elements http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing xdr http://schemas.openxmlformats.org/drawingml/2006/main a {[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}} http://schemas.openxmlformats.org/drawingml/2006/main Returns a dictionary which contains the name of an attribute that needs to be handled. blip http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/blip Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. cNvPr.id = Infragistics.Excel.WorksheetShape.ShapeId blipFill http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/blipFill Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. clientData http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/clientData Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. prstGeom http://schemas.openxmlformats.org/drawingml/2006/main/prstGeom Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. r http://schemas.openxmlformats.org/drawingml/2006/main/r Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. rPr http://schemas.openxmlformats.org/drawingml/2006/main/rPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. solidFill http://schemas.openxmlformats.org/drawingml/2006/main/solidFill Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. sp http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/sp Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. spPr http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/spPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. t http://schemas.openxmlformats.org/drawingml/2006/main/t Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. txBody http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/txBody Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/absoluteAnchor Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. ext.cx, ext.cy = Infragistics.Excel.WorksheetShape.GetBoundsInTwips chExt http://schemas.openxmlformats.org/drawingml/2006/main/chExt Saves the data for this element to the specified manager. Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. off.x, off.y = Infragistics.Excel.WorksheetShape.GetBoundsInTwips off http://schemas.openxmlformats.org/drawingml/2006/main/chOff Saves the data for this element to the specified manager. cNvCxnSpPr http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/cNvCxnSpPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. cNvGrpSpPr http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/cNvGrpSpPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. cNvPicPr http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/cNvPicPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. cNvPr http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/cNvPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. cNvPr.id = Infragistics.Excel.WorksheetShape.ShapeId http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/col http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/colOff cxnSp http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/cxnSp Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. cxnSpLocks http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/cxnSpLocks Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/row endCxn http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/endCxn Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. ext http://schemas.openxmlformats.org/drawingml/2006/main/ext Saves the data for this element to the specified manager. http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/from http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/col grpSpLocks http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/grpSpLocks Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. grpSpPr http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/grpSpPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. nvCxnSp http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/nvCxnSp Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/col nvPicPr http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/nvPicPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. off http://schemas.openxmlformats.org/drawingml/2006/main/off Saves the data for this element to the specified manager. http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/oneCellAnchor pic http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/pic Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. picLocks http://schemas.openxmlformats.org/drawingml/2006/main/picLocks Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/row stCxn http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/stCxn Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/to http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/twoCellAnchor http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing/wsDr xfrm http://schemas.openxmlformats.org/drawingml/2006/main/xfrm Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. This class is used the represent the ceell style elements Called when the corresponding DrawingML element ('sp', 'pic', or 'grpSp') is loaded for the specified shape. The WorksheetShape-derived instance that was created. The ContextStack instance onto which the shape will be pushed. Called when the corresponding DrawingML element ('sp', 'pic', or 'grpSp') is loaded for the specified shape. The WorksheetShape-derived instance that was created. The ContextStack instance onto which the shape will be pushed. A ShapeAttributes instance which contains the attributes specific to the 'sp' element, which corresponds to our UnknownShape class. Pulls a generic list containing WorksheetShape instances off the ContextStack, removes the first item from that list and returns it. Pulls a generic list containing WorksheetShape instances off the ContextStack, removes the first item from that list and returns it. Pulls a generic list containing WorksheetShape instances off the ContextStack, and returns the first item from that list. Called immediately before the corresponding DrawingML element is created for the specified shape. The WorksheetShape-derived instance about to be serialized. Specifies whether the shape belongs to the worksheet's Shapes collection. Represents the immediate children of the 'sp', 'pic' and 'grpSp' DrawingML elements. Wraps the element and attributes values of the 'twoCellAnchor' DrawingML element and its descendants ('to', 'from', 'off', 'ext', etc.) Wraps the element and attributes values of the 'clientData' DrawingML element. Wraps the element and attributes values of the 'xfrm' DrawingML element and its descendants. Wraps the attribute values of the 'sp' DrawingML element. Width Height Horizontal coordinate Vertical coordinate Returns a CellRef instance from the specified string. A string implied to be conformant with the ST_CellRef simple XML data type. A CellRef instance or null if none could be parsed. Returns the absolute A1 representation of this instance. Returns the name of this instance. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Handles the writing of the Color attributes based on the provided ColorInfo object The ColorInfo object for the owning element (ColorElement, BgColorElement, FgColorElement) The owning Excel2007WorkbookSerializationManager The owning XML element The value parameter from the Save() method, passed in case its needed in the future Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. "bookViews" "http://schemas.openxmlformats.org/spreadsheetml/2006/main/bookViews" Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. "calcPr" "http://schemas.openxmlformats.org/spreadsheetml/2006/main/calcPr" Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. customSheetView http://schemas.openxmlformats.org/spreadsheetml/2006/main/customSheetView Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. customSheetViews http://schemas.openxmlformats.org/spreadsheetml/2006/main/customSheetViews Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. customWorkbookView http://schemas.openxmlformats.org/spreadsheetml/2006/main/customWorkbookView Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. customWorkbookViews http://schemas.openxmlformats.org/spreadsheetml/2006/main/customWorkbookViews Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. Returns the XLSXElementType constant which identifies this element. Loads the data for this element from the specified manager. Returns the XLSXElementType constant which identifies this element. drawing http://schemas.openxmlformats.org/spreadsheetml/2006/main/drawing Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. cell http://schemas.openxmlformats.org/spreadsheetml/2006/main/cell Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. formula http://schemas.openxmlformats.org/spreadsheetml/2006/main/formula Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. outlinePr http://schemas.openxmlformats.org/spreadsheetml/2006/main/outlinePr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. pageSetUpPr http://schemas.openxmlformats.org/spreadsheetml/2006/main/pageSetUpPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. sheetPr http://schemas.openxmlformats.org/spreadsheetml/2006/main/sheetPr Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. tabColor http://schemas.openxmlformats.org/spreadsheetml/2006/main/tabColor Loads the data for this element from the specified manager. Saves the data for this element to the specified manager. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. "workbook" "http://schemas.openxmlformats.org/spreadsheetml/2006/main/workbook" Returns the XLSXElementType constant which identifies this element. "workbookview" "http://schemas.openxmlformats.org/spreadsheetml/2006/main/workbookView" Returns the XLSXElementType constant which identifies this element. Returns the XLSXElementType constant which identifies this element. Represents the [workbook] SpreadsheetML element Represents the [workbook->bookViews] SpreadsheetML element Represents the [workbook->bookViews->workbookView] SpreadsheetML element Represents the [workbook->fileVersion] SpreadsheetML element Represents the [sheet] (Worksheet) SpreadsheetML element Represents the [c] (cell) SpreadsheetML element Represents the [calcChain] SpreadsheetML element Represents the [sst] SpreadsheetML element Represents the [styleSheet] SpreadsheetML element Represents the [externalLink] SpreadsheetML element Represents the [workbook->calcPr] SpreadsheetML element Represents the [styleSheet->fonts] SpreadsheetML element Represents the [styleSheet->fonts->font] SpreadsheetML element Represents the [styleSheet->fonts->font->b] SpreadsheetML element Represents the [styleSheet->fonts->font->color] SpreadsheetML element Represents the [styleSheet->fonts->font->i] SpreadsheetML element Represents the [styleSheet->fonts->font->name] SpreadsheetML element Represents the [styleSheet->fonts->font->outline] SpreadsheetML element Represents the [styleSheet->fonts->font->strike] SpreadsheetML element Represents the [styleSheet->fonts->font->sz] SpreadsheetML element Represents the [styleSheet->fonts->font->u] SpreadsheetML element Represents the [styleSheet->fonts->font->vertAlign] SpreadsheetML element Represents the [styleSheet->borders] SpreadsheetML element Represents the [styleSheet->borders->border] SpreadsheetML element Represents the [styleSheet->borders->border->left] SpreadsheetML element Represents the [styleSheet->borders->border->right] SpreadsheetML element Represents the [styleSheet->borders->border->top] SpreadsheetML element Represents the [styleSheet->borders->border->bottom] SpreadsheetML element Represents the [styleSheet->borders->border->diagonal] SpreadsheetML element Represents the [styleSheet->borders->border->horizontal] SpreadsheetML element Represents the [styleSheet->borders->border->vertical] SpreadsheetML element Represents the [styleSheet->fonts->font->family] SpreadsheetML element Represents the [styleSheet->fonts->font->scheme] SpreadsheetML element Represents the [styleSheet->fills] SpreadsheetML element Represents the [styleSheet->fills->fill] SpreadsheetML element Represents the [styleSheet->fills->fill->gradientFill] SpreadsheetML element Represents the [styleSheet->fills->fill->patternFill] SpreadsheetML element Represents the [styleSheet->fills->fill->patternFill->bgColor] SpreadsheetML element Represents the [styleSheet->fills->fill->patternFill->fgColor] SpreadsheetML element Represents the [styleSheet->fills->fill->gradientFill->stop] SpreadsheetML element Represents the [styleSheet->cellStyles] SpreadsheetML element Represents the [styleSheet->cellStyleXfs] SpreadsheetML element Represents the [styleSheet->cellXfs] SpreadsheetML element Represents the [styleSheet->dxfs] SpreadsheetML element Represents the [styleSheet->dxfs->dxf] SpreadsheetML element Represents the [styleSheet->cellStyleXfs->xf] SpreadsheetML element Represents the [styleSheet->cellStyleXfs->xf->protection] SpreadsheetML element Represents the [styleSheet->cellStyleXfs->xf->alignment] SpreadsheetML element Represents the [styleSheet->cellStyles->cellStyle] SpreadsheetML element Represents the [styleSheet->numFmts->numFmt] SpreadsheetML element Represents the [styleSheet->numFmts] SpreadsheetML element Represents the [styleSheet->colors] SpreadsheetML element Represents the [styleSheet->colors->indexedColors] SpreadsheetML element Represents the [styleSheet->colors->mruColors] SpreadsheetML element Represents the [styleSheet->colors->indexedColors->rgbColor] SpreadsheetML element Represents the [styleSheet->tableStyles] SpreadsheetML element Represents the [styleSheet->tableStyles->tableStyle] SpreadsheetML element Represents the [worksheet] SpreadsheetML element Represents the [workbook->sheets] SpreadsheetML element Represents the [worksheet->sheetViews] SpreadsheetML element Represents the [worksheet->sheetViews->sheetView] SpreadsheetML element Represents the pageMargins element of [chartsheet], [customSheetView], [dialogsheet], or [worksheet] SpreadsheetML elements. Represents the printOptions of [customSheetView], [dialogsheet], or [worksheet] SpreadsheetML elements. Represents the [worksheet->sheewView->selection] SpreadsheetML element Represents the [worksheet->dimension] SpreadsheetML element Represents the [worksheet->sheetFormatPr] SpreadsheetML element Represents the [workbook->workbookPr] SpreadsheetML element Represents the [worksheet->sheetData] SpreadsheetML element Represents the [worksheet->sheetData->row] SpreadsheetML element Represents the v (CellValue) SpreadsheetML element Represents the (si) SpreadsheetML element Represents the (t) SpreadsheetML element Represents the [sst->si->r] SpreadsheetML element Represents the (rPr) SpreadsheetML element Represents the (rFont) SpreadsheetML element Represents the (pageSetup) SpreadsheetML element Represents the (col) SpreadsheetML element Represents the (cols) SpreadsheetML element Represents the (pane) SpreadsheetML element Represents the (headerFooter) SpreadsheetML element Represents the (oddHeader) SpreadsheetML element Represents the (oddFooter) SpreadsheetML element Represents the (customSheetViews) SpreadsheetML element Represents the (customSheetView) SpreadsheetML element Represents the (customWorkbookViews) SpreadsheetML element Represents the (customWorkbookView) SpreadsheetML element Represents the (sheetPr) SpreadsheetML element Represents the (outlinePr) SpreadsheetML element Represents the (pageSetUpPr) SpreadsheetML element Represents the (tabColor) SpreadsheetML element Represents the (mergeCell) SpreadsheetML element Represents the (mergeCells) SpreadsheetML element Represents the (picture) SpreadsheetML element Represents the (picture) SpreadsheetML element Represents the (f) SpreadsheetML element Represents the brk (Break) SpreadsheetML element Represents the colBreaks (Vertical Page Breaks) SpreadsheetML element Represents the (definedName) SpreadsheetML element Represents the (definedNames) SpreadsheetML element Represents the (externalReferences) SpreadsheetML element Represents the (externalReference) SpreadsheetML element Represents the (externalBook) SpreadsheetML element Represents the (sheetNames) SpreadsheetML element Represents the (sheetName) SpreadsheetML element Represents the (sheetDataSet) SpreadsheetML element Represents the (cell) Spreadsheet ML element Represents the (drawing) SpreadsheetML element Represents the (comments) SpreadsheetML element Represents the (authors) SpreadsheetML element Represents the (author) SpreadsheetML element Represents the (commentList) SpreadsheetML element Represents the (comment) SpreadsheetML element Represents the (text) SpreadsheetML element Represents the (legacyDrawing) SpreadsheetML element Represents the (dataValidations) SpreadsheetML element Class used to represent gradient stops by the GradientFillElement Returns whether the specified IPackagePart is fully conformant to the ECMA TC45 Open Packaging Conventions. A string representing the absolute target to the IPackagePart to test. A boolean indicating whether the specified IPackagePart is ECMA TC45-conformant. Thrown if is null or empty. Returns whether the specified IPackagePart is fully conformant to the ECMA TC45 Open Packaging Conventions. The URI of the IPackagePart to test. A boolean indicating whether the specified IPackagePart is ECMA TC45-conformant. Thrown if is null. Returns whether the specified IPackagePart is fully conformant to the ECMA TC45 Open Packaging Conventions. The IPackagePart to test. A boolean indicating whether the specified IPackagePart is ECMA TC45-conformant. Thrown if is null. Verifies that the specified IPackage conforms to the Open Packing Conventions established by ECMA TC45. Throws an exception if the reason for non-conformance warrants treating the whole package as invalid. The IPackage to verify True if all PackageParts passed all conformance tests, false otherwise Thrown if is null. Thrown if a part was determined to be non-conformant, and the degree of non-conformance is such that the entire package should be considered invalid. Verifies that the specified IPackage conforms to the Open Packing Conventions established by ECMA TC45. The IPackage to verify A dictionary to which the non-conformant parts are added. A dictionary to which the conformant parts are added. [out] Upon return, contains a reference to the PackageNonConformanceException-derived exception that describes the reason the package was determined to be non-conformant, or null if the package was at least partially conformant. True if all PackageParts passed all conformance tests, false otherwise Verifies that the specified IPackage conforms to the Open Packing Conventions established by ECMA TC45. The IPackage to verify A dictionary to which the non-conformant parts are added. A dictionary to which the conformant parts are added. A boolean specifying whether or not to verify the contents of the markup against the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). [out] Upon return, contains a reference to the PackageNonConformanceException-derived exception that describes the reason the package was determined to be non-conformant, or null if the package was at least partially conformant. True if all PackageParts passed all conformance tests, false otherwise Marks each member of the specified OpenPackagingNonConformanceReason list as exempt from conformance verification. A generic list of the OpenPackagingNonConformanceReason constants to mark as exempt. Marks the specified OpenPackagingNonConformanceReason as exempt from conformance verification. The OpenPackagingNonConformanceReason to mark as exempt. Thrown when a SpreadsheetMLpackage is found to be non-conformant. Returns the IPackagePart instance which caused the exception to be thrown, or null (Nothing in VB) if the exception was not caused by a IPackagePart. Returns the reason the exception was thrown. Represents a group of shapes in a worksheet. This group is also a shape which can be positioned and contained within another group or on a worksheet. Abstract base class for all shapes (atomic or compound) in a worksheet.

Atomic shapes are singular shape entities, such as an image, a polygon, or text. Compound shapes are groupings of shapes, and are represented by instances.

Currently, not all shape information is customizable (such as shape rotation). However, for round-tripping purposes, when a shape is loaded from an Excel file, this information in maintained with the shape. See for more information about unsupported data.

Clears the cached unknown shape data which was read in from a parsed excel file.

This method will only be needed until all shape information is supported and customizable. After all shape data can be controlled, this method will become obsolete. Currently, all unsupported data will be stored with the shape for round-tripping purposes. For example, if an Excel file with complex and unsupported shapes is loaded into a instance, some cell values are changed, and it is saved to the same file, the complex shapes will still exist in the workbook. However, if a loaded shape needs to be modified before it is saved back, this method allows for that unsupported data to be removed while all supported data is maintained.

Note: This method only clears unsupported data. In future versions of the product, as more shape data is supported, this method will have different effects on the shape, until eventually all data is supported and this method will have no effect on the shape.

This method is called on an instance.
Gets the bounds of the shape in twips (1/20th of a point).

The bounds returned by this method are only valid with the current configuration of the worksheet. If any rows or columns before or within the shape are resized, these bounds will no longer reflect the position of the shape.

The or are null, in which case the shape has no bounds. The bounds of the shape on its worksheet.
Sets the bounds of the shape in twips (1/20th of a point).

The shape will only be position at the specified bounds while the worksheet remains in the current configuration. If any rows or columns before or within the shape are resized, the shape will no longer be placed at the bounds specified.

is null. The worksheet on which the shape should be placed. The new bounds where the shape should be placed.
Gets or sets the cell where the bottom-right corner of the shape resides.

This anchor cell, along with the , determines where the shape will be positioned on the worksheet. In addition, the and properties allow for finer control of the shape's position.

The value assigned is a cell whose worksheet is not the same as this shape's worksheet. The value assigned is null and this shape already exists on a worksheet or group. The cell where the bottom-right corner of the shape resides.
Gets or sets the position in the of the shape's bottom-right corner, expressed in percentages.

These percentages are expressed as distance across the associated dimension of the cell, starting at the top-left corner of the cell. For example, (0.0, 0.0) represents the top-left corner of the cell, whereas (100.0, 100.0) represents the bottom-right corner of the cell. (50.0, 10.0) would represent the location in the cell which is centered horizontally, and a tenth of the way down from the top.

Either coordinate of the value assigned is outside the range of 0.0 to 100.0. The position in the bottom-right corner cell of the shape's bottom-right corner.
Gets or sets the way shapes will be repositioned in excel when cells before or within the shape are resized.

This value will not be saved for shapes contained in a , which inherit their positioning mode from their parent group.

Note: This property setting will only have an effect in Microsoft Excel. It has no bearing on the shape's position when related rows and columns are resized though the Excel assembly. In these situations, shapes will act as though the PositioningMode is set to MoveAndSizeWithCells.

The value assigned is not defined in the enumeration. The way shapes will be repositioned in excel when cells before or within the shape are resized.
Gets or sets the cell where the top-left corner of the shape resides.

This anchor cell, along with the , determines where the shape will be positioned on the worksheet. In addition, the and properties allow for finer control of the shape's position.

The value assigned is a cell whose worksheet is not the same as this shape's worksheet. The value assigned is null and this shape already exists on a worksheet or group. The cell where the top-left corner of the shape resides.
Gets or sets the position in the of the shape's top-left corner, expressed in percentages.

These percentages are expressed as distance across the associated dimension of the cell, starting at the top-left corner of the cell. For example, (0.0, 0.0) represents the top-left corner of the cell, whereas (100.0, 100.0) represents the bottom-right corner of the cell. (50.0, 10.0) would represent the location in the cell which is centered horizontally, and a tenth of the way down from the top.

Either coordinate of the value assigned is outside the range of 0.0 to 100.0. The position in the top-left corner cell of the shape's top-left corner.
Gets or sets the value indicating whether the shape is visible on the worksheet. The value indicating whether the shape is visible on the worksheet. Gets the worksheet on which the shape resides. The worksheet on which the shape resides. // MD 9/2/08 - Cell Comments Creates a new instance. Gets the collection of shapes contained in the group. The collection of shapes contained in the group. Class which exposes the document level properties for a Microsoft Excel file.

The properties exposed by this class can be changed on a Microsoft Excel file by right-clicking it in Windows Explorer and editing the properties on the Summary tab.

Gets or sets the author of the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the author of the document.
Gets or sets the category of the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the category of the document.
Gets or sets the comments associated with the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the comments associated with the document.
Gets or sets the company to which the document belongs.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the company to which the document belongs.
Gets or sets the keywords which describe the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the keywords which describe the document.
Gets or sets the manager associated with the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the manager associated with the document.
Gets or sets the current status of the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string representing the current status of the document.
Gets or sets the subject of the contents of the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the subject of the contents of the document.
Gets or sets the title of the document.

The value of the property has no effect on the contents of the file when opened in a host application. It is simply extra data associated with the document.

A string specifying the title of the document.
Represents the the ways formulas are recalculated when their referenced values change. Formulas must be recalculated manually, by pressing a button in the Microsoft Excel interface. Formulas and data tables are automatically recalculated when the values in referenced cells change. Only formulas are automatically recalculated when the values in referenced cells change. Data tables must be recalculated manually. Represents the different cell border line styles. Use the default border line style. No border. Thin border. Medium border. Dashed border. Dotted border. Thick border. Double-line border. Dotted border with small dots. Dotted border with big dots. Dash-dot border. Medium dash-dot border. Dash-dot-dot border. Medium dash-dot-dot border. Slanted dash-dot border. Represents the various ways cells can be referenced in a formula.

Setting this on the will also affect the row and column labels.

Cells are referenced by first specifying characters representing the column and a one-based number specifying the row (R54 or CA56). The dollar sign ($) can preface one or both identifiers to make them absolute references ($A$7). Without the dollar sign, references still use absolute row and column addresses, although shifting a formula to a new cell will perform a similar shift on all relative references. Cells are referenced in the following format R<RowIndex>C<ColumnIndex> (R34C5 or R2C345). These indices are one-based and represent absolute references. To create a relative reference in R1C1 mode, a relative index must be placed inside square brackets following the R and/or C ( R[-1]C[5] or R9C[-3] ). An R by itself also represents a relative reference and is equivalent to R[0]. Similarly, C is equivalent to C[0], which means a formula of =RC always references the cell which contains the formula. Represents the various ways a date can be stored internally. Dates are stored as time elapsed since 1900. Dates are stored as time elapsed since 1904 (used mainly on Apple computers). Enumeration for a boolean type property that allows for a default setting. This is used in property override situations. Use the current default. True. False. Enumeration for fill pattern styles. Default value is used in property override situations. Use the current default. No fill pattern. Solid fill pattern with fill pattern foreground color. "50% gray" fill pattern. "75% gray" fill pattern. "25% gray" fill pattern. Horizontal stripe fill pattern. Vertical stripe fill pattern. Reverse diagonal stripe fill pattern. Diagonal stripe fill pattern. Diagonal crosshatch fill pattern. Thick diagonal crosshatch fill pattern. Thin horizontal stripe fill pattern. Thin vertical stripe fill pattern. Thin reverse diagonal stripe fill pattern. Thin diagonal stripe fill pattern. Thin horizontal crosshatch fill pattern. Thin diagonal crosshatch fill pattern. "12.5% gray" fill pattern. "6.25% gray" fill pattern. Enumeration for font superscript or subscript style. Default value is used in property override situations. Use the current default. No superscript or subscript style. Superscript style. Subscript style. Enumeration for font underline styles. Default value is used in property override situations. Use the current default. No underline style. Single underline style. Double underline style. Single accounting underline style. Double accounting underline style. Enumeration for horizontal alignment styles. Default value is used in property override situations. Use the current default. Alignment depends on underlying data type. Left alignment. Centered alignment. Right alignment. Repeat cell value to fill whole cell. Justify alignment. Centers the contents of the left-most cell in a center across selection group. All other cells in the center across selection group must be empty. The cells are not merged, and the data may appear to be in a cell other than the left-most cell. Distributed alignment. Represents the various way objects and shapes are displayed in the workbook. All object are be shown. Placeholders are shown in place of objects. No objects or shapes are shown. Represents the page orientations available when a worksheet is printed. The page is printed with the larger dimension horizontal. The page is printed with the larger dimension vertical. The page is printed with the default setting. Represents the ways to order the pages of multiple page worksheets. The first page to print is the top-left page. The next pages printed are below the first page. When there are no more pages below, the page to the right of the top-left page is printed, then the pages below it, and so on. The first page to print is the top-left page. The next pages printed are right of the first page. When there are no more pages to the right, the page below the top-left page is printed, then the pages to the right of it, and so on. Represents the way pages are numbered when printed. Pages are automatically numbered based on the style of the worksheet. The starting page number specified is used for the first page, additional pages receive a page number that it one greater than the previous page. Represents the locations of the various panes which could exist in a multi-pane view of a worksheet. The bottom-right pane of the worksheet. This location is only valid if the worksheet is split both horizontally and veritcally. The top-right pane of the worksheet. This location is only valid if the worksheet is split vertically. If the worksheet is only has left and right panes, this is the location of the right pane. The bottom-left pane of the worksheet. This location is only valid is the worksheet is split horizontally. If the worksheet only has top and bottom panes, this is the location of the bottom pane. This top-left pane of the worksheet. This location is always valid. If the worksheet does not have any pane splits, this is the only pane. If the worksheet only has top and bottom panes, this is the location of the top pane. If the worksheet only has left and right panes, this is the location of the left pane. Represents the various paper sizes available for printing. Undefined Letter 8 1/2\" x 11\" Letter small 8 1/2\" x 11\" Tabloid 11\" x 17\" Ledger 17\" x 11\" Legal 8 1/2\" x 14\" Statement 5 1/2\" x 8 1/2\" Executive 7 1/4\" x 10 1/2\" A3 297mm x 420mm A4 210mm x 297mm A4 small 210mm x 297mm A5 148mm x 210mm B4 (JIS) 257mm x 364mm B5 (JIS) 182mm x 257mm Folio 8 1/2\" x 13\" Quarto 215mm x 275mm 10x14 10\" x 14\" 11x17 11\" x 17\" Note 8 1/2\" x 11\" Envelope #9 3 7/8\" x 8 7/8\" Envelope #10 4 1/8\" x 9 1/2\" Envelope #11 4 1/2\" x 10 3/8\" Envelope #12 4 3/4\" x 11\" Envelope #14 5\" x 11 1/2\" C 17\" x 22\" D 22\" x 34\" E 34\" x 44\" Envelope DL 110mm x 220mm Envelope C5 162mm x 229mm Envelope C3 324mm x 458mm Envelope C4 229mm x 324mm Envelope C6 114mm x 162mm Envelope C6/C5 114mm x 229mm B4 (ISO) 250mm x 353mm B5 (ISO) 176mm x 250mm B6 (ISO) 125mm x 176mm Envelope Italy 110mm x 230mm Envelope Monarch 3 7/8\" x 7 1/2\" 6 3/4 Envelope 3 5/8\" x 6 1/2\" US Standard Fanfold 14 7/8\" x 11\" German Std. Fanfold 8 1/2\" x 12\" German Legal Fanfold 8 1/2\" x 13\" B4 (ISO) 250mm x 353mm Japanese Postcard 100mm x 148mm 9x11 9\" x 11\" 10x11 10\" x 11\" 15x11 15\" x 11\" Envelope Invite 220mm x 220mm Letter Extra 9 1/2\" x 12\" Legal Extra 9 1/2\" x 15\" Tabloid Extra 11 11/16\" x 18\" A4 Extra 235mm x 322mm Letter Transverse 8 1/2\" x 11\" A4 Transverse 210mm x 297mm Letter Extra Transv. 9 1/2\" x 12\" Super A/A4 227mm x 356mm Super B/A3 305mm x 487mm Letter Plus 8 1/2\" x 12 11/16\" A4 Plus 210mm x 330mm A5 Transverse 148mm x 210mm B5 (JIS) Transverse 182mm x 257mm A3 Extra 322mm x 445mm A5 Extra 174mm x 235mm B5 (ISO) Extra 201mm x 276mm A2 420mm x 594mm A3 Transverse 297mm x 420mm A3 Extra Transverse 322mm x 445mm Dbl. Japanese Postcard 200mm x 148mm A6 105mm x 148mm Letter Rotated 11\" x 8 1/2\" A3 Rotated 420mm x 297mm A4 Rotated 297mm x 210mm A5 Rotated 210mm x 148mm B4 (JIS) Rotated 364mm x 257mm B5 (JIS) Rotated 257mm x 182mm Japanese Postcard Rot. 148mm x 100mm Dbl. Jap. Postcard Rot. 148mm x 200mm A6 Rotated 148mm x 105mm B6 (JIS) 128mm x 182mm B6 (JIS) Rotated 182mm x 128mm 12x11 12\" x 11\" Represents the types of precision which can be used when obtaining the value of a cell. The display value of the cell is used. If the cell's actual value is 10.005, but it is using currency formatting, it will display as $10.01. When this cell is used in calculations, its displayed value of 10.01 will be used. The actual value of the cell is used. If the cell's actual value is 10.005, but it is using currency formatting, it will display as $10.01. When this cell is used in calculations, its stored value of 10.005 will be used, even though the display shows a slightly different value. Represents the various ways to print cell errors in a worksheet. Errors are printed just as they are displayed on the worksheet. Errors are not prints, as though the cells containing them have no value. Errors are printed as two dashes "--". Errors are prints as "#N/A". Represents the various ways to print cell notes. Cell notes are not printed. Cell notes are printed as they are shown on the worksheet. With this option, cell notes will only appear in the printed worksheet if they are displayed on the worksheet in Microsoft Excel. If the notes just show indicators in Excel, the indicators and notes will not be printed. Cell notes are printed on the last page, after the entire worksheet has printed. Represents the ways to scale a worksheet when it is printed. The scaling factor is used to scale the worksheet when printing. The page maximums are used to determine how many pages the worksheet can be printed on. Less pages can be used if there is not enough printable content in the worksheet. Represents the various scroll bar configurations available for the workbook. No scroll bars are shown in Microsoft Excel. Only the horizontal scroll bar is shown in Microsoft Excel. Only the vertical scroll bar is shown in Microsoft Excel. Both scroll bars are shown in Microsoft Excel. Represents the ways shapes will be repositioned when rows and columns are resized. Shapes will move and size with the cells. If columns before (or rows above) the shape are expanded, the shape will shift left. If columns within a shape are expanded, the shape will be widened. Shapes will move but not size with the cells. If columns before (or rows above) the shape are expanded, the shape will shift left. If columns within a shape are expanded, the shape will not be widened. Shapes will not move or size with the cells. The shape will remain in its absolute pixel position of the worksheet, regardless the rows and columns resized before or inside it. Enumeration for vertical alignment styles. Default value is used in property override situations. Use the current default. Top alignment. Center alignment. Bottom alignment. Justify alignment. Distributed alignment. Represents the various file formats in which a workbook can be saved. The Excel 97-2003 BIFF8 file format. The Excel 2007 XML file format. The Excel 2007 Macro-Enabled XML file format. Enum specifying what palette to use when exporting.

Determines whether a custom palette will be created or whether to use the standard Excel palette of colors when exporting.

A custom palette will make the exported Excel Workbook appear with exactly the same colors as the object on the screen. However, using a custom palette can cause problems when copying and pasting from one Excel Workbook to another. Since the two workbooks are unlikely to share exactly the same palette, colors may change.

Using the standard Excel palette means that the colors in the Excel Workbook will not exactly match those on the screen. For each color used by the item on-screen, the closest matching color in the standard palette will be used in Excel. Copy and Paste using a Workbook creating using the Standard palette will not result in any color changes - unless the pasting is done onto a Workbook with a custom palette.

Use a custom palette based on the actual colors. Use the standard Excel palette by matching the nearest color. Represents the various views for a worksheet. The worksheet is displayed in the normal view. The worksheet is displayed as it will appear when printed. This view displays where printed pages will begin and end as well as any headers or footers for the workbook. This value is only supported in Excel 2007 and defaults to Normal in earlier version. This view shows a preview of where pages will break when the worksheet is printed. Represents the various visibilities of a worksheet.

The worksheet visibility indicates how the worksheet will be displayed in the tab bar at the bottom of the workbook window in Microsoft Excel.

The worksheet tab is present in the tab bar. The worksheet tab is not present in the tab bar. The worksheet can be made visible from the Unhide dialog in Microsoft Excel. The worksheet tab is not present in the tab bar. The worksheet can only be made visible again through a Visual Basic procedure in Microsoft Excel. The worksheet can not be made visible through the user interface. Defines options for displaying comments in the user interface. Indicates that comments not be shown in the user interface. Indicates that only the comment indicator be shown in the user interface. Indicates that both the comment indicator and comment text be show in the user interface. Represents a comment for a cell.

Comments cannot be added to a worksheet's or a shape group's shapes collection. Instead, they must be set directly on the cell with the cell's property.

It is not required that the anchors of this shape be initialized before setting it as the comment of a cell. If the and anchors are both null when the comment is applied to a cell, default anchor cells will be used based on the cell.

Abstract base class for all shapes that can display text.

Primitive shapes, such as polygons, and cell comments can display regular text or text with mixed formatting and are derived from this class.

Gets or sets the formatted text of the comment.

Getting the value of this property will always return a non-null value. If null is set on the property, it will subsequently return an empty formatted string.

The formatted text of the comment.
Creates a new instance of the class. Gets the worksheet on which the shape resides. The worksheet on which the shape resides. Gets or sets the author of the comment.

This information is not displayed in the Microsoft Excel UI and is for informational purposes only.

The author of the comment.
Gets the cell to which the comment is applied. The cell to which the comment is applied. Represents a complex format which can be easily applied to a cell in Microsoft Excel. Gets the name of the workbook style. The name of the workbook style. Gets the cell format which applies to the workbook style. The cell format which applies to the workbook style. The exception thrown when a formula parse error occurs. Initializes a new instance of the class. Initializes a new instance of the class with a specified error message. The message that describes the error. Initializes a new instance of the class with a specified error message. The message that describes the error. The exception that is the cause of this exception. Initializes a new instance of the class with a specified error message and information which helps determine the location of the parse error in the formula. The character index in the parameter where the parse error occurred. The formula which had the error being parsed. The message that describes the error. The portion of the formula which had the error being parsed. Initializes a new instance of the class with the serialized data. is null. The serialized object data. The context information about the source serialized stream. Populates the specified instance with this object's data. The serialized object data. The context information about the destination serialized stream. is null. Gets the character index in the at which the parse error occurred. The character index in the FormulaValue at which the parse error occurred. Gets the formula string which had the error being parsed. The formula string which had the error being parsed. Gets the error message and the portion of the formula with the error. Gets the portion of the formula which contains the error. Class which controls the way frozen panes are arranged and used for a worksheet.

Note: Frozen and unfrozen panes cannot be used simultaneously, so depending whether the panes are frozen or unfrozen, these settings may not be used or saved.

Abstract base class for classes which control pane settings. Resets the pane settings to their defaults.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank worksheet.

Gets or sets the first visible column in the right pane(s) of the worksheet.

This affects the scroll position for the right pane(s) of the worksheet and is only used if the worksheet is split vertically.

The assigned value is outside the valid column range (0 to one less than or , depending on the workbook's ). The zero-based index of the first visible column in the right pane(s).
Gets or sets the first visible row in the bottom pane(s) of the worksheet.

This affects the scroll position for the bottom pane(s) of the worksheet and is only used if the worksheet is split horizontally.

The assigned value is outside the valid row range (0 to one less than or , depending on the workbook's ). The zero-based index of the first visible row in the bottom pane(s).
Resets the frozen pane settings to their defaults.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank worksheet.

Gets or sets the number of columns frozen at the left of the worksheet.

The frozen columns will always remain in view, regardless of the horizontal scroll position of the worksheet.

Note: If the number of frozen columns specified is more than the amount of visible columns in the worksheet, the worksheet may not scroll correctly.

The assigned value is not a valid column count (0 to or , depending on the workbook's ). The number of columns frozen at the left of the worksheet.
Gets or sets the number of rows frozen at the top of the worksheet.

The frozen rows will always remain in view, regardless of the vertical scroll position of the worksheet.

Note: If the number of frozen rows specified is more than the amount of visible rows in the worksheet, the worksheet may not scroll correctly.

The assigned value is not a valid row count (0 to or , depending on the workbook's ). The number of rows frozen at the top of the worksheet.
Represents a named reference defined in the workbook.

Named references allow for names to be used in formulas instead of complex formulas or cell references. For example, instead of using the formula =SUM(E1:E20), a named reference with a name of 'Sales' can be defined to point to the range of E1:E20 (the named reference's formula would be defined like this: =Sheet1!$E$1:$E$20). Then the original formula could be expressed as =SUM(Sales).

Each named reference has an associated scope, which can either be the to which the named reference belongs or one of the instances in the Workbook. The scope determines how the name must be referenced in formulas for different cells. A scope of the workbook means the named reference must be accessed by a formula in any cell of the workbook by specifying only the name. A scope of the worksheet means formulas used in other worksheets must reference the name by first specifying the worksheet scope, such as =SUM( Sheet2!Sales ). If the formula is in the same worksheet as the scope of the named reference, the formula can reference the name with or without the worksheet name.

Named references from external workbooks must always be referenced with the scope first. If the named reference's scope is the external workbook, the name is accessed by specifying the workbook file name followed by the name, such as in the following formula: ='C:\ExternalWorkbook.xls'!SalesTax. If the named reference has a scope of a worksheet in the workbook, it is referenced by specifying the file name, worksheet, and name: ='C:\[ExternalWorkbook.xls]Sheet1'!SalesTax.

Named references with different scopes can have the same names, but if two named references have the same scope, they must have case-insensitively unique names.

Gets the string representation of the named reference. The string representation of the named reference. Sets the formula for a named reference.

The formula will be parsed using the of the to which the NamedReference is applied. If the NamedReference has been removed from its collection, the A1 reference mode will be used to parse the formula.

The string containing the formula value. is null or empty. is not a valid formula. The inner exception will contain the describing the reason the formula was not valid.
Sets the formula for a named reference. The string containing the formula value. The mode used to interpret cell references in the formula. is null or empty. is not defined in the enumeration. is not a valid formula. The inner exception will contain the describing the reason the formula was not valid. Gets or sets the comment associated with the named reference. The value assigned is greater than 255 characters in length. The comment associated with the named reference. Gets the formula which defines the named reference. The formula which defines the named reference. Class used to provide the ability to customize resource strings. Gets the customized string identified by the specified string resource name. Name of the string resource that was customized. The customized string or null if the resource wasn't customized. Clears all strings customized by calls to method. Resets a customized string identified by the specified string resource name so that it will load from the resource file. Name of the string resource to customize. Sets a customized string identified by the specified string resource name. Name of the string resource to customize. The customized string. If null this has the same effect as calling . Exposes a instance for this assembly. Returns the resource string using the specified name and default culture. Name of the string resource to return. Arguments supplied to the string.Format method when formatting the string. The resource string using the specified resource name and default culture. Returns the resource string using the specified resource name and default culture. The string is then formatted using the arguments specified. Name of the string resource to return. The resource string using the specified resource name and default culture. Returns the resource object using the specified name. Name of the resource item. An object containing the specified resource. Returns the for this assembly. Abstract base class for worksheet row and worksheet column. Gets the default cell format for cells in this row or column.

Any default properties of the cell's format will take their value from this format when getting a resolved format.

The default cell format for cells in this row or column.
Gets or sets the expanded state of the row or column.

This property is deprecated. Use instead.

Note: Hidden and Expanded are opposites (setting Expanded to True is equivalent to setting Hidden to False).

Gets or sets the value indicating whether the row or column is hidden. The Hidden state also controls the expanded state of rows or columns in outline groups. Basically, an outline group simply provides an easy way to hide and unhide all rows or columns in the group at the same time, via the expansion indicator. The value indicating whether the row or column is hidden. Gets the index of the row or column in the worksheet. The index of the row or column in the worksheet. Gets or sets the outline level for the row or column.

Microsoft Excel supports hierarchical grouping of rows and columns with a maximum of seven levels of hierarchy. To create a group, set adjacent rows or columns to same outline level. When rows or columns are grouped, an outline indicator will provide a visual representation of the outline level. In addition, an outline group has an expansion indicator at one end of the group, which allows the user to easily hide and unhide all rows or column in the group with a single click.

The value assigned is outside the valid outline level range of 0 and 7. The outline level for the row or column.
Gets the worksheet to which the row or column belongs. The worksheet to which the row or column belongs. Base class for row collection and column collection. The type of item contained in the collection. Abstract base class for collections of the main worksheet elements (rows, columns, and cells).

Because of the large number of elements on a worksheet, this collection internally creates elements when they are requested. Iterating this collection will only iterate the elements which have already been created.

The type of item contained in the collection.
Gets the maximum number of items allowed in this collection. Class which controls the way unfrozen panes are arranged and used for a worksheet.

Note: Frozen and unfrozen panes cannot be used simultaneously, so depending whether the panes are frozen or unfrozen, these settings may not be used or saved.

Resets the unfrozen pane settings to their defaults.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank worksheet.

Gets or sets the first visible column in the left pane(s) of the worksheet.

This affects the scroll position for the left pane(s) of the worksheet and is used regardless of whether or not the worksheet is split vertically.

The assigned value is outside the valid column range (0 to one less than or , depending on the workbook's ). The zero-based index of the first visible column in the left pane(s).
Gets or sets the first visible row in the top pane(s) of the worksheet.

This affects the scroll position for the top pane(s) of the worksheet and is used regardless of whether or not the worksheet is split horizontally.

The assigned value is outside the valid row range (0 to one less than or , depending on the workbook's ). The zero-based index of the first visible row in the top pane(s).
Gets or sets the width of the left pane in twips (1/20th of a point).

If this value is zero, the left pane occupies the entire visible area of the worksheet. Otherwise, the left pane occupies the specified width and the right pane occupies the remaining area of the worksheet.

Thrown when the width specified is outside the valid width range (0 to 65535). The width of the left pane, or zero if there is no horizontal pane split.
Gets or sets the height of the top pane in twips (1/20th of a point).

If this value is zero, the top pane occupies the entire visible area of the worksheet. Otherwise, the top pane occupies the specified height and the bottom pane occupies the remaining area of the worksheet.

Thrown when the height specified is outside the valid height range (0 to 65535). The height of the top pane, or zero if there is no vertical pane split.
Represents an unsupported shape which has been loaded from a workbook file.

This class is used for round-tripping purposes, so unsupported shapes which have been loaded can be saved back out with the workbook. The class allows the unsupported shapes to be identified in shape collections so they can be removed. This shape will become obsolete in future versions when all shape types are supported.

Throws an exception because all data in an unknown shape is unknown, and clearing that data would leave no data with the shape. This method is called on an instance. Determines if a given System.Type is a numeric type. The System.Type to test. True if the type is a numeric type. Sorts the passed in array list based on the passed in comparer using a modified merge-sort algorithm. The list to be sorted. The comparer (must not be null). Sorts the passed in array based on the passed in comparer using a modified merge-sort algorithm. It requires allocation of an array equal in size to the array to be sorted. Merge sort should be used if the operation of comparing items is expensive. Array to be sorted. Comparer. Sorts the passed in array based on the passed in comparer using a modified merge-sort algorithm. Optionally you can pass in a temporary array equal (or greater) in size to arr. The method will make use of that array instead of allocating one. If null is passed in, then it will allocate one. Merge sort should be used if the operation of comparing items is expensive. Array to be sorted. Null or a temporary array equal (or greater) in size to arr. Comparer. Sorts the passed in array based on the passed in comparer using a modified merge-sort algorithm. Optionally you can pass in a temporary array equal (or greater) in size to arr. The method will make use of that array instead of allocating one. If null is passed in, then it will allocate one. Merge sort should be used if the operation of comparing items is expensive. Array to be sorted. Null or a temporary array equal (or greater) in size to arr. Comparer. Start index in the array. End index in the array. Sorts the passed in list based on the passed in comparer using a modified merge-sort algorithm. The list to be sorted. The comparer (must not be null). Sorts the passed in array based on the passed in comparer using a modified merge-sort algorithm. It requires allocation of an array equal in size to the array to be sorted. Merge sort should be used if the operation of comparing items is expensive. Sorts the passed in array based on the passed in comparer using a modified merge-sort algorithm. Optionally you can pass in a temporary array equal (or greater) in size to arr. The method will make use of that array instead of allocating one. If null is passed in, then it will allocate one. Merge sort should be used if the operation of comparing items is expensive. Array to be sorted. Null or a temporary array equal (or greater) in size to arr. Comparer. Sorts the passed in array based on the passed in comparer using a modified merge-sort algorithm. Optionally you can pass in a temporary array equal (or greater) in size to arr. The method will make use of that array instead of allocating one. If null is passed in, then it will allocate one. Merge sort should be used if the operation of comparing items is expensive. Array to be sorted. Null or a temporary array equal (or greater) in size to arr. Comparer. Start index in the array. End index in the array. Gets a Worksheet off the specified ContextStack by popping the ChildDataItem off the stack, then returning the value of the Data property as type Worksheet. Converts the provided ST_SystemColorVal to a Color using SystemColors The System Color Value Simple-Type value Returns a Color based on System.Drawing.SystemColors Returns an Int32 value from the specified string, implied to be conformant with the pattern expected for the ST_UnsignedIntHex data type. Returns a string that is compatible with the ST_UnsignedIntHex data type from the specified integer value. Returns an Int32 value from the specified string, implied to be conformant with the pattern expected for the ST_HexBinary3 data type. Returns a string that is compatible with the ST_HexBinary3 data type from the specified color value. Represents a Microsoft Excel workbook.

Every workbook consists of one or more worksheets (). The default constructor creates an empty workbook.

Maximum number of rows in the worksheet allowed by the Excel 2007 file format. Maximum number of columns in the worksheet allowed by the Excel 2007 file format. Maximum number of rows in the worksheet allowed by the Excel 97-2003 file format. Maximum number of columns in the worksheet allowed by the Excel 97-2003 file format. Maximum number of colors in the workbook allowed by Excel. Maximum number of distinct cell formats in the workbook allowed by the Excel 97-2003 file format. Maximum number of distinct cell formats in the workbook allowed by the Excel 2007 file format. Maximum number fonts in a workbook allowed by Excel. Creates a new instance of the class.

The new workbook created is empty. At least one must be added to it before it can be saved.

Creates a new instance of the class. The file format to use when imposing format restrictions and saving.

The new workbook created is empty. At least one must be added to it before it can be saved.

is not defined in the enumeration.
Creates a new instance of the class. Determines which palette to use when exporting.

The new workbook created is empty. At least one must be added to it before it can be saved.

is not defined in the enumeration.
Creates a new instance of the class. The file format to use when imposing format restrictions and saving. Determines which palette to use when exporting.

The new workbook created is empty. At least one must be added to it before it can be saved.

is not defined in the enumeration. is not defined in the enumeration.
Factory method which creates new workbook font.

describes font used in excel workbook. If many parts of excel workbook have same and complex (more than one property in common) font formatting, use this method in following manner:

  1. Create new font format with ,
  2. Set all necessary properties on given font format,
  3. Apply font format to all excel objects which use it with method.

Use of this procedure will simplify you code for complex font formats and increase speed of resulting program. It will not reduce total number of font formats in a workbook as font formats are internally cached no mather which method is used.

The created excel font object.
Creates new worksheet cell format. The cell format which was created.

describes cell specific formatting (font, number format, appearance etc.). Total number of different cell formats in excel workbook is limited to . If many parts of excel workbook have same and complex (more than one property in common) cell formatting, use this method in following manner:

  1. Create new cell format with ,
  2. Set all necessary properties on given cell format,
  3. Apply cell format to all excel objects which use it with method.

Use of this procedure will simplify you code for complex cell formats and increase speed of resulting program. It will not reduce total number of cell formats in a workbook as cell formats are internally cached no mather which method is used.

Recalculates all formulas on the workbook.

This can be used when the is Manual. In Manual mode, when cells are dirtied, formuals referencing those cells will not be recaluclated until Recalculate is called or is True and the workbook is saved.

Registers an assembly containing derived types. Loaded assembly to register Returns true if the assembly was registered successfully, else false if the registration failed

All types within the registered assembly are enumerated and any that derive from class are added to the list of available formula functions

Registers a single instance. User defined function instance to register Returns true if the type was registered successfully, else false if the registration failed

Users can build custom functions used in formulas by sub-classing the class. Once the derived class is instaniated it must be registered by using the RegisterUserDefinedFunction method before being avilable and referenced by a formulas. Users can build a library of functions packaged in an assembly and register all the functions within the assembly by using the method.

Resumes the calculation of formulas.

If calculations were not suspended when this is called, it will have no effect.

For each call to , a call to ResumeCalculations must be made. As soon as the number of calls to ResumeCalculations equals the number of calls to SuspendCalculations, calculations will be resumed.

Writes the workbook to a file.

The workbook will be written in the format specified by the .

The specified should have an extension corresponding to the current format so it can be opened in Microsoft Excel by default (if it is installed).

Note: This method creates a using the FileStream(string, FileMode, FileAccess) overload of the constructor. See the remarks section of this overload to for the exceptions that could be thrown.

The file to write the workbook to. The workbook has no worksheets in its collection. No worksheet in this workbook's Worksheets collection has its set to Visible. At least one worksheet in the workbook must be visible. A in the workbook's collection has all worksheets hidden. At least one worksheet must be visible in all custom views.
Writes the workbook to a file.

The workbook will be written in the format specified by the .

The specified should have an extension corresponding to the current format so it can be opened in Microsoft Excel by default (if it is installed).

Note: This method creates a using the FileStream(string, FileMode, FileAccess) overload of the constructor. See the remarks section of this overload to for the exceptions that could be thrown.

The file to write the workbook to. An IPackageFactory which can be used to open an IPackage from a stream. The workbook has no worksheets in its collection. No worksheet in this workbook's Worksheets collection has its set to Visible. At least one worksheet in the workbook must be visible. A in the workbook's collection has all worksheets hidden. At least one worksheet must be visible in all custom views.
Writes the workbook to a stream.

The workbook will be written in the format specified by the .

The stream to write the workbook to. is null. The workbook has no worksheets in its collection. No worksheet in this workbook's Worksheets collection has its set to Visible. A in the workbook's collection has all worksheets hidden. At least one worksheet must be visible in all custom views.
Writes the workbook to a stream.

The workbook will be written in the format specified by the .

The stream to write the workbook to. An IPackageFactory which can be used to open an IPackage from a stream. is null. The workbook has no worksheets in its collection. No worksheet in this workbook's Worksheets collection has its set to Visible. A in the workbook's collection has all worksheets hidden. At least one worksheet must be visible in all custom views.
Sets the current format of the workbook. The file format to use when imposing format restrictions and saving. is not defined in the enumeration. The workbook already contains data which exceeds the limits imposed by . Temporarily suspends the calculation of formulas.

This should be used when adding many formulas or modifying large amounts of data on a workbook at once so formulas are not calculated each time cells are dirtied.

For each call to SuspendCalculations, a call to must be made. As soon as the number of calls to ResumeCalculations equals the number of calls to SuspendCalculations, calculations will be resumed.

Reads a workbook from a file.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

Note: This method creates a using the FileStream(string, FileMode) overload of the constructor. See the remarks section of this overload for the exceptions that could be thrown.

The file from which to read the workbook. is a path to an invalid Microsoft Excel file. The file format cannot be determined from the specified file. The format of the workbook data is in an unsupported format. (Excel2007-format specific) Thrown when the markup which contains the SpreadsheetML data is determined to be non-compliant with the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). The workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. The overload taking an must be used in this case so the Excel 2007 file package can be accessed. The workbook loaded from the file.
Reads a workbook from a file.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

Note: This method creates a using the FileStream(string, FileMode) overload of the constructor. See the remarks section of this overload for the exceptions that could be thrown.

The file from which to read the workbook. A boolean specifying whether or not to verify the contents of the markup against the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). is a path to an invalid Microsoft Excel file. The file format cannot be determined from the specified file. The format of the workbook data is in an unsupported format. (Excel2007-format specific) Thrown when the markup which contains the SpreadsheetML data is determined to be non-compliant with the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). The workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. The overload taking an must be used in this case so the Excel 2007 file package can be accessed. The workbook loaded from the file.
Reads a workbook from a file.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

Note: This method creates a using the FileStream(string, FileMode) overload of the constructor. See the remarks section of this overload for the exceptions that could be thrown.

The file from which to read the workbook. An IPackageFactory which can be used to open an IPackage from a stream. is a path to an invalid Microsoft Excel file. The file format cannot be determined from the specified file. The format of the workbook data is in an unsupported format. (Excel2007-format specific) Thrown when the markup which contains the SpreadsheetML data is determined to be non-compliant with the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). is null and the workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. An must be specified so the Excel 2007 file package can be accessed. The workbook loaded from the file.
Reads a workbook from a file.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

Note: This method creates a using the FileStream(string, FileMode) overload of the constructor. See the remarks section of this overload for the exceptions that could be thrown.

The file from which to read the workbook. An IPackageFactory which can be used to open an IPackage from a stream. A boolean specifying whether or not to verify the contents of the markup against the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). is a path to an invalid Microsoft Excel file. The file format cannot be determined from the specified file. The format of the workbook data is in an unsupported format. (Excel2007-format specific) Thrown when the markup which contains the SpreadsheetML data is determined to be non-compliant with the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). is null and the workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. An must be specified so the Excel 2007 file package can be accessed. The workbook loaded from the file.
Reads a workbook from a stream.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If a FileStream is specified, the extension of the file will be examined. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

The stream to read the workbook from. does not contain valid Microsoft Excel file contents. The file format cannot be determined from the specified stream. The format of the workbook data is in an unsupported format. The workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. The overload taking an must be used in this case so the Excel 2007 file package can be accessed. The workbook loaded from the stream.
Reads a workbook from a stream.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If a FileStream is specified, the extension of the file will be examined. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

The stream to read the workbook from. A boolean specifying whether or not to verify the contents of the markup against the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). does not contain valid Microsoft Excel file contents. The file format cannot be determined from the specified stream. The format of the workbook data is in an unsupported format. The workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. The overload taking an must be used in this case so the Excel 2007 file package can be accessed. The workbook loaded from the stream.
Reads a workbook from a stream.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If a FileStream is specified, the extension of the file will be examined. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

The stream to read the workbook from. An IPackageFactory which can be used to open an IPackage from a stream. does not contain valid Microsoft Excel file contents. The file format cannot be determined from the specified stream. The format of the workbook data is in an unsupported format. is null and the workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. An must be specified so the Excel 2007 file package can be accessed. The workbook loaded from the stream.
Reads a workbook from a stream.

When loading the workbook, the format will be determined the file extension or by the contents of the file. If a FileStream is specified, the extension of the file will be examined. If the extension is a stanard Excel format entension, the workbook will be assumed to be in the corresponding format. Otherwise, the contents of the file will be examined to try to determine the format. The of the returned workbook will indicate the format the workbook was loaded from.

The stream to read the workbook from. An IPackageFactory which can be used to open an IPackage from a stream. A boolean specifying whether or not to verify the contents of the markup against the rules defined in Part 2 of the 'Office Open XML - Open Packaging Conventions' document (see final draft, ECMA document TC45). does not contain valid Microsoft Excel file contents. The file format cannot be determined from the specified stream. The format of the workbook data is in an unsupported format. is null and the workbook being loaded is in an Excel 2007 format and the CLR 2.0 Excel assembly is being used. An must be specified so the Excel 2007 file package can be accessed. The workbook loaded from the stream.
Returns the WorkbookFormat based on the file extenstion of the specified file. The filename of an excel file. The workbook format based on the file extension of the file, or null if the correct format cannot be determined. Returns the number of columns that are supported by the specified format. The format used by the workbook. The maximum number of columns supported by the format. Returns the number of rows that are supported by the specified format. The format used by the workbook. The maximum number of rows supported by the format. Gets a value indicating whether the specified function will be recognized and solved by Microsoft Excel when the workbook is saved out. The case-insensitive name of the function. True if the function will be recognized in Microsoft Excel; False otherwise. Gets or sets the active worksheet.

This property is deprecated. Use instead.

Gets or sets the value which indicates how a formula will be recalculated when a referenced value changes.

If this is set to a value of Manual, the property will determine if formulas are recalculated just before saving the file. Otherwise, that property is ignored.

The assigned value is not defined in the enumeration. The value which indicates how a formula will be recalculated when a referenced value changes.
Gets or sets the value which indicates the way cells in the workbook are referenced.

The value of this property will affect the row and columns labels of the workbook when opened in Microsoft Excel. In addition, it will affect the display of formulas referencing different cells.

The assigned value is not defined in the enumeration. The value which indicates the way cells in the workbook are referenced.
Gets the current format of the workbook. This is the format which will be used when saving and imposing format restricions. Gets the collection of custom views for the workbook.

Each custom view stores display settings and optionally print settings, which can later be applied to the workbook and its worksheets as one operation, through both the Microsoft Excel UI and the Excel assembly by calling the method.

The collection of custom views for the workbook.
Gets or sets the date system used internally by Microsoft Excel. The assigned value is not defined in the enumeration. The date system used internally by Microsoft Excel. Gets or sets the default font height in twips (1/20th of a point). The assigned value is outside the valid font height range of 20 and 8180. The default font height in twips (1/20th of a point). Gets the properties associated with the workbook document.

The document properties are pieces of information which provide details on the content of the workbook, such as the author, title, and subject of the workbook.

The properties associated with the workbook document.
Gets or sets the value which indicates whether iterations are allowed while calculating formulas containing circular references.

When iterative calculations are enabled, a formula is allowed to use circular references, or directly or indirectly reference the cell to which it belongs. Microsoft Excel stops iteratively calculating formulas after iterating times or when all formula values change by less than between two iterations.

When iterative calculations are disabled, circular references are not allowed, and a formula which references the cell to which it belongs, directly or indirectly, will cause Microsoft Excel to show an error message and the cell will contain a Circularity error.

The value which indicates whether iterations are allowed while calculating recursive formulas.
Gets or sets the maximum change of the values in a formula between iterations which will exit from iteration.

This property is only valid when is True. Otherwise it is ignored.

When iterative calculations, or circular references, are enabled, this property determines the maximum change in all values of a formula between two iterations that will cause the formula to exit iterative calculations. Iterative calculations will also be stopped if the formula iterates times.

The maximum change of the values in a formula between iterations which will exit from iteration.
Gets or sets the maximum number of times formulas should be iteratively calculated.

This property is only valid when is True. Otherwise it is ignored.

When iterative calculations, or circular references, are enabled, this property determines the number of iterations allowed when calculating iteratively.

The assigned value is outside the valid range of 1 and 32767. The maximum number of times formulas should be iteratively calculated.
Gets the collection of named references in the workbook.

Named references are typically used to refer to cells or ranges of cells by name. The named reference names are used by formulas instead of explicitly naming the cells or cell ranges.

The collection of named references in the workbook.
Gets or sets the precision to use when obtaining a cell's value.

The precision determines whether to use the actual value of the cell or the display value of the cell. These are typically the same, but the format of a cell could cause a loss of precision in the displayed value. For example, if a cell's value is 18.975, and a currency format is used for the cell, the display value will be 18.98.

The assigned value is not defined in the enumeration. The precision to use when obtaining a cell's value.
Gets or sets the value which indicates whether the workbook is protected.

If True, prevents changes to worksheet and to locked cells.

The value which indicates whether the workbook is protected.
Gets or sets the value which indicates whether the workbook should recalculate all formulas before saving.

This property only applies if the is set to Manual. Otherwise, it is ignored.

The value which indicates whether the workbook should recalculate all formulas before saving.
Gets or sets the value which indicates whether to save values linked from external workbooks.

This value will only be used when the workbook is opened in Microsoft Excel. When referencing external values and saving a workbook through the Excel assembly, external linked values will never be saved.

The value which indicates whether to save values linked from external workbooks.
Gets or sets the value which indicates whether carriage return characters should be removed from string values in cells when the workbook is saved to an Excel file.

In Microsfot Excel 2003, carriage return characters are displayed as boxes. Most of the time, this should not be seen and removing the carriage return characters has no adverse effect on the layout of the text within a cell. Therefore, this property is True by default.

True if the saved workbook file should not contain the carraige return characters from cell values; False to export the string values as they have been set on the cells.
Gets the collection of custom styles in the workbook.

Use this collection to add custom styles to Excel workbook. The user can apply those styles to different parts of excel workbook and thereby set complex formatting with ease.

The collection of custom styles in the workbook.
Gets the options which control various workbook level display properties.

The window options control properties of the child MDI window showing the workbook in Microsoft Excel. They also control display options of the workbook which do not change based on the selected worksheet.

The options which control various workbook level display properties.
Gets the collection of worksheets in the workbook.

Use WindowOptions.SelectedWorksheet to set the selected worksheet. The selected worksheet is the worksheet seen when the workbook is opened in Microsoft Excel.

The collection of worksheets in the workbook.
A collection of workbook styles, or complex formats which can be easily applied to cells in Microsoft Excel. Adds new user defined style to the workbook. A cell format of the style. The name which will identify the style in Microsoft Excel. is null or empty. A style already exists with the a name of . Names are compared case-insensitively. The added user defined style as a instance. Clears all styles from the collection. Determines whether a style is in the collection. The style to locate in the collection. True if the style is found; False otherwise. Removes the specified style from the collection. The style to remove from the collection. True if the style was successfully removed; False if the custom view was not in the collection. Removes the style at the specified index from the collection. The zero-based index of the style in the collection. is less than zero or is greater than or equal to . Gets the number of styles in the collection. The number of styles in the collection. Gets the style at the specified index. The zero-based index of the style to get. is less than zero or is greater than or equal to . The style at the specified index. Represents the window options which are saved with the workbook.

The properties explicitly defined on this class and not inherited from the base class, , are options that can be saved with a workbook, but not with a custom view.

Resets the window options to their default settings.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank workbook.

Gets or sets the bounds of the workbook's MDI child window in twips (1/20th of a point).

Note: This setting cannot be saved with a in the Excel file. It can only be saved with a . Therefore, there is no corresponding property in and a newly created CustomView will not be initialized with the setting from this property.

The left or top of the value assigned is outside the bounds of -32768 and 32767. The width or height of the value assigned is outside the bounds of 0 and 65535. The bounds of the workbook's MDI child window in twips (1/20th of a point).
Gets or sets the index of the first visible tab in the worksheet tab bar.

If the worksheet tab bar is not visible, this value will not be used, but it is still saved with the workbook.

Note: This setting cannot be saved with a in the Excel file. It can only be saved with a . Therefore, there is no corresponding property in and a newly created CustomView will not be initialized with the setting from this property.

The value assigned is less than zero. The index of the first visible tab in the worksheet tab bar.
Gets or sets the value indicating whether the workbook's MDI child window is minimized in Microsoft Excel.

Note: This setting cannot be saved with a in the Excel file. It can only be saved with a . Therefore, there is no corresponding property in and a newly created CustomView will not be initialized with the setting from this property.

The value indicating whether the workbook's MDI child window is minimized in Microsoft Excel.
Represents one worksheet in a Microsoft Excel workbook.

An Excel worksheet is essentially a table with a limited number of rows and columns. To create new worksheet, use method of the collection on a instance.

Gets the cell at the specified address.

The of the workbook will be used to parse the region address.

If a region reference is specified instead of a cell reference, the top-left cell of the region at the address will be returned.

The address of the cell. is null. is not a valid cell or region address in the workbook's cell reference mode. is a relative R1C1 address. The overload taking an origin cell must be used to resolve relative R1C1 references. A cell represented by the specified address.
Gets the cell at the specified address.

If a region reference is specified instead of a cell reference, the top-left cell of the region at the address will be returned.

The address of the cell. The cell reference mode to use to parse the cell address. is null. is not defined in the enumeration. is not a valid cell or region address in the specified cell reference mode. is a relative R1C1 address. The overload taking an origin cell must be used to resolve relative R1C1 references. A cell represented by the specified address.
Gets the cell at the specified address.

The of the workbook will be used to parse the cell address.

If a region reference is specified instead of a cell reference, the top-left cell of the region at the address will be returned.

The origin cell specified will not be used if the workbook has an A1 cell reference mode or an absolute R1C1 address is specified.

The address of the cell. The origin for resolving relative R1C1 references. is null. is not a valid cell or region address in the workbook's cell reference mode. is a relative R1C1 address and is null. An origin cell must be specified to resolve relative R1C1 references. A cell represented by the specified address.
Gets the cell at the specified address.

If a region reference is specified instead of a cell reference, the top-left cell of the region at the address will be returned.

The origin cell specified will not be used if the specified cell reference mode is A1 or an absolute R1C1 address is specified.

The address of the cell. The cell reference mode to use to parse the cell address. The origin for resolving relative R1C1 references. is null. is not defined in the enumeration. is not a valid cell or region address in the specified cell reference mode. is a relative R1C1 address and is null. An origin cell must be specified to resolve relative R1C1 references. A cell represented by the specified address.
Gets the region at the specified address.

The of the workbook will be used to parse the region address.

If a cell reference is specified instead of a region reference, a 1x1 region containing the cell at the address will be returned.

The address of the region. is null. is not a valid cell or region address in the workbook's cell reference mode. is a relative R1C1 address. The overload taking an origin cell must be used to resolve relative R1C1 references. A region represented by the specified address.
Gets the region at the specified address.

If a cell reference is specified instead of a region reference, a 1x1 region containing the cell at the address will be returned.

The address of the region. The cell reference mode to use to parse the region address. is null. is not defined in the enumeration. is not a valid cell or region address in the specified cell reference mode. is a relative R1C1 address. The overload taking an origin cell must be used to resolve relative R1C1 references. A region represented by the specified address.
Gets the region at the specified address.

The of the workbook will be used to parse the region address.

If a cell reference is specified instead of a region reference, a 1x1 region containing the cell at the address will be returned.

The origin cell specified will not be used if the workbook has an A1 cell reference mode or an absolute R1C1 address is specified.

The address of the region. The origin for resolving relative R1C1 references. is null. is not a valid cell or region address in the workbook's cell reference mode. is a relative R1C1 address and is null. An origin cell must be specified to resolve relative R1C1 references. A region represented by the specified address.
Gets the region at the specified address.

If a cell reference is specified instead of a region reference, a 1x1 region containing the cell at the address will be returned.

The origin cell specified will not be used if the specified cell reference mode is A1 or an absolute R1C1 address is specified.

The address of the region. The cell reference mode to use to parse the region address. The origin for resolving relative R1C1 references. is null. is not defined in the enumeration. is not a valid cell or region address in the specified cell reference mode. is a relative R1C1 address and is null. An origin cell must be specified to resolve relative R1C1 references. A region represented by the specified address.
Moves the worksheet to a new position in the owning workbook's collections of worksheets. The new 0-based index to where the worksheet should be moved. The worksheet has previously been removed from its workbook. is less than 0 or greater than or equal to the number of worksheets in the owning workbook. Gets the collection of columns in the worksheet.

The collection of columns is a fixed length collection, with the maximum number of columns in the collection being or , depending on the Workbook.CurrentFormat. Internally, the columns are only created and added to the collection when they are requested.

Note: Iterating the collection will not create all columns. It will only iterate the columns which have already been used. To create and iterate all columns in the worksheet use a For loop, iterating from 0 to one less than the maximum column count, and pass in each index to the collection's indexer.

The collection of columns in the worksheet.
Gets the collection of data tables in the worksheet. The collection of data tables in the worksheet. Gets or sets the default column width, in 1/256s of average character width.

The default column width is the width of all columns which do not have their width explicitly set to a positive number.

The value assigned must be between 0 and 65535. Invalid values will be automatically adjusted to valid values.

The default column width, in 1/256s of average character width.
Gets or sets the default row height in twips (1/20th of a point).

The default row height is the height of all rows which do not have their height explicitly set to a positive number.

If the assigned value is -1, the default row height will then be calculated based on the default font for the workbook, and subsequently getting this property will return the font-based default row height.

The value assigned is outside the value range of -1 and 8192. The default row height in twips (1/20th of a point).
Gets the object which controls the display of the worksheet.

The display options include any settings which affect the display of the worksheet when viewed in Microsoft Excel. These settings will not affect the printed worksheet or the data stored in the worksheet.

The object which controls the display of the worksheet.
Gets or sets the background image for the worksheet.

This image is tiled across the background of the worksheet. If null, the worksheet will have no background.

The background image for the worksheet.
Gets the zero-based index of this worksheet in its parent collection.

Negative one indicates the worksheet has been removed from its parent collection.

The zero-based index of this worksheet in its parent Worksheets collection.
Gets the collection of merged cell ranges in this worksheet.

Use method to add new merged cell ranges to the worksheet.

The collection of merged cell ranges in this worksheet.
Gets or sets the worksheet name.

The worksheet name is case-insensitively unique in the workbook.

The worksheet name is shown in the tab for the worksheet. In addition, the worksheet name can be used by formulas from other worksheets to refer to cells in this worksheet.

The value assigned is null or empty. The value assigned contains the invalid characters: ':', '\', '/', '?', '*', '[', or ']'. The value assigned exceeds 31 characters in length. The value assigned is being used as the name of another worksheet (worksheet names are case-insensitively compared). The worksheet name.
Gets the object which controls how the worksheet prints.

The print options include any settings which affect the printed appearance of the worksheet. These settings will not affect the data in the worksheet. Although these are not display settings, some worksheet display styles will display all or some of the print options, so these settings may affect the display of the worksheet when viewed in Microsoft Excel.

The object which controls how the worksheet prints.
Gets or sets the protection state of Excel worksheet.

In protected worksheet cells which are locked can not be modified.

The protection state of Excel worksheet.
Gets the collection of rows in the worksheet.

The collection of rows is a fixed length collection, with the maximum number of rows in the collection being or , depending on the Workbook.CurrentFormat. Internally, the rows are only created and added to the collection when they are requested.

Note: Iterating the collection will not create all rows. It will only iterate the rows which have already been used. To create and iterate all rows in the worksheet use a For loop, iterating from 0 to one less than the maximum row count, and pass in each index to the collection's indexer.

The collection of rows in the worksheet.
Gets the value which indicates whether this worksheet is selected.

If the worksheet has been removed from its parent collection, this will always return False.

The value which indicates whether this worksheet is selected.
Gets the collection of shapes on the worksheet. The collection of shapes on the worksheet. Gets the that owns the worksheet. The Workbook that owns the worksheet. Represents a cell in a Microsoft Excel worksheet. Gets the string representation of the address of the cell. The string representation of the address of the cell. Applies a formula to the cell.

is parsed based on the of the to which the cell belongs. If the cell's has been removed from its parent collection, the A1 CellReferenceMode will be used to parse the formula.

The formula to parse and apply to the cell. is null or empty. is not a valid formula. The cell is part of an array formula or data table which is not confined to just the cell.
Removes the comment associated with the cell. Gets the bounds of the cell in twips (1/20th of a point).

The bounds returned by this method are only valid with the current configuration of the worksheet. If any rows or columns before the cell are resized, these bounds will no longer reflect the position of the cell.

The bounds of the cell on its worksheet.
Returns True if a particular type can be exported to excel. The type to test. is null. True if the type is supported as a cell value, False otherwise. Gets the string representation of the address of the cell. The mode used to generate cell references. The value indicating whether to include the worksheet name in the cell address. The string representation of the address of the cell. Gets the string representation of the address of the cell. The mode used to generate cell references. The value indicating whether to include the worksheet name in the cell address. The value indicating whether to use a relative column address. The value indicating whether to use a relative row address. The string representation of the address of the cell. Gets the data table to which the cell belongs.

The cells in the left-most column and top-most row of the data table will return null for the associated data table.

If a data table is associated with the cell, getting the will return the calculated value for the cell.

The data table to which the cell belongs or null if the cell does not belong to a data table.
Gets the merged cells region which contains the cell, or null if the cell is not merged.

If the cell is part of a merged cell region, getting or setting the and of the cell will get or set the and of the AssociatedMergedCellsRegion, respectively.

The merged cells region which contains the cell, or null if the cell is not merged.
Gets the cell formatting for this cell.

Use this property to set cell formatting specific to the cell. If you will be appling the format to numerous cells, see the method for performance considerations.

If this cell belongs to a merged cell region, getting the CellFormat will get the CellFormat of the associated merged cell region.

The cell formatting for this cell.
Gets the column index of the cell. The column index of the cell. Get the value indicating whether the cell has an associated comment. True if the cell has an associated comment; False otherwise. Gets the formula which has been applied to the cell.

If a formula has been applied to the cell, getting the will return the calculated value of the formula.

The formula which has been applied to the cell or null if no formula has been applied.
Gets the row index of the cell. The row index of the cell. Gets or sets the value of the cell.

If this cell belongs to a merged cell region and it is the top-left cell of the region, getting and setting the value will get and set the value of the associated merged cell region. Getting the value of other cells in a merged cell region will always return null. Setting the value of other cells in a merged cell region will have no effect.

If a formula has been applied to the cell or a data table is associated with the cell, getting the Value will return the calculated value of the cell.

The types supported for the value are:

  • System.Byte
  • System.SByte
  • System.Int16
  • System.Int64
  • System.UInt16
  • System.UInt64
  • System.UInt32
  • System.Int32
  • System.Single
  • System.Double
  • System.Boolean
  • System.Char
  • System.Enum
  • System.Decimal
  • System.DateTime
  • System.String
  • System.Text.StringBuilder
  • System.DBNull

The assigned value's type is not supported and can't be exported to Excel. The value assigned is a . Instead, should be called on the Formula, passing in the cell. The value assigned is a . Instead, the should be set to a region containing the cell. The value assigned is a FormattedString which is the value another cell or merged cell region. The value is assigned and this cell is part of an or WorksheetDataTable. The value of the cell.
Gets the worksheet to which the cell belongs. The worksheet to which the cell belongs. Gets or sets the comment applied to the cell. The value applied only has only one anchor cell set. It should have both or neither anchor cells set. The value has its and anchors set but they are from different worksheets. The comment applied to the cell. A collection of cells in a row.

Cells in this collection are lazily created (they are only created and added to the collection when they are accessed). If this collection is enumerated, it only enumerates the cells which were already accessed.

Gets the maximum number of items allowed in this collection. Gets the cell at the specified column index in the owning row.

Note: Iterating the collection will not create all cells. It will only iterate the cells which have already been used. To create and iterate all cells in the worksheet use a For loop, iterating from 0 to one less than the maximum column count, and pass in each index to the collection's indexer.

The zero-based column index of the cell to get. is less than zero. is greater than or equal to or , depending on the . The cell at the specified column index in the owning row.
Represents a column in a Microsoft Excel worksheet. Gets or sets the column width, in 1/256s of average character width.

If the width of the column is less than zero, the of the owning worksheet will be used as the column's width.

The value assigned must be between 0 and 65535. Invalid values will be automatically adjusted to valid values.

The column width, in 1/256s of average character width.
A collection of columns in a worksheet.

Columns in this collection are lazily created (they are only created and added to the collection when they are accessed). Therefore, if this collection is enumerated, it only enumerates the columns which were already accessed.

Gets the maximum number of items allowed in this collection. Gets the column at the specified index.

Note: Iterating the collection will not create all columns. It will only iterate the columns which have already been used. To create and iterate all columns in the worksheet use a For loop, iterating from 0 to one less than the maximum column count, and pass in each index to the collection's indexer.

The zero-based index of the column to get. is less than zero. is greater than or equal to or , depending on the . The column at the specified index.
Represents a data table for a range of cells.

Data tables are a way to show the results of one or more formulas by trying many different values in the variables of the formulas at the same time, and showing the different results in a table. An excellent example of a data table application would be for a multiplication table. A multiplication table shows results for the formula =X*Y. However, it shows many different results for the formula, where each result is determined by using different values for X and Y. These results are displayed in a table, where each cell in the table shows the formula's result for specific values of X and Y, which are labeled in the row and column headers, respectively. Therefore, each cell in a row will use the same X value, and each cell in a column will use the same Y value.

The multiplication table is known as a two-variable data table. Two-variable data tables are characterized by having a single formula and values in the row and column headers of the table. The formula is entered into the top-left cell of the data table and usually references at least two cells outside the data table, known as the column-input and row-input cells. When the formula is evaluated for a specific cell in the data table, the reference to the column-input cell in the formula is replaced with the value in the cell's row header (this may seem backwards, but the values in the row headers run down the left column of the data table, which is why they are used for the column-input cell), and the reference to the row-input cell is replaced with the value in the cell's column header.

Another type of data table is the one-variable data table. A one-variable data table can be a column-oriented or a row-oriented data table. A column-oriented data table has data in the cells of the left column and formulas in the cells of the top row (anything in the top-left cell of the data table is ignored in this type of data table). Usually, the formulas in the top row all reference the same cell outside the data table, known as the column-input cell. When a cell in the table is evaluated, the formula in its column header is used, with the reference to the column-input cell replaced by the value in cell's row header.

A row-oriented one-variable data table is formed like a column-oriented data table, except the values run along the top row, the formulas run down the left column, and the cell referenced by all formulas is known as the row-input cell.

Gets or sets the region of cells in the data table.

Any interior cells (cells not in the left-most column or top row) in this region will have their values removed when this is set. If any interior cells have array formulas with a region that crosses outside the data table, an error will occur. However, if the array formula's region is confined to cells in the interior of the data table, the array formula will have called on it, which will remove it from all its cells. Similarly, if an existing data table's interior cells contain some of the interior cells in this region as well as some external cells, an error will occur. However, if all interior cells of the existing data table are contained in the interior cells of the new region specified here, the existing data table will be removed from the worksheet.

After the cells in the table have been specified, the interior cells' values cannot be modified.

Note: The and cannot be with the region.

The value assigned is null. The value is assigned after the data table has been removed from the worksheet. The value assigned is a region from a worksheet other than the data table's worksheet. The region specified contains the RowInputCell or the ColumnInputCell. One or more of the interior cells of the value assigned (all cells except the left-most column and top row) is an interior cell of another data table or is a cell in an array formula, and the entire range of that other entity extends outside the interior cells of the value assigned. The assigned value is only one row tall or one column wide. The cells in the table must be at least two rows by two columns. The assigned value contains merged regions which are not confined to the left-most column or top row. No merged regions can exist in the interior cells of the data table and no merged regions can exist in the left-most column or top row and extend outside the data table region. The region of cells in the data table.
Gets or sets the cell used as the column-input cell in the data table.

This represents the cell reference in all formulas of the data table to replace with row header values. If this and the are non-null, the data table is a two-variable data table. Otherwise, if only one is non-null, this is a one-variable data table.

Note: The RowInputCell and ColumnInputCell cannot be within the region.

The assigned value does not belong to the same worksheet as the data table. The value is assigned after the data table has been removed from the worksheet. The value assigned is within the CellsInTable region. The assigned value is null and RowInputCell is null. At least one input cell must be non-null. The assigned value is the same as RowInputCell. The input cells cannot be the same cell. The cell used as the column-input cell in the data table.
Gets or sets the cell used as the row-input cell in the data table.

This represents the cell reference in all formulas of the data table to replace with column header values. If this and the are non-null, the data table is a two-variable data table. Otherwise, if only one is non-null, this is a one-variable data table.

Note: The RowInputCell and ColumnInputCell cannot be within the region.

The assigned value does not belong to the same worksheet as the data table. The value is assigned after the data table has been removed from the worksheet. The value assigned is within the CellsInTable region. The assigned value is null and ColumnInputCell is null. At least one input cell must be non-null. The assigned value is the same as ColumnInputCell. The input cells cannot be the same cell. The cell used as the row-input cell in the data table.
Gets the worksheet on which this data table resides. A collection of instances on a worksheet. Creates a new data table and adds it to the collection.

The input cells specified must be different cell references and at least one must be non-null. See the overview for more information on data tables.

The region of cells in the data table. The cell used as the column-input cell in the data table. The cell used as the row-input cell in the data table. is null. is a region which does not belongs to the worksheet which owns this collection. is not null but does not belong to the worksheet which owns this collection. is not null but does not belong to the worksheet which owns this collection. Both and are null. and are the same cell. or are contained in the region. One or more of the interior cells of the region (all cells except the left-most column and top row) is an interior cell of another data table or is a cell in an array formula, and the entire range of that other entity extends outside the interior cells of . The newly created data table.
Clears all data tables from the collection.

Once a data table is removed from the collection, it can no longer be used.

Removes the specified data table from the collection.

Once a data table is removed from the collection, it can no longer be used.

The data table to remove from the collection. True if the dataTable was successfully removed; False if the dataTable was not in the collection.
Removes the data table at the specified index from the collection.

Once a data table is removed from the collection, it can no longer be used.

The zero-based index of the data table to remove from the collection.
Gets the number of data tables in the collection. The number of data tables in the collection. Gets the data table at the specified index in the collection. The zero-based index of the data table to get. The data table at the specified index. Class which exposes the display options which can only be controlled through the worksheet. Resets the display options to their default settings.

The defaults used for each setting are the same defaults with which Microsoft Excel creates a blank worksheet.

Gets or sets the magnification level of the worksheet when it is displayed in normal view.

Magnifications are stored as percentages of the normal viewing magnification. A value of 100 indicates normal magnification whereas a value of 200 indicates a zoom that is twice the normal viewing magnification.

The assigned value is outside the valid range of magnification levels for a worksheet. The level must be between 10 and 400. The magnification level of the worksheet when it is displayed in normal view.
Gets or sets the magnification level of the worksheet when it is displayed in the page break preview.

Magnifications are stored as percentages of the normal viewing magnification. A value of 100 indicates normal magnification whereas a value of 200 indicates a zoom that is twice the normal viewing magnification.

The assigned value is outside the valid range of magnification levels for a worksheet. The level must be between 10 and 400. The magnification level of the worksheet when it is displayed in the page break preview.
Gets or sets the magnification level of the worksheet when it is displayed in page layout view.

Magnifications are stored as percentages of the normal viewing magnification. A value of 100 indicates normal magnification whereas a value of 200 indicates a zoom that is twice the normal viewing magnification.

The assigned value is outside the valid range of magnification levels for a worksheet. The level must be between 10 and 400. The magnification level of the worksheet when it is displayed in page layout view.
Gets or sets the value indicating whether the columns are ordered right to left.

If the columns are ordered right to left, other aspects of the worksheet display differently. The vertical scrollbar will display on the left side of the worksheet and the worksheet tab bar, usually displayed on the left side of the worksheet, will display on the right side.

The value indicating whether the columns are ordered right to left.
Gets or sets the value which indicates whether to show whitespace between worksheet pages in page layout view.

Note: For this value to affect the display of the worksheet, the must be set to PageLayout. However, if a different view is used, this is still saved with the workbook.

Note: The value of PageLayout is only supported in Excel 2007. If a worksheet with that View is viewed in earlier versions of Microsoft Excel, the view will default to Normal view.

The value which indicates whether to show white page between worksheet pages in page layout view.
Gets or sets the color to use for the associated worksheet's tab in the tab bar of Microsoft Excel.

If the tab bar is not visible, this color will not be seen.

The workbook is using a custom palette and setting this color would cause the custom palette to use too many colors. The color to use for the associated worksheet's tab in the tab bar of Microsoft Excel.
Represents any image on the worksheet except the background image. Creates a new instance. The image displayed in the worksheet for this shape. is null. Sets the bounds of the shape in twips (1/20th of a point).

The shape will only be position at the specified bounds while the worksheet remains in the current configuration. If any rows or columns before or within the shape are resized, the shape will no longer be placed at the bounds specified.

If is False, this just calls on its base class.

is null. The worksheet on which the shape should be placed. The new bounds where the shape should be placed. The value indicating whether the image's aspect ratio should be maintained.
Gets the image displayed in the worksheet for this shape. The image displayed in the worksheet for this shape. Represents a merged region of cells, or cells which share a value and format and appear as one cell when viewed in Microsoft Excel.

Merged cell regions cannot overlap (a cell can only belong to one merged cell region). In addition, and instances cannot be applied to merged cell regions.

Represents a rectangular region of cells on a worksheet. Initializes a new instance of the class. is null. is greater than or is greater than . Any row or column indices specified are outside the valid row or column ranges. The worksheet on which the region resides. The index of the first row of the region. The index of the first column of the region. The index of the last row of the region. The index of the last row column of the region. Determines whether the specified value equals this . The value to test for equality. Gtes the hash code for the . Gets the string representation of the range of cells in the region. The string representation of the range of cells in the region. Applies a array formula to the region of cells.

is parsed based on the of the to which the region belongs. If the region's has been removed from its parent collection, the A1 CellReferenceMode will be used to parse the formula.

The array formula to parse and apply to the region. is null or empty. is not a valid formula. The region contains another array formula or data table which extends outside the region.
Applies a formula to the region of cells.

is parsed based on the of the to which the region belongs. If the region's has been removed from its parent collection, the A1 CellReferenceMode will be used to parse the formula.

The formula to parse and apply to the region. is null or empty. is not a valid formula. The region contains an array formula or data table which extends outside the region.
Gets the bounds of the region in twips (1/20th of a point).

The bounds returned by this method are only valid with the current configuration of the worksheet. If any rows or columns before the region are resized, these bounds will no longer reflect the position of the region.

The bounds of the region on its worksheet.
Gets the string representation of the range of cells in the region. The mode used to generate cell references. The value indicating whether to include the worksheet name in the range address. The string representation of the range of cells in the region. Gets the string representation of the range of cells in the region. The mode used to generate cell references. The value indicating whether to include the worksheet name in the range address. The value indicating whether to use a relative column address for the cells in the range. The value indicating whether to use a relative row address for the cells in the range. The string representation of the range of cells in the region. Gets the index of the first column in the region. The index of the first column in the region. Gets the index of the first row in the region. The index of the first row in the region. Gets the index of the last column in the region. The index of the last column in the region. Gets the index of the last row in the region. The index of the last row in the region. Gets the worksheet on which the region resides. The worksheet on which the region resides. Gets the cell formatting for the merged cell region. The cell formatting for the merged cell region. Gets or sets the comment for the merged cells region.

The comment of the merged region can also be accessed from the top-left cell of the merged region of cells.

The comment for the merged cells region.
Gets the formula which has been applied to the merged region. The formula which has been applied to the merged region or null if no formula has been applied. Gets or sets the value of the merged cell region.

The types supported for the value are:

  • System.Byte
  • System.SByte
  • System.Int16
  • System.Int64
  • System.UInt16
  • System.UInt64
  • System.UInt32
  • System.Int32
  • System.Single
  • System.Double
  • System.Boolean
  • System.Char
  • System.Enum
  • System.Decimal
  • System.DateTime
  • System.String
  • System.Text.StringBuilder
  • System.DBNull

The assigned value's type is not supported and can't be exported to Excel. The value assigned is a . Instead, should be called on the Formula, passing in the cell. The value assigned is a . Instead, the should be set to a region containing the cell. The value assigned is a FormattedString which is the value another cell or merged cell region. The value is assigned and this cell is part of an or WorksheetDataTable. The value of the merged cell region.
A collection of instances in a . Creates new merged cell region and adds it to the collection.

The new merged cell region will take its value from the first cell containing a value, starting at the top-left and going across then down in the region. The value of all other cells will be lost. Similarly, the new region will initialize its cell format from the first cell containing a non-default cell format.

The index of the first row of the merged cell region. The index of the first column of the merged cell region. The index of the last row of the merged cell region. The index of the last row column of the merged cell region. is greater than or is greater than . Any row or column indices specified are outside the valid row or column ranges. The new merged cell region overlaps with an existing merged cell region. The newly created .
Clears all merged cell regions from the collection.

When a merged cell region is removed, the top-left cell in the region will retain the region's value. All other cells in the region will have a null value. In addition, all cells in the merged region will have the region's cell format when it is removed.

Checks if any part of specified region is already a part of a merged cell region. The index of the first row of the merged cell region. The index of the first column of the merged cell region. The index of the last row of the merged cell region. The index of the last row column of the merged cell region. True if any part of specified region is a part of merged cell region; False otherwise. Removes the specified merged cell region from the collection.

When a merged cell region is removed, the top-left cell in the region will retain the region's value. All other cells in the region will have a null value. In addition, all cells in the merged region will have the region's cell format when it is removed.

The merged cell region to remove from the collection. True if the merged cell region was successfully removed; False if the merged cell region was not in the collection.
Removes the merged cell region at the specified index from the collection.

When a merged cell region is removed, the top-left cell in the region will retain the region's value. All other cells in the region will have a null value. In addition, all cells in the merged region will have the region's cell format when it is removed.

The zero-based index of the merged cell region in the collection. is less than zero or is greater than or equal to .
Gets the number of merged cell regions in the collection. The number of merged cell regions in the collection. Gets the merged cell region at the specified index. The zero-based index of the merged cell region to get. is less than zero or is greater than or equal to . The merged cell region at the specified index. Represents a row in a Microsoft Excel worksheet. Gets the collection of cells in the row.

The collection of cells is a fixed length collection, with the maximum number of cells in the collection being or , depending on the Workbook.CurrentFormat. Internally, the cells are only created and added to the collection when they are requested.

Note: Iterating the collection will not create all cells. It will only iterate the cells which have already been used. To create and iterate all cells in the worksheet use a For loop, iterating from 0 to one less than MaxExcelColumnCount, and pass in each index to the collection's indexer.

The collection of cells in the row.
Gets or sets the height of the row in twips (1/20th of a point).

If the height of the row is less than zero, the of the owning worksheet will be used as the row's height.

The value assigned must be between 0 and 8192. Invalid values will be automatically adjusted to valid values.

The height of the row in twips (1/20th of a point).
A collection of rows in a worksheet.

Rows in this collection are lazily created (they are only created and added to the collection when they are accessed). If this collection is enumerated, it only enumerates the rows which were already accessed.

Gets the maximum number of items allowed in this collection. Gets the row at the specified index.

Note: Iterating the collection will not create all rows. It will only iterate the rows which have already been used. To create and iterate all rows in the worksheet use a For loop, iterating from 0 to one less than the maximum row count, and pass in each index to the collection's indexer.

The zero-based index of the row to get. is less than zero. is greater than or equal to or , depending on the . The row at the specified index.
A collection of worksheets in a workbook. Creates a new and adds it to the collection.

If the workbook originally had no worksheets, the newly added worksheet will become the selected worksheet of the workbook. This can be changed after more worksheets are added by setting the of the Workbook.

The name to give the new Worksheet. is null or empty. contains the invalid characters: ':', '\', '/', '?', '*', '[', or ']'. exceeds 31 characters in length. is being used as the name of another worksheet (worksheet names are case-insensitively compared). The Worksheet created with the specified name.
Clears all worksheets from the collection.

If there are any instances in the collection with a worksheet for a scope, they will be removed from the .

Determines whether a worksheet is in the collection. The worksheet to locate in the collection. True if the worksheet is found; False otherwise. Determines whether a worksheet with the specified name exists in the collection. The name of the worksheet to search for. The name is compared case-insensitively. True if a worksheet with the specified name is found; False otherwise. Gets the index of the specified worksheet in the collection. The worksheet of which to get the index. The index of the specified worksheet in the collection. Removes the specified worksheet from the collection. The worksheet to remove from the collection.

If there are any instances in the collection with the worksheet to remove as their scope, they will be removed from the .

True if the worksheet was successfully removed from the collection; False if the worksheet did not exist in the collection.
Removes the worksheet at the specified index from the collection. The index of the worksheet to remove from the collection.

If there are any instances in the collection with the worksheet to remove as their scope, they will be removed from the .

is less than zero or is greater than or equal to .
Gets the number of worksheets in the collection. The number of worksheets in the collection. Gets the worksheet at the specified index. The zero-based index of the worksheet to get. is less than zero or is greater than or equal to . The worksheet at the specified index. Gets the worksheet with the specified name.

Worksheet names are compared case-insensitively.

The name of the worksheet to get. A worksheet with the specified name does not exist in the collection. The worksheet with the specified name.
A collection of instances in a or . Adds a shape to the collection. The shape to add to the collection. is null. has already been added to a worksheet or group. does not have the or set. Adding to this collection will place it on a different worksheet then either its TopLeftCornerCell or BottomRightCornerCell or is a and adding it to this collection will create a similar situation for one of its descendant shapes. is a WorksheetShapeGroup and this is the group's collection of shapes. Clears all shapes from the collection. Determines whether a shape is in the collection. The shape to locate in the collection. True if the shape is found; False otherwise. Removes the specified shape from the collection. The shape to remove from the collection. True if the shape was successfully removed from the collection; False if the shape did not exist in the collection. Removes the shape at the specified index from the collection. The index of the shape to remove from the collection. is less than zero or is greater than or equal to . Gets the number of shapes in the collection. The number of shapes in the collection. Gets the shape at the specified index in the collection. The zero-based index of the shape to get. is less than zero or is greater than or equal to . The shape at the specified index.