Telerik.Windows.Documents.Spreadsheet
Provides data for the CommandError event raised when a workbook command fails during execution.
Gets the exception that caused the command to fail.
The exception.
Gets or sets whether the exception has been handled by the event subscriber, preventing further propagation.
The value indicating whether the exception is handled.
Provides data for the CommandExecuted event raised after a workbook command completes successfully.
Base class for event arguments related to workbook command execution, providing command metadata and undo context.
Gets whether the command is being executed as part of an undo operation.
The value indicating whether the event has occurred while in undo.
Gets the display name of the command being executed.
The name of the command.
Provides data for the CommandExecuting event raised before a workbook command begins execution, allowing cancellation.
Gets whether the command execution has been canceled by calling the Cancel method.
The value indicating whether the command is canceled.
Cancels the pending command execution, preventing it from being performed.
Initializes a new instance of the class.
The worksheet to copy to.
The worksheet to copy from.
Gets the target worksheet - the worksheet to copy to.
The target worksheet.
Gets the source worksheet - the worksheet to copy from.
The source worksheet.
Provides a disposable scope that executes a begin action on creation and an end action on disposal, enabling batch update patterns.
Initializes a new instance of the class, executing the begin action immediately.
The begin update action.
The end update action.
Executes the end update action when the scope is disposed.
Sets a single value of compressed list to range starting from "fromIndex" and ending at "toIndex".
From index.
To index.
The single value compressed list.
Sets a single value of compressed list to range starting from "fromIndex" and ending at "toIndex".
From index.
To index.
The single value compressed list.
Dictionary that preserves the order of adding of the items.
The type of keys in the dictionary.
The type of values in the dictionary.
Represents an inclusive integer range with a start and end index, used for row, column, and cell indexing operations.
Gets the inclusive starting index of the range.
The start.
Gets the inclusive ending index of the range.
The end.
Gets the total number of indices covered by this range, calculated as (End - Start + 1).
The length.
Initializes a new instance of the class with the specified start and end indices.
The start.
The end.
Expands the range to include the specified index and returns the resulting range.
The index.
The expanded range.
Creates a new single-index range if the input range is null, or expands the existing range to include the specified index.
The range.
The index.
The result range.
Returns the maximum bounding range of two ranges, or null if both ranges are null.
The first range.
The second range.
The maximum range or null.
Computes the maximum bounding range that encompasses both input ranges.
The first range.
The second range.
The result range.
Returns a that represents the current
.
A that represents the current .
Provides an ordered collection of named objects with dictionary-style access by name and list-style ordering.
The type of the T.
Gets the number of elements contained in the .
The number of elements contained in the .
Gets a value indicating whether the
is read-only.
True if the
is read-only; otherwise, false.
Initializes a new instance of the class.
Retrieves the item with the specified name, or the default value if not found.
Name of the item.
The item if exists, else the default value of the returned type.
Adds the specified item.
The new item.
Inserts the new item immediately before the specified existing item in the collection.
Name of the next item.
The new item.
True if succeed.
Inserts the new item immediately after the specified existing item in the collection.
Name of the item after which the new item will be added.
The new item.
True if succeed.
Adds the item at the beginning of the collection, making it the first element.
The item to add.
Adds the item at the end of the collection.
The item to add.
Determines whether the specified item is contained in the collection.
The item to locate in the collection.
True if contained.
Determines whether an item with the specified name exists in the collection.
Name of the item.
True if contained.
Invoked immediately before removing an item, allowing derived classes to perform cleanup.
The item to remove.
Removes the specified item.
The item to remove.
True if succeed.
Removes the item with the specified name from the collection.
Name of the item.
True if succeed.
Copies all items to the specified array starting at the given index.
The array.
Index of the array.
Removes all items from the .
The
is read-only.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Provides a dictionary-based collection of named objects with change notification and item replacement events.
The type of the T.
Gets a value indicating whether the change events are suspended.
The value indicating whether the change events are suspended.
Gets the total number of items in the collection.
The count.
Gets the INamedObject at the specified index.
The index of the desired element.
The item at specified index.
Initializes a new instance of the class.
Adds the specified item.
The new item.
Replaces the item with the specified name with a new item, raising ItemReplaced and Changed events.
Name of the item to replace.
The item to replace with.
Adds multiple items to the collection in a single update scope, raising Changed once after all additions.
The range of items.
Attempts to retrieve the item with the specified name without throwing an exception if not found.
The name of the searched item.
The result.
True if succeed.
Retrieves the item with the specified name, throwing an exception if not found.
The name of the searched item.
The searched item.
Determines whether item with the specified name is contained in the collection.
The name of the searched item.
True if contained.
Determines whether the specified item is contained in the collection.
The searched item.
True if contained.
Removes the item with the specified name from the collection and raises the Changed event.
The name of the item.
Removes all items from the collection and raises the Changed event.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Called when an item is replaced.
Name of the replaced item.
New name of the item.
Raised when an item is replaced via the Replace method, providing old and new item names.
Raises the event.
The instance containing the event data.
Raised after items are added, removed, or cleared, unless change events are suspended.
Called when the collection is changed.
Provides data for the ItemReplaced event, including the original and new names of the replaced item.
Gets the original name of the item that was replaced.
The name of the item.
Gets the name of the replacement item.
The new name of the item.
Initializes a new instance of the class.
Name of the item.
New name of the item.
Base class for types that implement INotifyPropertyChanged, providing helper methods for raising property change notifications.
Initializes a new instance of the class, providing a foundation for implementing property change notifications.
Raises the PropertyChanged event for the specified property name.
Name of the property.
Occurs when a property value changes.
Raises the event.
The instance containing the event data.
Provides data for cancelable events, allowing subscribers to cancel the operation by calling Cancel.
Gets whether the event and its associated operation have been canceled.
The canceled.
Initializes a new instance of the class.
Cancels the event and its associated operation, setting the Canceled property to true.
Specifies the direction for autofill operations in spreadsheet cell ranges.
Fills cells to the left of the source range.
Fills cells above the source range.
Fills cells to the right of the source range.
Fills cells below the source range.
Expression that adds two numeric operands and returns their sum.
Gets the operator info.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with left and right operands.
The left.
The right.
The workbook.
Gets the value.
The operands of type T.
Value as RadExpression.
Gets the operator info.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with left and right operands.
The left.
The right.
The workbook.
Gets the value.
The operands of type T.
Value as RadExpression.
Implements the spill range operator (#), resolving a cell reference to its entire spill range.
Returns the ArrayExpression if the operand evaluates to an array, or #REF! otherwise.
In XLSX, this is stored as _xlfn.ANCHORARRAY(inner).
Evaluates the expression and returns an array expression or an error.
The result as RadExpression
Returns the XLSX XML representation of this expression (_xlfn.ANCHORARRAY(inner)).
Provides dimension calculation and element-access helpers for element-wise broadcasting of ArrayExpression operands,
following Excel dynamic array broadcasting rules.
Computes the output (rows, cols) when broadcasting two operands.
A 1×1 scalar expands to match the other operand's size.
A single-row or single-column operand expands along the missing axis.
Mismatched non-scalar dimensions are resolved by taking the maximum, and out-of-bounds
accesses via return #N/A.
Returns the scalar element at , within
, applying broadcast rules:
- A non-array (scalar) constant is returned for every index.
- A single-row array's row index is clamped to 0.
- A single-column array's column index is clamped to 0.
- An out-of-bounds access returns #N/A.
Expression representing a two-dimensional array of expressions, used for multi-cell array formulas and literal array constants.
Gets the number of rows in the array.
The row count.
The row count as Int32.
Gets the number of columns in the array.
The column count.
The column count as Int32.
Gets a value indicating whether the array contains more than one element (i.e., is not a 1×1 scalar wrapper).
Gets the expressions on which the current expression depends.
Gets the at the specified row and column index.
The at the specified row and column index.
The at the specified row and column index.
Initializes a new instance of the class with the specified expression array.
The array.
Evaluates all expressions in the array and returns a new ArrayExpression with the computed constant values.
The value as RadExpression.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Base class for expressions that perform binary operations on two operands of a specified type.
The type T of the operands.
Gets the rules used to convert operand values to the expected type during evaluation.
The argument conversion rules.
The argument conversion rules.
Gets the left-hand operand of the binary operation.
The left operand.
The left operand as RadExpression.
Gets the right-hand operand of the binary operation.
The right operand.
The right operand as RadExpression.
Gets the expected argument type for both operands, determining how values are coerced during evaluation.
The type of the operands.
The type of the operands as ArgumentType.
Gets a value indicating whether this operator should perform array evaluation (element-wise operation on arrays) when one or both operands evaluate to arrays.
Initializes a new instance of the class with left and right operands.
The left operand.
The right operand.
The workbook.
Overridable method for getting expression value.
The value as RadExpression.
Gets the value.
The operands of type T.
Value as RadExpression.
Gets the expressions that the value of this expression depends on.
Toes the string.
The culture info.
The result string.
Constant expression representing a boolean value (TRUE or FALSE), providing static instances for both states.
Singleton instance representing the boolean TRUE value.
Singleton instance representing the boolean FALSE value.
Base class for binary operators that operate on cell reference range expressions, such as union and intersection.
Gets the type of the operands.
The type of the operands as ArgumentType.
The type of the operands.
Gets a value indicating whether this operator should perform array evaluation (element-wise operation on arrays) when one or both operands evaluate to arrays.
Initializes a new instance of the class with left and right operands.
The left.
The right.
The workbook.
Toes the string.
The culture info.
The result string.
Overridable method for getting expression value.
The value as RadExpression.
Overridable method for getting expression value.
The value as RadExpression.
Gets the expressions that the value of this expression depends on.
Expression representing one or more cell reference ranges, evaluating to the cell values within those ranges and updating when cell content changes.
Gets the first cell reference range in this expression.
The cell reference range.
The cell reference range as CellReferenceRange.
Gets the read-only collection of all cell reference ranges included in this expression.
The cell reference ranges.
Gets whether this expression is valid, meaning all ranges are valid and belong to the same worksheet.
Gets whether all cell reference ranges refer to cells within the worksheet boundaries.
Gets whether this expression contains exactly one cell reference range.
Gets the array expression containing the evaluated values of the first cell reference range.
Empty cells are represented as (matches Excel array-context behaviour).
Gets the array expression containing the evaluated values of the first cell reference range,
preserving empty cells as instead of converting them to zero.
Use this variant in functions (such as COUNTIF and SUMIF) that must distinguish an empty cell
from a cell that contains the numeric value 0.
Initializes a new instance of the class with multiple cell reference ranges.
The cell reference ranges.
Evaluates all cell reference ranges and returns an array expression containing the cell values.
For a single range the flat is returned directly so that broadcasting
and implicit-intersection logic receive the correct dimensions without an extra wrapper layer.
A plain single-cell reference such as =A1 always applies implicit intersection and returns
the anchor value as a scalar; only the # operator () may
unwrap a nested spill array.
The value as RadExpression.
Toes the string.
The culture info.
Called when the value is invalidated.
Sparse collection storing only explicitly set values while appearing to contain values at all indexes, using a default value for unset positions. Enables efficient memory usage for large, mostly-empty grids such as worksheet cell data.
The value type stored by the collection.
The total logical capacity of the collection, representing all positions including unset ones.
Indicates whether any values have been explicitly set in the collection.
Initializes a new instance of the CompressedCollection class with specified dimensions and default value for unset cells.
The number of rows.
The number of columns.
The default value used to initialize all cells of the collection.
Accesses the value at the specified row and column, returning the default value if the cell has not been explicitly set.
The row index of the cell.
The column index of the cell.
Returns the size of the specified dimension: 0 for row count, 1 for column count.
The dimension for which to get the length. 0 for rows, 1 for columns.
The number of items in the selected dimension.
Returns an enumerator that iterates through all logical positions in row-major order, yielding default values for unset cells.
The enumerator.
Sparse collection optimized for storing RadExpression objects in a two-dimensional grid, using EmptyExpression as the default for unset cells. Use this for formula storage in worksheets with minimal memory overhead.
Initializes a new instance with the specified row and column dimensions, defaulting unset cells to EmptyExpression.
The rows count.
The columns count.
Implements the DAYS function that calculates the number of days between two dates by subtracting start date from end date.
The name of the function.
The function name "DAYS" as recognized in formulas.
The name as String.
The name.
Metadata describing the function's parameters and description.
The function info as FunctionInfo.
The function info.
Conversion rules specific to the DAYS function, treating text dates as errors in direct arguments.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Initializes a new instance of the Days function that calculates the difference in days between two dates.
Evaluates the DAYS function by subtracting the start date from the end date to calculate the number of days between them, returning #NUM! error for negative or out-of-range dates.
The context.
Functions result as RadExpression.
Encapsulates the context for function evaluation, including arguments, worksheet reference, and cell position where the function is invoked.
Type of the arguments.
Provides the array of arguments passed to the function for evaluation.
The arguments.
Returns the worksheet containing the cell where the function is being evaluated.
The worksheet.
Returns the zero-based row index of the cell containing the function.
The index of the row.
Returns the zero-based column index of the cell containing the function.
The index of the column.
Initializes a new with the specified arguments, worksheet reference, and cell coordinates for function evaluation.
The arguments.
The worksheet.
Index of the row.
Index of the column.
The expression that is being evaluated.
Implements the CHOOSE function, which uses an index number to select and return one value from a list of value arguments.
The name of the function.
Gets the name of the function as "CHOOSE".
The name as String.
The name.
Gets the metadata describing the CHOOSE function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new CHOOSE function instance.
Evaluates the CHOOSE function by using the index argument to select and return the corresponding value from the list.
Functions result as RadExpression.
Implements the MATCH function, which searches for a value in a range and returns its relative position within that range.
The name of the function.
Gets the name of the function as "MATCH".
The name as String.
The name.
Gets the metadata describing the MATCH function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Only the lookup_value argument (index 0) drives spilling.
The lookup_array (index 1) and match_type (index 2) are never spilling arguments —
lifting over the array being searched would break the search entirely.
Initializes a new MATCH function instance.
Evaluates the MATCH function by searching the lookup array for the specified value and returning its 1-based position.
The context.
Function result as RadExpression.
Implements the HLOOKUP function, which searches for a value in the top row of a table and returns a value from a specified row in the same column.
The name of the function.
Gets the name of the function as "HLOOKUP".
The name as String.
The name.
Gets the metadata describing the HLOOKUP function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new HLOOKUP function instance.
Implements the INDIRECT function, which evaluates a text string as a cell reference and returns the reference to that cell or range.
The name of the function.
Gets the name of the function as "INDIRECT".
The name as String.
The name.
Gets the metadata describing the INDIRECT function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new INDIRECT function instance.
Evaluates the INDIRECT function by parsing the text reference and returning a cell reference expression or error if invalid or circular.
The context.
Functions result as RadExpression.
Abstract base for table lookup functions such as VLOOKUP, HLOOKUP, and LOOKUP, providing shared logic for searching and matching values in ranges.
Initializes a new lookup function base instance.
Evaluates the lookup function by extracting the lookup and result vectors, applying the search criteria, and returning the matched value.
The context.
Functions result as RadExpression.
Searches the leftmost column of a table for a value and returns a match from a specified column in the same row, supporting both exact and approximate matching.
The name of the function.
Gets the function name "VLOOKUP".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new VLOOKUP function instance for vertical lookup operations in table data.
Removes extra spaces from text, leaving only single spaces between words; implements the TRIM text function.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata about the function including its arguments and category.
The function info as FunctionInfo.
The function info.
Initializes a new instance that removes extra spaces from text, leaving only single spaces between words.
Evaluates the TRIM function with the provided arguments and returns the text with extra spaces removed.
Functions result as RadExpression.
Defines how a function argument value should be interpreted during evaluation: used as-is, treated as error, ignored, or converted to a default value.
Use the argument value without conversion.
Treat the argument as an error value.
Ignore this argument in the calculation.
Convert the argument to its default value for the expected type.
Defines how array arguments should be interpreted: use the first element only, use all elements, or ignore all elements.
Use only the first element of the array.
Use all elements of the array in the calculation.
Ignore all elements of the array.
Defines how a function converts and interprets different argument types during evaluation, controlling behavior for direct vs. indirect references, empty values, booleans, and text. Use predefined rule sets for common function categories.
Represents number function argument conversion rule.
Represents non boolean function argument conversion rule.
Represents nary number function argument conversion rule.
Represents non boolean nary function argument conversion rule.
Represents default value number function argument conversion rule.
Represents nary ingnore indirect number function argument conversion rule.
Represents boolean function argument conversion rule.
How to interpret an empty value passed directly as a function argument.
The empty direct argument interpretation.
The empty direct argument interpretation.
How to interpret a numeric value passed directly as a function argument.
The number direct argument interpretation.
The number direct argument interpretation.
How to interpret a boolean value passed directly as a function argument.
The boolean direct argument interpretation.
The boolean direct argument interpretation.
How to interpret text that can be parsed as a number when passed directly as a function argument.
The text number direct argument interpretation.
The text number direct argument interpretation.
How to interpret text that cannot be parsed as a number when passed directly as a function argument.
The non text number direct argument interpretation.
The non text number direct argument interpretation.
How to interpret an empty value from a cell reference or range passed as a function argument.
The empty indirect argument interpretation.
The empty indirect argument interpretation.
How to interpret a numeric value from a cell reference or range passed as a function argument.
The number indirect argument interpretation.
The number indirect argument interpretation.
How to interpret a boolean value from a cell reference or range passed as a function argument.
The boolean indirect argument interpretation.
The boolean indirect argument interpretation.
Gets the text number indirect argument interpretation.
The text number indirect argument interpretation.
The text number indirect argument interpretation.
Gets the non text number indirect argument interpretation.
The non text number indirect argument interpretation.
The non text number indirect argument interpretation.
Gets the array argument interpretation.
The array argument interpretation.
The array argument interpretation.
Gets the value which determines whether the text of the argument should be converted as a date serial number or not.
Initializes a new instance of the class.
The conversion rules concerning the non-array argument interpretation.
The array argument interpretation.
Initializes a new instance of the class.
The empty direct argument interpretation.
The number direct argument interpretation.
The boolean direct argument interpretation.
The text number direct argument interpretation.
The non text number direct argument interpretation.
The empty indirect argument interpretation.
The number indirect argument interpretation.
The boolean indirect argument interpretation.
The text number indirect argument interpretation.
The non text number indirect argument interpretation.
The array argument interpretation.
Categorizes function arguments by their expected data type for validation and documentation purposes.
Argument accepts any value type.
Argument expects a boolean (TRUE/FALSE) value.
Argument expects a numeric value.
Argument expects a text string value.
Argument expects a cell or range reference.
Argument expects an array or range of values.
Metadata describing a function argument including its name, expected type, description, and whether it is required or optional. Use this for function documentation and validation.
The argument's display name.
The name.
The name as String.
The human-readable description explaining what the argument does.
The description.
The description as String.
The localization resource key for the argument name.
The name localization key.
The localization resource key for the argument description.
The description localization key.
The expected data type for this argument.
The type.
The type as ArgumentType.
Initializes a new instance of the class with metadata for a function argument, optionally supporting localization.
The name of the argument.
The description of the argument.
The type type of the argument.
Boolean indicating whether the argument is required or optional. If it is required, it should be set to true.
The localization key of the name of the argument.
The localization key of the description of the argument.
Abstract base for functions that accept boolean arguments, applying boolean-specific conversion rules during evaluation.
Initializes a new instance of the BooleansInFunction class.
The argument conversion rules specific to boolean functions, controlling how non-boolean values are handled.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Implements the DATE function that constructs a date serial number from year, month, and day components, returning a formatted date value.
The name of the function.
The function name "DATE" as recognized in formulas.
The name as String.
The name.
Metadata describing the function's parameters, description, and return format.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the Date function that constructs date serial numbers from year, month, and day values.
Evaluates the DATE function by constructing a date serial number from year, month, and day arguments, returning #NUM! error for invalid or negative dates.
The context.
Functions result as RadExpression.
Implements the DATEVALUE function that parses a text string into a date serial number, allowing conversion of date strings to numeric values.
The name of the function.
The function name "DATEVALUE" as recognized in formulas.
The name as String.
The name.
Metadata describing the function's parameters and description.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the DateValue function that converts date text strings to serial numbers.
Evaluates the DATEVALUE function by parsing the text argument as a date and returning its serial number, or #VALUE! error if the text is not a valid date.
The context.
Functions result as RadExpression.
Implements the DAY function that extracts the day component (1-31) from a date serial number.
The name of the function.
The function name "DAY" as recognized in formulas.
The name as String.
The name.
Metadata describing the function's parameters and description.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the Day function that extracts the day component from dates.
Evaluates the DAY function by extracting the day component from the date serial number argument, returning #NUM! error for negative or invalid dates.
The context.
Functions result as RadExpression.
Implements the HOUR function that extracts the hour component (0-23) from a time serial number.
The name of the function.
The function name "HOUR" as recognized in formulas.
The name as String.
The name.
Metadata describing the function's parameters and description.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the Hour function that extracts the hour component from time values.
Evaluates the HOUR function by extracting the hour component from the time serial number argument, returning #NUM! error for negative or invalid times.
The context.
Functions result as RadExpression.
Implements the MINUTE function, extracting the minute component from a time serial number and returning an integer 0–59.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new MINUTE function instance for extracting minute components from time values.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the MONTH function, extracting the month component from a date serial number and returning an integer 1–12.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new MONTH function instance for extracting month components from date values.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the SECOND function, extracting the second component from a time serial number and returning an integer 0–59.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new SECOND function instance for extracting second components from time values.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the TIME function, constructing a time serial number from separate hour, minute, and second components.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new TIME function instance for building time values from hour, minute, and second components.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the TIMEVALUE function, parsing text-formatted time strings into time serial numbers in the range 0–0.99999999.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new TIMEVALUE function instance for converting text-formatted times into serial numbers.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the TODAY function, returning the current date as a serial number without a time component.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new TODAY function instance for retrieving the current system date.
Virtual method that evaluates the function with the specified context.
The context.
Function result as RadExpression.
Implements the YEAR function, extracting the year component from a date serial number and returning an integer 1900–9999.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new YEAR function instance for extracting year components from date values.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates accrued interest for a security that pays interest at maturity and returns the total interest amount accrued from issue to settlement date.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new ACCRINTM function instance for calculating accrued interest on maturity-paying securities.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates depreciation for each accounting period using the French accounting system and returns the depreciated amount with coefficient adjustments based on asset life and prorated for partial periods.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new AMORDEGRC function instance for French accounting depreciation calculations with life-based coefficients.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates linear depreciation for each accounting period using the French accounting system and returns the depreciated amount prorated for partial periods.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new AMORLINC function instance for French accounting linear depreciation calculations.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BESSELI function, computing the modified Bessel function In(x) for purely imaginary arguments.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BESSELI function instance for computing modified Bessel functions of the first kind.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BESSELJ function, computing the Bessel function Jn(x) of the first kind.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BESSELJ function instance for computing Bessel functions of the first kind.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BESSELK function, computing the modified Bessel function Kn(x) of the second kind for purely imaginary arguments.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BESSELK function instance for computing modified Bessel functions of the second kind.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BESSELY function, computing the Bessel function Yn(x) of the second kind, also known as the Weber or Neumann function.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BESSELY function instance for computing Bessel functions of the second kind.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BIN2DEC function, converting a binary string up to 10 bits into its decimal integer equivalent.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BIN2DEC function instance for converting binary strings to decimal integers.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BIN2HEX function, converting a binary string up to 10 bits into its hexadecimal string representation.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BIN2HEX function instance for converting binary strings to hexadecimal format.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BIN2OCT function, converting a binary string up to 10 bits into its octal string representation.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BIN2OCT function instance for converting binary strings to octal format.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Converts a hexadecimal number to binary representation, optionally padded to a specified length.
The name of the function.
Gets the argument conversion rules that control how cell values are coerced for this function.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new Hex2Bin function instance for hexadecimal to binary conversion.
Evaluates the function with the provided arguments and returns the binary representation as a string expression.
The context.
Functions result as RadExpression.
Converts a hexadecimal number to decimal representation.
The name of the function.
Gets the argument conversion rules that control how cell values are coerced for this function.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new Hex2Dec function instance for hexadecimal to decimal conversion.
Evaluates the function with the provided arguments and returns the decimal value as a number expression.
The context.
Functions result as RadExpression.
Converts a hexadecimal number to octal representation, optionally padded to a specified length.
The name of the function.
Gets the argument conversion rules that control how cell values are coerced for this function.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new Hex2Oct function instance for hexadecimal to octal conversion.
Evaluates the function with the provided arguments and returns the octal representation as a string expression.
The context.
Functions result as RadExpression.
Converts an octal number to binary with optional zero-padding.
The name of the function.
Gets the argument conversion rules that accept numeric inputs but not boolean values.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name "OCT2BIN".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new OCT2BIN function instance.
Converts the octal number to binary and returns the result, optionally padded to the specified number of places.
The context.
Functions result as RadExpression.
Converts an octal number to its decimal representation.
The name of the function.
Gets the argument conversion rules that accept numeric inputs but not boolean values.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name "OCT2DEC".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new OCT2DEC function instance.
Converts the octal number to decimal and returns the result as a numeric expression.
The context.
Functions result as RadExpression.
Converts an octal number to hexadecimal and returns the formatted hexadecimal string, with optional padding to a specified number of characters. It supports up to 10 octal characters.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new OCT2HEX function instance for octal-to-hexadecimal conversion.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the COMPLEX function, constructing a complex number string in the form x + yi or x + yj from real and imaginary coefficients.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new COMPLEX function instance for building complex number strings from real and imaginary parts.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Converts a numeric value from one measurement system to another, supporting conversions between compatible unit types such as distance, weight, temperature, and other measurement categories.
The name of the function.
The function name "CONVERT" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Initializes a new CONVERT function instance for converting numeric values between measurement systems.
Evaluates the conversion function with the provided arguments and returns the converted numeric result or an error expression.
The context.
Functions result as RadExpression.
Tests whether a numeric value meets or exceeds a threshold and returns 1 if true or 0 otherwise, useful for filtering and counting values that exceed a threshold through summation.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "GESTEP" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new GESTEP function instance for testing if values meet or exceed a threshold.
Evaluates the threshold comparison and returns 1 if the number meets or exceeds the step value, or 0 otherwise.
The context.
Functions result as RadExpression.
Computes the absolute value (modulus) of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImAbs function instance for computing complex number magnitude.
Evaluates the function with the provided complex number argument and returns the modulus as a number expression.
The context.
Functions result as RadExpression.
Extracts the imaginary coefficient from a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new Imaginary function instance for extracting the imaginary component of complex numbers.
Evaluates the function with the provided complex number argument and returns the imaginary coefficient as a number expression.
The context.
Functions result as RadExpression.
Computes the argument θ (theta) of a complex number, expressed as an angle in radians.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImArgument function instance for computing the angle of complex numbers in radians.
Evaluates the function with the provided complex number argument and returns the angle in radians as a number expression.
The context.
Functions result as RadExpression.
Computes the complex conjugate of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImConjugate function instance for computing complex conjugates.
Evaluates the function with the provided complex number argument and returns the conjugate as a string expression.
The context.
Functions result as RadExpression.
Subtracts one complex number from another in x+yi or x+yj text format and returns the difference.
The name of the function.
Gets the function name "IMSUB".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMSUB function instance.
Subtracts the second complex number from the first and returns the difference as a text expression.
The context.
Functions result as RadExpression.
Adds 1 to 255 complex numbers in x+yi or x+yj text format and returns their sum.
The name of the function.
Gets the argument conversion rules that treat non-complex-text inputs as errors and process all array elements.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name "IMSUM".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMSUM function instance.
Adds all complex number arguments and returns the sum as a text expression.
The context.
Functions result as RadExpression.
Extracts the real coefficient from a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMREAL".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMREAL function instance.
Extracts and returns the real coefficient of the complex number as a numeric expression.
The context.
Functions result as RadExpression.
Computes the cosine of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImCos function instance for computing the cosine of complex numbers.
Evaluates the function with the provided complex number argument and returns the cosine as a string expression.
The context.
Functions result as RadExpression.
Computes the hyperbolic cosine of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImCosh function instance for computing the hyperbolic cosine of complex numbers.
Evaluates the function with the provided complex number argument and returns the hyperbolic cosine as a string expression.
The context.
Functions result as RadExpression.
Computes the cotangent of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImCot function instance for computing the cotangent of complex numbers.
Evaluates the function with the provided complex number argument and returns the cotangent as a string expression.
The context.
Functions result as RadExpression.
Computes the cosecant of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImCsc function instance for computing the cosecant of complex numbers.
Evaluates the function with the provided complex number argument and returns the cosecant as a string expression.
The context.
Functions result as RadExpression.
Computes the hyperbolic cosecant of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImCsch function instance for computing the hyperbolic cosecant of complex numbers.
Evaluates the function with the provided complex number argument and returns the hyperbolic cosecant as a string expression.
The context.
Functions result as RadExpression.
Divides two complex numbers and returns the quotient in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImDiv function instance for dividing complex numbers.
Evaluates the function with the provided complex number arguments and returns the quotient as a string expression.
The context.
Functions result as RadExpression.
Computes the exponential of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImExp function instance for computing the exponential of complex numbers.
Evaluates the function with the provided complex number argument and returns the exponential as a string expression.
The context.
Functions result as RadExpression.
Computes the natural logarithm of a complex number provided in x+yi or x+yj text format.
The name of the function.
Gets the function name used in formula expressions.
The name as String.
The name.
Gets metadata describing the function's signature, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ImLn function instance for computing the natural logarithm of complex numbers.
Evaluates the function with the provided complex number argument and returns the natural logarithm as a string expression.
The context.
Functions result as RadExpression.
Computes the base-10 logarithm of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMLOG10".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMLOG10 function instance.
Computes the base-10 logarithm of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Computes the base-2 logarithm of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMLOG2".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMLOG2 function instance.
Computes the base-2 logarithm of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Raises a complex number in x+yi or x+yj text format to a specified power.
The name of the function.
Gets the function name "IMPOWER".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Gets the argument conversion rules that treat non-complex-text inputs as errors.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Initializes a new IMPOWER function instance.
Raises the complex number to the specified power and returns the result, or #NUM! if the complex number has zero magnitude.
The context.
Functions result as RadExpression.
Multiplies 1 to 255 complex numbers in x+yi or x+yj text format and returns their product.
The name of the function.
Gets the argument conversion rules that treat non-complex-text inputs as errors and process all array elements.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name "IMPRODUCT".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMPRODUCT function instance.
Multiplies all complex number arguments and returns the product as a text expression.
The context.
Functions result as RadExpression.
Computes the secant of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMSEC".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMSEC function instance.
Computes the secant of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Computes the hyperbolic secant of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMSECH".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMSECH function instance.
Computes the hyperbolic secant of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Computes the sine of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMSIN".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMSIN function instance.
Computes the sine of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Computes the hyperbolic sine of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMSINH".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMSINH function instance.
Computes the hyperbolic sine of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Computes the square root of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMSQRT".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMSQRT function instance.
Computes the square root of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Computes the tangent of a complex number in x+yi or x+yj text format.
The name of the function.
Gets the function name "IMTAN".
The name as String.
The name.
Gets the metadata describing this function's category, description, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new IMTAN function instance.
Computes the tangent of the complex number and returns the result as a text expression.
The context.
Functions result as RadExpression.
Converts a decimal integer to its binary representation, optionally padding to a specified number of characters, with support for signed 10-bit values.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "DEC2BIN" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new DEC2BIN function instance for decimal to binary conversion.
Evaluates the decimal to binary conversion and returns the binary string result or an error expression if the number or places value is invalid.
The context.
Functions result as RadExpression.
Converts a decimal integer to its octal representation, optionally padding to a specified number of characters, with support for signed 30-bit values.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "DEC2OCT" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new DEC2OCT function instance for decimal to octal conversion.
Evaluates the decimal to octal conversion and returns the octal string result or an error expression if the number or places value is invalid.
The context.
Functions result as RadExpression.
Converts a decimal integer to its hexadecimal representation, optionally padding to a specified number of characters, with support for signed 40-bit values.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "DEC2HEX" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new DEC2HEX function instance for decimal to hexadecimal conversion.
Evaluates the decimal to hexadecimal conversion and returns the hexadecimal string result or an error expression if the number or places value is invalid.
The context.
Functions result as RadExpression.
Tests whether two numeric values are equal and returns 1 if they match or 0 otherwise, useful for filtering and counting matching pairs through summation of multiple DELTA results.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "DELTA" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new DELTA function instance for testing numeric equality.
Evaluates the equality comparison and returns 1 if the values are equal or 0 if they differ.
The context.
Functions result as RadExpression.
Computes the error function integrated between two bounds, or from zero to a single bound, commonly used in statistics and probability calculations.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "ERF" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new ERF function instance for computing the error function integral.
Evaluates the error function integral between the specified bounds and returns the numeric result.
The context.
Functions result as RadExpression.
Computes the complementary error function integrated from a lower bound to infinity, providing the complement of the standard error function.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "ERFC" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new ERFC function instance for computing the complementary error function.
Evaluates the complementary error function from the specified lower bound to infinity and returns the numeric result.
The context.
Functions result as RadExpression.
Computes the complementary error function integrated from a lower bound to infinity with precise calculation, providing the complement of the standard error function.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "ERFC.PRECISE" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new ERFC.PRECISE function instance for computing the precise complementary error function.
Evaluates the precise complementary error function from the specified lower bound to infinity and returns the numeric result.
The context.
Functions result as RadExpression.
Computes the error function integrated from zero to a specified upper bound with precise calculation, commonly used in statistics and probability calculations.
The name of the function.
Rules governing how argument values are interpreted and converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "ERF.PRECISE" used in formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new ERF.PRECISE function instance for computing the precise error function integral.
Evaluates the precise error function integral from zero to the specified upper bound and returns the numeric result.
The context.
Functions result as RadExpression.
Implements the BITAND function, performing a bitwise AND operation on two integers in the range 0 to 2⁴⁸−1.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BITAND function instance for performing bitwise AND operations.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BITLSHIFT function, shifting an integer left by a specified number of bits up to ±53 positions.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BITLSHIFT function instance for performing left bit shift operations.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BITOR function, performing a bitwise OR operation on two integers in the range 0 to 2⁴⁸−1.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BITOR function instance for performing bitwise OR operations.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BITRSHIFT function, shifting an integer right by a specified number of bits up to ±53 positions.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BITRSHIFT function instance for performing right bit shift operations.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the BITXOR function, performing a bitwise exclusive OR operation on two integers in the range 0 to 2⁴⁸−1.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new BITXOR function instance for performing bitwise exclusive OR operations.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates the number of days from the coupon period start to the settlement date and returns the day count for interest accrual calculations.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new COUPDAYBS function instance.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates the total number of days in the coupon period containing the settlement date and returns the period length for yield calculations.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new COUPDAYS function instance.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates the number of days from the settlement date to the next coupon date and returns the day count for interest period calculations.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new COUPDAYSNC function instance.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates the next coupon date after the settlement date and returns it as a serial date number for scheduling and valuation.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new COUPNCD function instance.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates the number of coupons payable between settlement and maturity and returns the count rounded up to the nearest whole coupon for payment scheduling.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new COUPNUM function instance.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates the previous coupon date before the settlement date and returns it as a serial date number for accrued interest calculations.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new COUPPCD function instance.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates cumulative interest paid on a loan between specified periods and returns the total interest amount for the period range.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new CUMIPMT function instance for calculating cumulative loan interest over a period range.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates cumulative principal paid on a loan between specified periods and returns the total principal amount for the period range.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new CUMPRINC function instance for calculating cumulative loan principal over a period range.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates depreciation for a specified period using the fixed-declining balance method and returns the depreciation amount for that period.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new DB function instance for fixed-declining balance depreciation calculations.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Calculates the discount rate for a security and returns the annual rate as a decimal value.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new DISC function instance for calculating security discount rates.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Converts a dollar price from fractional notation to decimal notation and returns the decimal price value.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new DOLLARDE function instance for converting fractional dollar prices to decimal format.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Converts decimal dollar values to fractional dollar notation used in securities pricing.
The name of the function.
Specifies that numeric arguments exclude booleans during conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function identifier "DOLLARFR".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new DOLLARFR function instance for converting decimal values to fractional dollar notation.
Evaluates the function by converting the decimal dollar value to fractional form based on the specified denominator.
The context.
Functions result as RadExpression.
Calculates the Macauley duration of a security as the weighted average of present value cash flows, measuring bond price sensitivity to yield changes.
The name of the function.
Specifies that numeric arguments exclude booleans during conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function identifier "DURATION".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new DURATION function instance for calculating Macauley duration at $100 par value.
Evaluates the function by computing duration from settlement, maturity, coupon, yield, frequency, and day-count basis.
The context.
Functions result as RadExpression.
Calculates the effective annual interest rate from a nominal rate and compounding frequency.
The name of the function.
Specifies that numeric arguments exclude booleans during conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function identifier "EFFECT".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new EFFECT function instance for calculating effective annual interest rates.
Evaluates the function by converting nominal rate and compounding periods to an effective annual rate.
The context.
Functions result as RadExpression.
Calculates the future value of an investment with periodic constant payments and a constant interest rate.
The name of the function.
Returns the function identifier "FV".
The name as String.
The name.
Provides metadata including category, description, argument definitions, and currency format.
The function info as FunctionInfo.
The function info.
Initializes a new FV function instance for calculating future investment values.
Evaluates the function by computing future value from rate, periods, payment, present value, and payment timing.
The context.
Functions result as RadExpression.
Calculates the interest rate for a fully invested security based on settlement, maturity, investment, and redemption values.
The name of the function.
Specifies that numeric arguments exclude booleans during conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function identifier "INTRATE".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new INTRATE function instance for calculating security interest rates.
Evaluates the function by computing interest rate from settlement, maturity, investment, redemption, and day-count basis.
The context.
Functions result as RadExpression.
Calculates the interest portion of a payment for a specific period in an investment with periodic constant payments and a constant interest rate.
The name of the function.
Returns the function identifier "IPMT".
The name as String.
The name.
Provides metadata including category, description, argument definitions, and currency format.
The function info as FunctionInfo.
The function info.
Initializes a new IPMT function instance for calculating interest payments per period.
Evaluates the function by computing the interest payment for the specified period from rate, period, total periods, present value, future value, and payment timing.
The context.
Functions result as RadExpression.
Calculates the interest paid during a specific period of an investment using straight-line amortization, provided for Lotus 1-2-3 compatibility.
The name of the function.
Returns the function identifier "ISPMT".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new ISPMT function instance for calculating interest payments with Lotus 1-2-3 semantics.
Evaluates the function by computing interest for the specified period using straight-line calculation from rate, period, total periods, and present value.
The context.
Functions result as RadExpression.
Calculates the modified Macauley duration of a security, which adjusts duration for yield changes and measures interest rate sensitivity at $100 par value.
The name of the function.
Specifies that numeric arguments exclude booleans during conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function identifier "MDURATION".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new MDURATION function instance for calculating modified Macauley duration at $100 par value.
Evaluates the function by computing modified duration from settlement, maturity, coupon, yield, frequency, and day-count basis.
The context.
Functions result as RadExpression.
Calculates the nominal annual interest rate from an effective rate and compounding frequency.
The name of the function.
Specifies that numeric arguments exclude booleans during conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function identifier "NOMINAL".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new NOMINAL function instance for calculating nominal annual interest rates.
Evaluates the function by converting effective rate and compounding periods to a nominal annual rate.
The context.
Functions result as RadExpression.
Calculates the number of payment periods for an investment with periodic constant payments and a constant interest rate.
The name of the function.
Returns the function identifier "NPER".
The name as String.
The name.
Provides metadata including category, description, and argument definitions.
The function info as FunctionInfo.
The function info.
Initializes a new NPER function instance for calculating the number of payment periods.
Evaluates the function by computing the number of periods from rate, payment, present value, future value, and payment timing.
The context.
Functions result as RadExpression.
Calculates the net present value of an investment using a discount rate and a series of future cash flows.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new NPV function instance for calculating net present value from discounted cash flows.
Evaluates the net present value using the discount rate and value arguments, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the price per $100 face value of a security with an odd (short or long) first coupon period.
The name of the function.
Controls how arguments are converted before evaluation, excluding boolean conversions.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new ODDFPRICE function instance for pricing securities with irregular first coupon periods.
Evaluates the security price using settlement, maturity, issue, first coupon dates, rate, yield, redemption, frequency, and optional basis, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the yield of a security with an odd (short or long) first coupon period.
The name of the function.
Controls how arguments are converted before evaluation, excluding boolean conversions.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new ODDFYIELD function instance for calculating yields on securities with irregular first coupon periods.
Evaluates the security yield using settlement, maturity, issue, first coupon dates, rate, price, redemption, frequency, and optional basis, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the price per $100 face value of a security with an odd (short or long) last coupon period.
The name of the function.
Controls how arguments are converted before evaluation, excluding boolean conversions.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new ODDLPRICE function instance for pricing securities with irregular last coupon periods.
Evaluates the security price using settlement, maturity, last interest dates, rate, yield, redemption, frequency, and optional basis, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the yield of a security with an odd (short or long) last coupon period.
The name of the function.
Controls how arguments are converted before evaluation, excluding boolean conversions.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new ODDLYIELD function instance for calculating yields on securities with irregular last coupon periods.
Evaluates the security yield using settlement, maturity, last interest dates, rate, price, redemption, frequency, and optional basis, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the number of periods required for an investment to reach a target future value at a constant interest rate.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new PDURATION function instance for calculating investment growth periods.
Evaluates the number of periods using rate, present value, and future value arguments, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the periodic payment for a loan or annuity with constant payments and a constant interest rate.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new PMT function instance for calculating loan or annuity payments.
Evaluates the payment amount using rate, number of periods, present value, and optional future value and payment type, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the principal portion of a loan payment for a specific period with constant payments and a constant interest rate.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new PPMT function instance for calculating the principal payment component of a specific period.
Evaluates the principal payment using rate, period, number of periods, present value, and optional future value and payment type, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the price per $100 face value of a security that pays periodic interest.
The name of the function.
Controls how arguments are converted before evaluation, excluding boolean conversions.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new PRICE function instance for valuing interest-bearing securities.
Evaluates the security price using settlement, maturity, coupon rate, yield, redemption, frequency, and optional basis, returning the result or an error expression.
The context.
Functions result as RadExpression.
Calculates the price per $100 face value of a discounted security that does not pay periodic interest.
The name of the function.
Controls how arguments are converted before evaluation, excluding boolean conversions.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name used in formulas.
The name as String.
The name.
Metadata describing this function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new PRICEDISC function instance for valuing zero-coupon or discount securities.
Evaluates the discounted security price using settlement, maturity, discount rate, redemption value, and optional basis, returning the result or an error expression.
The context.
Functions result as RadExpression.
Implements the PV financial function that calculates the present value of an investment based on periodic payments and interest rate.
Function name identifier for the PV function.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new PV function instance for calculating present value based on periodic payments, interest rate, and optional future value.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the RATE financial function that calculates the interest rate per period for an annuity using iterative approximation.
Function name identifier for the RATE function.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new RATE function instance for calculating interest rate per period using iterative methods with configurable guess value.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the RECEIVED financial function that calculates the amount received at maturity for a fully invested security.
Function name identifier for the RECEIVED function.
Conversion rules applied to function arguments during evaluation, excluding boolean values from number conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new RECEIVED function instance for calculating maturity proceeds based on settlement date, maturity date, investment amount, and discount rate.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the RRI financial function that calculates the equivalent interest rate for investment growth over a specified period.
Function name identifier for the RRI function.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new RRI function instance for calculating equivalent interest rate from present value, future value, and number of periods.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the SLN financial function that calculates straight-line depreciation of an asset for a single period.
Function name identifier for the SLN function.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new SLN function instance for calculating depreciation using the straight-line method based on cost, salvage value, and useful life.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the SYD financial function that calculates sum-of-years' digits depreciation for a specific period, which accelerates depreciation in early asset life.
Function name identifier for the SYD function.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new SYD function instance for calculating accelerated depreciation using the sum-of-years' digits method for a specified period.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the TBILLEQ financial function that calculates the bond-equivalent yield for a Treasury bill.
Function name identifier for the TBILLEQ function.
Conversion rules applied to function arguments during evaluation, excluding boolean values from number conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new TBILLEQ function instance for calculating bond-equivalent yield from Treasury bill settlement date, maturity date, and discount rate.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the TBILLPRICE financial function that calculates the price per $100 face value for a Treasury bill.
Function name identifier for the TBILLPRICE function.
Conversion rules applied to function arguments during evaluation, excluding boolean values from number conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new TBILLPRICE function instance for calculating Treasury bill price from settlement date, maturity date, and discount rate.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the TBILLYIELD financial function that calculates the yield for a Treasury bill based on settlement, maturity, and price.
Function name identifier for the TBILLYIELD function.
Conversion rules applied to function arguments during evaluation, excluding boolean values from number conversion.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new TBILLYIELD function instance for calculating Treasury bill yield from settlement date, maturity date, and price per $100 face value.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the VDB financial function that calculates variable declining balance depreciation for any period, with optional switching to straight-line depreciation.
Function name identifier for the VDB function.
Function name used for formula evaluation and display.
The name as String.
The name.
Metadata describing the function's signature, arguments, and return format for use by the expression evaluator.
The function info as FunctionInfo.
The function info.
Initializes a new VDB function instance for calculating depreciation using variable declining balance method over a specified period range with optional factor and switch control.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the YIELD financial function, which calculates the annual yield for a security with periodic interest payments.
The name of the function.
Specifies the conversion rules applied to function arguments, excluding boolean-to-number conversions for financial calculations.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function name "YIELD" used in formulas.
The name as String.
The name.
Provides metadata describing the function's category, arguments, and help documentation.
The function info as FunctionInfo.
The function info.
Initializes a new YIELD function instance for calculating annual yield on securities with periodic coupon payments.
Evaluates the YIELD function using the provided settlement date, maturity, coupon rate, price, redemption value, frequency, and optional basis, returning the annual yield as a numeric expression or an error.
The context.
Functions result as RadExpression.
Implements the YIELDDISC financial function, which calculates the annual yield for a discounted security that does not pay periodic interest.
The name of the function.
Specifies the conversion rules applied to function arguments, excluding boolean-to-number conversions for financial calculations.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function name "YIELDDISC" used in formulas.
The name as String.
The name.
Provides metadata describing the function's category, arguments, and help documentation.
The function info as FunctionInfo.
The function info.
Initializes a new YIELDDISC function instance for calculating annual yield on discounted securities without periodic interest payments.
Evaluates the YIELDDISC function using the provided settlement date, maturity, price, redemption value, and optional basis, returning the annual yield as a numeric expression or an error.
The context.
Functions result as RadExpression.
Implements the YIELDMAT financial function, which calculates the annual yield for a security that pays interest at maturity.
The name of the function.
Specifies the conversion rules applied to function arguments, excluding boolean-to-number conversions for financial calculations.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Returns the function name "YIELDMAT" used in formulas.
The name as String.
The name.
Provides metadata describing the function's category, arguments, and help documentation.
The function info as FunctionInfo.
The function info.
Initializes a new YIELDMAT function instance for calculating annual yield on securities that pay all interest at maturity.
Evaluates the YIELDMAT function using the provided settlement date, maturity, issue date, interest rate, price, and optional basis, returning the annual yield as a numeric expression or an error.
The context.
Functions result as RadExpression.
Abstract base for all spreadsheet functions, defining evaluation logic, argument rules, and metadata for use in formula expressions.
Initializes a new function base instance, ready for evaluation in spreadsheet expressions.
Returns the unique function name used in formulas to invoke this function.
The name.
The name as String.
Provides metadata describing the function's category, required and optional arguments, and documentation for help systems.
The function info.
The function info as FunctionInfo.
Specifies how arguments are converted before evaluation, with a default of standard number function conversions including boolean-to-number mapping.
The argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
When , automatically evaluates this function
element-wise over any multi-element array argument and returns a spilled array result.
Override to in pure scalar functions (e.g. ABS, LEN, MOD) where applying the
function independently to each element of an input array is the correct dynamic-array behavior.
Leave (the default) for reducers.
Determines whether the argument at can cause this function to
return a multi-element array (and therefore to spill). The default implementation returns
for every index; override in functions where only specific arguments
drive spilling (e.g. COUNTIF where arg[0] is the count range and should not trigger spilling,
but arg[1] is the criteria and should).
Evaluates the function using the provided evaluation context and returns the result as an expression.
When is and at least one argument
evaluates to a multi-element array, the function is evaluated element-wise over the broadcast
dimensions via and a spilled
is returned.
The context.
Function result as RadExpression.
Performs the function-specific evaluation logic; override in derived classes to implement custom calculation behavior.
The context.
Function result as RadExpression.
Evaluates a single element during pointwise array lifting. Called once per cell in the
broadcast result. The default implementation passes raw arguments
to .
overrides this to apply argument conversion before
calling .
The original evaluation context (for worksheet, row/col, function expression).
All arguments resolved to constants (arrays preserved).
The current row in the broadcast result.
The current column in the broadcast result.
The result for this cell, or an error expression.
Resolves arguments, detects multi-element arrays among spilling arguments, computes broadcast
dimensions, and iterates element-wise calling per cell.
Returns when all arguments are scalar.
Validates that the argument count falls within the acceptable range for this function, accounting for required and optional parameters and repetition rules.
The arguments count.
Boolean indicating whether the arguments number is valid.
Provides methods and properties used in RadSpreadsheet functions.
Categorizes spreadsheet functions by domain (Financial, DateTime, MathTrig, Statistical, etc.) for organizational and discovery purposes.
Financial functions for loans, investments, depreciation, and securities calculations.
Date and time functions for parsing, formatting, and calculating with dates and times.
Mathematical and trigonometric functions for arithmetic, rounding, and trigonometry operations.
Statistical functions for data analysis including averages, distributions, and variance calculations.
Lookup and reference functions for searching, matching, and navigating cell ranges.
Text functions for string manipulation, concatenation, parsing, and formatting.
Logical functions for boolean operations and conditional evaluation (AND, OR, IF, NOT).
Information functions for querying cell types, values, and error states.
Engineering functions for complex numbers, base conversions, and Bessel calculations.
Metadata describing a spreadsheet function's signature, including name, category, argument definitions, and result format.
Gets the function's domain category for organizational and filtering purposes.
The category.
The category as FunctionCategory.
Gets the human-readable description explaining what the function does and how to use it.
The description.
The description as String.
Gets the localization key used to retrieve the function description in the current UI culture.
The description localization key.
Gets the number of required arguments that must be provided when calling this function.
The required arguments count.
The required arguments count as Int32.
Gets the number of optional arguments per repetition group that may be provided when calling this function.
The optional arguments count.
The optional arguments count as Int32.
Gets the maximum number of times the optional argument group can be repeated for functions accepting variable-length argument lists.
The optional arguments repetition count.
The optional arguments repetition count as Int32.
Gets whether the function uses default values for omitted arguments, allowing calls with fewer than the total argument count.
Boolean indicating whether the function is default value function.
Boolean indicating whether the function is default value function.
Gets the default cell value format applied to the function's result (e.g., percentage, date, currency).
The format.
The format as CellValueFormat.
Initializes a new FunctionInfo with basic metadata for a function with no arguments and general format.
The name of the function.
The category of the function.
The description of the function.
The localization key of the function description.
Initializes a new FunctionInfo with basic metadata for a function with no arguments and a specific result format.
The name of the function.
The category of the function.
The description of the function.
The format of the function.
The localization key of the function description.
Initializes a new FunctionInfo for a function with required arguments, general format, and optional default value support.
The name of the function.
The category of the function.
The description of the function.
The required arguments infos for the function.
Boolean indicating whether the function is default value function.
The localization key of the function description.
Initializes a new FunctionInfo for a function with required arguments, specific result format, and optional default value support.
The name of the function.
The category of the function.
The description of the function.
The required arguments infos for the function.
The format of the function.
Boolean indicating whether the function is default value function.
The localization key of the function description.
Initializes a new FunctionInfo for a function with required and optional arguments, general format, and variable-length argument support.
The name of the function.
The category of the function.
The description of the function.
The required arguments infos for the function.
The optional arguments infos for the function.
The count of the optional arguments for the function.
Boolean indicating whether the function is default value function.
The localization key of the function description.
Initializes a new FunctionInfo with complete metadata for a function with required and optional arguments, specific result format, and variable-length argument support.
The name of the function.
The category of the function.
The description of the function.
The required arguments infos for the function.
The optional arguments infos for the function.
The format of the function.
The count of the optional arguments for the function.
Boolean indicating whether the function is default value function.
The localization key of the function description.
Central registry for managing spreadsheet functions, enabling registration, unregistration, and lookup of built-in and custom functions by name.
Removes a function from the registry by instance, making it unavailable for use in formulas.
The function.
Removes a function from the registry by name (case-insensitive), making it unavailable for use in formulas.
Name of the function.
Adds or replaces a function in the registry, making it available for use in formulas by its name.
The function.
Retrieves a registered function by name (case-insensitive) and returns null if not found.
Name of the function.
An FunctionBase instance.
Retrieves all currently registered functions sorted by name for enumeration or discovery purposes.
FunctionBase instances of all registered functions.
Base class for spreadsheet functions that accept arguments, handling argument conversion, validation, and typed evaluation.
Initializes a new function that validates and converts arguments before evaluation.
Evaluates the function by converting expression arguments to typed values according to argument definitions and then calling the typed evaluation override.
The context.
Function result as RadExpression.
Override to implement function-specific logic using converted object arguments; called after argument conversion.
The context.
Functions result as RadExpression.
Evaluates a single element during pointwise array lifting by applying argument conversion
rules to the scalar element and then calling the typed
.
Implements the ERROR.TYPE function, which maps error values to numeric codes (1-7) and returns #N/A if no error exists.
The name of the function.
Gets the function name "ERROR.TYPE" for use in formulas.
The name as String.
The name.
Gets the metadata describing the function's signature, including the required error value argument.
The function info as FunctionInfo.
The function info.
Initializes the ERROR.TYPE function, which identifies error types and returns their numeric classification.
Evaluates the error type argument and returns the corresponding numeric code (1=#NULL!, 2=#DIV/0!, 3=#VALUE!, 4=#REF!, 5=#NAME?, 6=#NUM!, 7=#N/A) or #N/A if not an error.
The context.
Function result as RadExpression.
Tests whether a cell reference is empty and returns TRUE for blank cells, FALSE otherwise.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISBLANK function instance for testing whether cells are empty.
Evaluates the function and returns TRUE if the argument is an empty cell or empty expression, FALSE otherwise.
The context.
Function result as RadExpression.
Tests whether a value is any error except #N/A and returns TRUE for errors other than #N/A, FALSE otherwise.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISERR function instance for testing whether values are errors excluding #N/A.
Evaluates the function and returns TRUE if the argument is an error expression except #N/A, FALSE otherwise.
The context.
Function result as RadExpression.
Tests whether a value is any error and returns TRUE for any error value including #N/A, FALSE otherwise.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISERROR function instance for testing whether values are any error type.
Evaluates the function and returns TRUE if the argument is any error expression, FALSE otherwise.
The context.
Function result as RadExpression.
Tests whether a number is even and returns TRUE for even numbers, FALSE for odd numbers.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Gets conversion rules that control how arguments are coerced to numbers, excluding booleans.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Initializes a new ISEVEN function instance for testing whether numbers are even.
Evaluates the function by testing if the number modulo 2 equals 0 and returns the boolean result.
The context.
Functions result as RadExpression.
Tests whether a cell reference contains a formula and returns TRUE for formula cells, FALSE otherwise.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISFORMULA function instance for testing whether cell references contain formulas.
Evaluates the function by inspecting the cell reference and returns TRUE if it contains a formula, FALSE otherwise.
Functions result as RadExpression.
Tests whether a value is a boolean (TRUE or FALSE) and returns TRUE for logical values, FALSE otherwise.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISLOGICAL function instance for testing whether values are booleans.
Evaluates the function and returns TRUE if the argument is a boolean expression, FALSE otherwise.
The context.
Function result as RadExpression.
Tests whether a value is the #N/A error and returns TRUE for #N/A errors, FALSE otherwise.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISNA function instance for testing whether values are the #N/A error.
Evaluates the function and returns TRUE if the argument is specifically the #N/A error, FALSE otherwise.
The context.
Function result as RadExpression.
Tests whether a value is not text and returns TRUE for non-text values, FALSE for text.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISNONTEXT function instance for testing whether values are not text.
Evaluates the function and returns TRUE if the argument is not a string expression, FALSE for text.
The context.
Function result as RadExpression.
Tests whether a value is a number and returns TRUE for numeric values, FALSE otherwise.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Initializes a new ISNUMBER function instance for testing whether values are numeric.
Evaluates the function and returns TRUE if the argument is a number expression, FALSE otherwise.
The context.
Function result as RadExpression.
Tests whether a number is odd and returns TRUE for odd numbers, FALSE for even numbers.
The name of the function.
Gets the function name identifier used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, parameters, and localization keys.
The function info as FunctionInfo.
The function info.
Gets conversion rules that control how arguments are coerced to numbers, excluding booleans.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Initializes a new ISODD function instance for testing whether numbers are odd.
Evaluates the function by testing if the number modulo 2 is non-zero and returns the boolean result.
The context.
Functions result as RadExpression.
Implements the ISREF function, which tests whether a value is a cell reference and returns TRUE for references or FALSE otherwise.
The name of the function.
Gets the function name "ISREF" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new ISREF function instance for testing whether values are cell references.
Evaluates the function by checking if the argument is a cell reference expression and returns TRUE or FALSE.
The context.
Function result as RadExpression.
Implements the ISTEXT function, which tests whether a value is text and returns TRUE for text values or FALSE otherwise.
The name of the function.
Gets the function name "ISTEXT" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new ISTEXT function instance for testing whether values are text.
Evaluates the function by checking if the argument is a string expression and returns TRUE or FALSE.
The context.
Function result as RadExpression.
Implements the N function, which converts a value to a number, returning numeric values directly and 0 for other types.
The name of the function.
Gets the function name "N" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Gets the rules controlling how arguments are converted before evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Initializes a new N function instance for converting values to numeric representation.
Evaluates the function by converting the argument to a number and returning a valid numeric expression or error.
The context.
Functions result as RadExpression.
Implements the NA function, which returns the #N/A error value to indicate missing or unavailable data.
The name of the function.
Gets the function name "NA" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new NA function instance that generates the #N/A error value.
Evaluates the function and returns the #N/A error expression.
The context.
Function result as RadExpression.
Implements the TYPE function, which returns a numeric code indicating the data type of a value (1=number, 2=text, 4=boolean, 16=error, 64=array).
The name of the function.
Gets the function name "TYPE" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new TYPE function instance for determining value data types.
Evaluates the function by examining the argument's expression type and returning the corresponding numeric type code.
The context.
Function result as RadExpression.
Implements the AND function, which evaluates multiple conditions and returns TRUE only if all arguments are TRUE.
The name of the function.
Gets the function name "AND" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new AND function instance for performing logical conjunction on multiple boolean conditions.
Evaluates the function by testing all boolean arguments and returns FALSE if any argument is FALSE, otherwise TRUE.
The context.
Functions result as RadExpression.
Implements the FALSE function, which returns the boolean value FALSE.
The name of the function.
Gets the function name "FALSE" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new FALSE function instance that produces the boolean FALSE value.
Evaluates the function and returns the boolean FALSE expression.
The context.
Function result as RadExpression.
Implements the IF function, which evaluates a logical condition and returns one value when TRUE and another when FALSE.
The name of the function.
Gets the rules controlling how arguments are converted before evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name "IF" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new IF function instance for conditional branching based on boolean evaluation.
Evaluates the function by testing the logical condition and returning the corresponding true-branch or false-branch value.
When the condition evaluates to an , the function applies element-wise IF and returns an array.
The context.
Function result as RadExpression.
Implements the NOT function, which reverses the boolean value of its argument, returning FALSE for TRUE and TRUE for FALSE.
The name of the function.
Gets the rules controlling how arguments are converted before evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the function name "NOT" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new NOT function instance for logical negation.
Evaluates the function by inverting the boolean argument and returning the opposite value.
The context.
Functions result as RadExpression.
Implements the OR function, which evaluates multiple conditions and returns TRUE if any argument is TRUE.
The name of the function.
Gets the function name "OR" used in formulas.
The name as String.
The name.
Gets metadata describing the function's category, description, and argument structure.
The function info as FunctionInfo.
The function info.
Initializes a new OR function instance for performing logical disjunction on multiple boolean conditions.
Evaluates the function by testing all boolean arguments and returns TRUE if any argument is TRUE, otherwise FALSE.
The context.
Functions result as RadExpression.
Implements the TRUE function, which returns the boolean constant TRUE without requiring any arguments.
The name of the function.
Gets the name of the function as "TRUE".
The name as String.
The name.
Gets the metadata describing the TRUE function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new TRUE function instance.
Evaluates the TRUE function and returns the boolean constant TRUE.
The context.
Function result as RadExpression.
Implements the XOR function, which returns TRUE when an odd number of logical arguments are TRUE and FALSE when an even number are TRUE.
The name of the function.
Gets the name of the function as "XOR".
The name as String.
The name.
Gets the metadata describing the XOR function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new XOR function instance.
Evaluates the XOR function by counting TRUE arguments and returning TRUE if the count is odd, FALSE if even.
The context.
Functions result as RadExpression.
Implements the HYPERLINK function, which creates a clickable hyperlink to a document, web page, or email address and displays optional friendly text.
The name of the function.
Gets the name of the function as "HYPERLINK".
The name as String.
The name.
Gets the metadata describing the HYPERLINK function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new HYPERLINK function instance.
Evaluates the HYPERLINK function by creating a hyperlink from the address and returning the friendly name or address as display text.
The context.
Functions result as RadExpression.
Implements the INDEX function, which returns the cell reference or value at the intersection of a specified row and column within a range or array.
The name of the function.
Gets the rules that define how arguments are converted during function evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function as "INDEX".
The name as String.
The name.
Gets the metadata describing the INDEX function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new INDEX function instance.
Evaluates the INDEX function by locating and returning the cell reference or value at the specified row and column coordinates.
The context.
Functions result as RadExpression.
Implements the LOOKUP function, which searches for a value in a single-row or single-column range and returns a corresponding value from another range.
The name of the function.
Gets the name of the function as "LOOKUP".
The name as String.
The name.
Gets the metadata describing the LOOKUP function's category, description, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new LOOKUP function instance.
Implements the SUMIF function, which sums values in a range that meet a specified criteria.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the SUMIF function.
Evaluates the SUMIF function and returns the sum of values matching the criteria.
The context.
Functions result as RadExpression.
Calculates the absolute value of a number, removing its sign.
The name of the function.
Gets the function name "ABS".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ABS function instance for computing absolute values.
Evaluates the absolute value of the numeric argument and returns the result as an expression.
The context.
Functions result as RadExpression.
Calculates the arccosine (inverse cosine) of a number and returns the angle in radians within the range 0 to π.
The name of the function.
Gets the function name "ACOS".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ACOS function instance for computing inverse cosine values.
Evaluates the arccosine of the numeric argument and returns the result, validating the input is within the range -1 to 1.
The context.
Functions result as RadExpression.
Calculates the inverse hyperbolic cosine of a number, accepting values greater than or equal to 1.
The name of the function.
Gets the function name "ACOSH".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ACOSH function instance for computing inverse hyperbolic cosine values.
Evaluates the inverse hyperbolic cosine of the numeric argument and returns the result, validating the input is at least 1.
The context.
Functions result as RadExpression.
Calculates the arccotangent (inverse cotangent) of a number and returns the principal value of the angle in radians.
The name of the function.
Gets the function name "ACOT".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ACOT function instance for computing inverse cotangent values.
Evaluates the arccotangent of the numeric argument and returns the result as an expression.
The context.
Functions result as RadExpression.
Calculates the inverse hyperbolic cotangent of a number, requiring an absolute value greater than 1.
The name of the function.
Gets the function name "ACOTH".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ACOTH function instance for computing inverse hyperbolic cotangent values.
Evaluates the inverse hyperbolic cotangent of the numeric argument and returns the result, validating the input has absolute value greater than 1.
The context.
Functions result as RadExpression.
Calculates the arcsine (inverse sine) of a number and returns the angle in radians within the range -π/2 to π/2.
The name of the function.
Gets the function name "ASIN".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ASIN function instance for computing inverse sine values.
Evaluates the arcsine of the numeric argument and returns the result, validating the input is within the range -1 to 1.
The context.
Functions result as RadExpression.
Calculates the inverse hyperbolic sine of a number, accepting any real value.
The name of the function.
Gets the function name "ASINH".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ASINH function instance for computing inverse hyperbolic sine values.
Evaluates the inverse hyperbolic sine of the numeric argument and returns the result as an expression.
The context.
Functions result as RadExpression.
Calculates the arctangent (inverse tangent) of a number and returns the angle in radians within the range -π/2 to π/2.
The name of the function.
Gets the function name "ATAN".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ATAN function instance for computing inverse tangent values.
Evaluates the arctangent of the numeric argument and returns the result as an expression.
The context.
Functions result as RadExpression.
Calculates the arctangent of the specified x and y coordinates and returns the angle from the x-axis to the point in radians, within the range -π to π.
The name of the function.
Gets the function name "ATAN2".
The name as String.
The name.
Gets the metadata describing this function's category, arguments, and behavior.
The function info as FunctionInfo.
The function info.
Initializes a new ATAN2 function instance for computing two-argument arctangent values from x and y coordinates.
Evaluates the two-argument arctangent of the x and y coordinates and returns the result, returning an error if both are zero.
The context.
Functions result as RadExpression.
Implements the ATANH function, which calculates the inverse hyperbolic tangent of a number.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new ATANH function instance for calculating inverse hyperbolic tangent, constrained to inputs between -1 and 1 (exclusive).
Evaluates the inverse hyperbolic tangent of the provided number and returns the result or an error expression if the input is out of range.
The context.
Functions result as RadExpression.
Implements the CEILING function, which rounds a number up to the nearest multiple of a specified significance.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new CEILING function instance for rounding numbers up to the nearest multiple of a specified significance.
Evaluates the ceiling of the number using the specified significance and returns the result or an error if the arguments are invalid.
The context.
Functions result as RadExpression.
Implements the CEILING.MATH function, which rounds a number up to the nearest integer or multiple of significance with optional mode control for negative numbers.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new CEILING.MATH function instance for rounding numbers up with configurable significance and mode for negative numbers.
Evaluates the ceiling using significance and mode parameters, applying mode-based rounding direction for negative numbers, and returns the result or an error.
The context.
Functions result as RadExpression.
Implements the CEILING.PRECISE function, which rounds a number up to the nearest integer or multiple of significance regardless of sign.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new CEILING.PRECISE function instance for rounding numbers up with absolute significance, treating both positive and negative numbers uniformly.
Evaluates the precise ceiling of the number using the specified significance and returns the result or an error if the value exceeds supported limits.
The context.
Functions result as RadExpression.
Implements the COMBIN function, which calculates the number of combinations for selecting items from a set without regard to order.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new COMBIN function instance for calculating combination counts using the binomial coefficient formula.
Evaluates the number of combinations by computing the binomial coefficient and returns the result or an error if arguments are negative or invalid.
The context.
Functions result as RadExpression.
Implements the COS function, which calculates the cosine of an angle specified in radians.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new COS function instance for computing cosine values from radian angles.
Evaluates the cosine of the specified angle in radians and returns the result as a numeric expression.
The context.
Functions result as RadExpression.
Implements the COSH function, which calculates the hyperbolic cosine of a number.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new COSH function instance for computing hyperbolic cosine values.
Evaluates the hyperbolic cosine of the specified number and returns the result as a numeric expression.
The context.
Functions result as RadExpression.
Implements the COT function, which calculates the cotangent of an angle specified in radians.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new COT function instance for computing cotangent values from radian angles.
Evaluates the cotangent of the specified angle in radians and returns the result or an error if the angle is zero or exceeds limits.
The context.
Functions result as RadExpression.
Implements the COTH function, which calculates the hyperbolic cotangent of a number.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new COTH function instance for computing hyperbolic cotangent values.
Evaluates the hyperbolic cotangent of the specified number and returns the result or an error if the value is zero or exceeds limits.
The context.
Functions result as RadExpression.
Implements the CSC function, which calculates the cosecant of an angle specified in radians.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new CSC function instance for computing cosecant values from radian angles.
Evaluates the cosecant of the specified angle in radians and returns the result or an error if the angle is zero or exceeds limits.
The context.
Functions result as RadExpression.
Implements the CSCH function, which calculates the hyperbolic cosecant of an angle in radians.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new CSCH function instance for calculating hyperbolic cosecants in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the DEGREES function, which converts radians to degrees.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new DEGREES function instance for converting angle measurements in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the EVEN function, which rounds numbers up to the nearest even integer.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new EVEN function instance for rounding to even integers in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the EXP function, which raises Euler's number (e) to a specified power.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new EXP function instance for exponential calculations in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the FACT function, which calculates the factorial of a non-negative integer.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new FACT function instance for calculating factorials in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the FACTDOUBLE function, which calculates the double factorial of a number (product of every other integer).
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new FACTDOUBLE function instance for calculating double factorials in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the FLOOR function, which rounds a number down toward zero to the nearest multiple of significance.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new FLOOR function instance for rounding down to multiples in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the FLOOR.MATH function, which rounds a number down to the nearest integer or multiple with optional mode control for negative values.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new FLOOR.MATH function instance for flexible floor rounding in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the FLOOR.PRECISE function, which rounds a number down to the nearest multiple regardless of sign.
The name of the function.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new FLOOR.PRECISE function instance for sign-agnostic floor rounding in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the GCD function, which finds the greatest common divisor of two or more integers.
The name of the function.
Rules for converting and flattening arguments before evaluation.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name used in formulas.
The name as String.
The name.
Metadata describing the function's signature, category, and arguments.
The function info as FunctionInfo.
The function info.
Initializes a new GCD function instance for finding common divisors in formulas.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the INT function, which rounds a number down to the nearest integer by removing the fractional part.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the INT function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the ISO.CEILING function, which rounds a number up to the nearest integer or specified multiple of significance, always rounding toward positive infinity regardless of sign.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the ISO.CEILING function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the LCM function, which calculates the least common multiple of integers—the smallest positive integer divisible by all provided values.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the LCM function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the LN function, which calculates the natural logarithm (base e) of a positive number.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the LN function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the LOG function, which calculates the logarithm of a positive number with a specified base, defaulting to base 10 if no base is provided.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the LOG function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the LOG10 function, which calculates the base-10 logarithm of a positive number.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the LOG10 function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the MOD function, which calculates the remainder after dividing a number by a divisor, returning a result with the same sign as the divisor.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the MOD function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the MROUND function, which rounds a number to the nearest specified multiple, rounding away from zero when the remainder is at least half the multiple.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Initializes a new instance of the MROUND function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the MULTINOMIAL function, which calculates the ratio of the factorial of a sum of values to the product of their individual factorials.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the MULTINOMIAL function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the ODD function, which rounds positive numbers up and negative numbers down to the nearest odd integer.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the ODD function.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Returns the mathematical constant Pi (approximately 3.14159265358979), accurate to 15 digits, for use in trigonometric and geometric calculations.
The name of the function.
The function name "PI" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new PI function that returns the mathematical constant Pi.
Evaluates the PI function and returns the constant value of Pi.
The context.
Function result as RadExpression.
Raises a number to a specified power and returns the result, supporting both integer and fractional exponents.
The name of the function.
The function name "POWER" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new POWER function that raises a number to a specified exponent.
Evaluates the POWER function and returns the base number raised to the specified exponent, handling zero and negative base cases.
The context.
Functions result as RadExpression.
Multiplies all numeric arguments and returns the product, accepting up to 255 arguments including ranges.
The name of the function.
Conversion rules specifying that the function ignores non-numeric values from ranges while processing direct arguments.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "PRODUCT" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new PRODUCT function that multiplies all numeric arguments.
Evaluates the PRODUCT function and returns the product of all numeric arguments.
The context.
Functions result as RadExpression.
Divides one number by another and returns the integer portion of the result, discarding the remainder.
The name of the function.
Conversion rules specifying that the function converts arguments to numbers but does not accept boolean values.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
The function name "QUOTIENT" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new QUOTIENT function that returns the integer part of a division without the remainder.
Evaluates the QUOTIENT function and returns the integer portion of the numerator divided by the denominator, checking for division by zero.
The context.
Functions result as RadExpression.
Converts an angle from degrees to radians for use in trigonometric calculations.
The name of the function.
The function name "RADIANS" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new RADIANS function that converts degree measurements to radians.
Evaluates the RADIANS function and returns the angle converted from degrees to radians using the formula (degrees × π / 180).
The context.
Functions result as RadExpression.
Rounds a number to a specified number of decimal places using standard rounding rules (0.5 rounds up).
The name of the function.
The function name "ROUND" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new ROUND function that rounds numbers to a specified precision.
Evaluates the ROUND function and returns the number rounded to the specified number of decimal places.
The context.
Functions result as RadExpression.
Rounds a number down toward zero to a specified number of decimal places, truncating rather than rounding up.
The name of the function.
The function name "ROUNDDOWN" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new ROUNDDOWN function that rounds numbers down toward zero.
Evaluates the ROUNDDOWN function and returns the number rounded down toward zero to the specified decimal places.
The context.
Functions result as RadExpression.
Rounds a number up away from zero to a specified number of decimal places, always rounding in the positive direction.
The name of the function.
The function name "ROUNDUP" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new ROUNDUP function that rounds numbers up away from zero.
Evaluates the ROUNDUP function and returns the number rounded up away from zero to the specified decimal places.
The context.
Functions result as RadExpression.
Calculates the secant of an angle specified in radians, returning 1/cos(angle).
The name of the function.
The function name "SEC" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new SEC function that calculates the secant of a radian angle.
Evaluates the SEC function and returns the secant of the angle, checking for values that would cause numerical overflow.
The context.
Functions result as RadExpression.
Calculates the hyperbolic secant of a number specified in radians, returning 1/cosh(angle).
The name of the function.
The function name "SECH" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new SECH function that calculates the hyperbolic secant of a radian value.
Evaluates the SECH function and returns the hyperbolic secant, checking for values that would cause numerical overflow.
The context.
Functions result as RadExpression.
Determines the sign of a number and returns 1 for positive, -1 for negative, or 0 for zero.
The name of the function.
The function name "SIGN" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new SIGN function that determines whether a number is positive, negative, or zero.
Evaluates the SIGN function and returns 1, -1, or 0 based on the sign of the input number.
The context.
Functions result as RadExpression.
Calculates the sine of an angle specified in radians for trigonometric calculations.
The name of the function.
The function name "SIN" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new SIN function that calculates the sine of a radian angle.
Evaluates the SIN function and returns the sine of the specified angle in radians.
The context.
Functions result as RadExpression.
Calculates the hyperbolic sine of a number for hyperbolic trigonometric calculations.
The name of the function.
The function name "SINH" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new SINH function that calculates the hyperbolic sine of a value.
Evaluates the SINH function and returns the hyperbolic sine of the specified number.
The context.
Functions result as RadExpression.
Calculates the square root of a positive number, returning an error for negative values.
The name of the function.
The function name "SQRT" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new SQRT function that calculates square roots of non-negative numbers.
Evaluates the SQRT function and returns the square root of the number, checking for negative inputs.
The context.
Functions result as RadExpression.
Calculates the square root of a number multiplied by Pi, returning sqrt(number × π) for geometric calculations.
The name of the function.
Conversion rules specifying that the function converts arguments to numbers but does not accept boolean values.
The argument conversion rules.
The function name "SQRTPI" as it appears in spreadsheet formulas.
The name as String.
The name.
Metadata describing the function signature, category, and argument requirements.
The function info as FunctionInfo.
The function info.
Initializes a new SQRTPI function that calculates the square root of a number times Pi.
Evaluates the SQRTPI function and returns sqrt(number × π), checking for negative inputs.
The context.
Functions result as RadExpression.
Implements the SUM function, which adds all numeric values in the specified arguments.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the SUM function.
Evaluates the SUM function and returns the sum of all numeric arguments.
The context.
Functions result as RadExpression.
Implements the SUMSQ function, which calculates the sum of the squares of numeric arguments.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the SUMSQ function.
Evaluates the SUMSQ function and returns the sum of squares of all numeric arguments.
The context.
Functions result as RadExpression.
Implements the TAN function, which calculates the tangent of an angle in radians.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the TAN function.
Evaluates the TAN function and returns the tangent of the angle.
The context.
Functions result as RadExpression.
Implements the TANH function, which calculates the hyperbolic tangent of a number.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the TANH function.
Evaluates the TANH function and returns the hyperbolic tangent of the number.
The context.
Functions result as RadExpression.
Implements the TRUNC function, which truncates a number to a specified precision by removing fractional digits.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the TRUNC function.
Evaluates the TRUNC function and returns the truncated number.
The context.
Functions result as RadExpression.
Base class for functions that accept numeric (double) arguments with automatic conversion rules.
Initializes a new instance of the class.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Base class for functions requiring all arguments to be of the same type, automatically converting object arguments to the specified type.
The type T of functions arguments.
Initializes a new function that converts all arguments to the specified type before evaluation.
Converts object arguments to the specified type and calls the typed evaluation override.
Functions result as RadExpression.
Override to implement function-specific logic using strongly-typed arguments; called after type conversion.
The context.
Functions result as RadExpression.
Implements the COUNTIF function, which counts cells in a range that meet a specified criteria.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Only the criteria argument (index 1) can drive spilling. The count range (index 0) is always
a multi-cell reference but must never trigger a spill on its own.
Initializes a new instance of the COUNTIF function.
Evaluates the COUNTIF function and returns the count of cells matching the criteria.
When the criteria argument is a multi-cell range or a multi-element array, an array of counts
is returned (one count per criteria element) so that the formula can spill.
The context.
Functions result as RadExpression.
Implements the AVERAGE function, which calculates the arithmetic mean of numeric arguments.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the AVERAGE function.
Evaluates the AVERAGE function and returns the arithmetic mean of the arguments.
The context.
Functions result as RadExpression.
Implements the AVERAGEA function, which calculates the arithmetic mean including text and logical values converted to numbers.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the AVERAGEA function.
Evaluates the AVERAGEA function and returns the arithmetic mean of the arguments.
The context.
Functions result as RadExpression.
Implements the MAX function, which finds the largest numeric value among the arguments.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the MAX function.
Evaluates the MAX function and returns the largest numeric value.
The context.
Functions result as RadExpression.
Implements the MAXA function, which finds the largest value among arguments including text and logical values converted to numbers.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the MAXA function.
Evaluates the MAXA function and returns the largest value.
The context.
Functions result as RadExpression.
Implements the MEDIAN function, which calculates the middle value in a sorted set of numbers.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the MEDIAN function.
Evaluates the MEDIAN function and returns the middle value of the sorted arguments.
The context.
Functions result as RadExpression.
Implements the MIN function, which finds the smallest numeric value among the arguments.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the MIN function.
Evaluates the MIN function and returns the smallest numeric value.
The context.
Functions result as RadExpression.
Implements the MINA function, which finds the smallest value among arguments including text and logical values converted to numbers.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new instance of the MINA function.
Evaluates the MINA function and returns the smallest value.
The context.
Functions result as RadExpression.
Implements the MODE function, which finds the most frequently occurring value in a dataset.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new MODE function instance that finds the most frequently occurring value in a dataset.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the STDEV function, which calculates sample standard deviation to measure data dispersion from the mean.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new STDEV function instance that calculates sample standard deviation.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the STDEVA function, which calculates sample standard deviation including text and logical values in the dataset.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new STDEVA function instance that calculates sample standard deviation including text and logical values.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the STDEVP function, which calculates population standard deviation treating arguments as the entire population.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new STDEVP function instance that calculates population standard deviation.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the STDEVPA function, which calculates population standard deviation including text and logical values in the dataset.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new STDEVPA function instance that calculates population standard deviation including text and logical values.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Base class for spreadsheet functions that accept string arguments and handle string-based calculations.
Initializes a new instance of the StringsInFunction base class.
Gets the argument conversion rules.
The argument conversion rules as ArgumentConversionRules.
The argument conversion rules.
Implements the CHAR function, which converts a numeric code (1-255) to its corresponding character.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new CHAR function instance that converts numeric codes to characters.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the CODE function, which returns the numeric code of the first character in a text string.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new CODE function instance that converts the first character of text to its numeric code.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the CONCAT function, which combines multiple text strings and ranges into a single concatenated string.
The name of the function.
Gets the argument conversion rules.
The argument conversion rules.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new CONCAT function instance that joins multiple text items into one string.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the CONCATENATE function, which joins multiple text strings into a single combined string.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new CONCATENATE function instance that joins multiple text items into one string.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the EXACT function, which performs case-sensitive comparison of two text strings and returns TRUE if identical.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new EXACT function instance that performs case-sensitive text comparison.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the FIND function, which locates one text string within another and returns the starting position (case-sensitive).
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new FIND function instance that performs case-sensitive text search.
Virtual method evaluating the function with System.Object arguments array.
Functions result as RadExpression.
Implements the LEFT function, which extracts a specified number of characters from the beginning of a text string.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new LEFT function instance that extracts characters from the start of text.
Virtual method evaluating the function with System.Object arguments array.
Functions result as RadExpression.
Implements the LEN function, which counts the total number of characters in a text string including spaces.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new LEN function instance that counts characters in text strings.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Implements the LOWER function, which converts all uppercase letters in a text string to lowercase.
The name of the function.
Gets the name of the function.
The name as String.
The name.
Gets the function info.
The function info as FunctionInfo.
The function info.
Initializes a new LOWER function instance that converts text to lowercase.
Virtual method evaluating the function with System.Object arguments array.
The context.
Functions result as RadExpression.
Extracts a substring from text at a specified position and length; implements the MID text function.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata about the function including its arguments and category.
The function info as FunctionInfo.
The function info.
Initializes a new instance that extracts characters from the middle of a text string.
Evaluates the MID function with the provided arguments and returns the extracted substring.
Functions result as RadExpression.
Repeats text a specified number of times; implements the REPT text function.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata about the function including its arguments and category.
The function info as FunctionInfo.
The function info.
Initializes a new instance that repeats text a specified number of times.
Evaluates the REPT function with the provided arguments and returns the repeated text, with a maximum result length of 32767 characters.
Functions result as RadExpression.
Extracts the last characters from text based on a specified count; implements the RIGHT text function.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata about the function including its arguments and category.
The function info as FunctionInfo.
The function info.
Initializes a new instance that extracts the last characters from a text string.
Evaluates the RIGHT function with the provided arguments and returns the specified number of characters from the end of the text.
Functions result as RadExpression.
Locates text within another text string using case-insensitive matching and returns the starting position; implements the SEARCH text function.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata about the function including its arguments and category.
The function info as FunctionInfo.
The function info.
Initializes a new instance that locates text within another text string using case-insensitive matching.
Evaluates the SEARCH function with the provided arguments and returns the one-based position where the text is found, or an error if not found.
Functions result as RadExpression.
Converts text to uppercase letters; implements the UPPER text function.
The name of the function.
Gets the function name used in formulas.
The name as String.
The name.
Gets metadata about the function including its arguments and category.
The function info as FunctionInfo.
The function info.
Initializes a new instance that converts text to uppercase letters.
Evaluates the UPPER function with the provided argument and returns the text converted to uppercase.
The context.
Functions result as RadExpression.
The expressions that the value of the current expression depends on.
Represents the array list separator input string.
Represents the array row separator input string.
Represents the defined name input string class.
Represents the format input string class.
Represents the list separator input string.
Toes the string.
The culture info.
Clones this instance.
Represents translatable input string class.
Represents the possible result values of the parse operation.
The method could not parse the value, however, no errors were encountered.
The method successfully parsed the value.
The method was supposed to parse the value, however, an error was encountered.
Represents array expression token.
Gets the array.
The array.
Initializes a new instance of the class.
The array.
The value.
Represents cell reference expression token.
Initializes a new instance of the class.
Name of the worksheet.
Name of the cell.
Represents defined name expression token.
Initializes a new instance of the class.
Name of the worksheet.
Name of the variable.
Reads the next token from the tokenizer, modifies the token if necessary, and validates the token.
The token.
The method ignores the peeked tokens and reads tokens from the
ExpressionTokenizer until a token of the specified type is reached.
Type of the token.
Peeks the next token.
The next token.
Pops the next token. If there are already peeked tokens, the method returns the first element.
If there are no peeked tokens, the method reads from the ExpressionTokenizer.
The next token.
The class provides context for the ExpressionLexer class. It stores information about the tokens already sent
to the ExpressionParser and allows the lexer to resolve the ambiguity between the list separator and the union operator.
Gets a value indicating whether the current list separator should be treated as a union operator.
The is union operator.
The class reads tokens from the ExpressionTokenizer, modifies and validates the tokens, and passes them to the ExpressionParser class.
The ExpressionLexer is designed to handle ambiguous tokens, insert tokens and merge tokens. The class saves information about the previous
tokens in the ExpressionLexerContext. Also, it can peek any number of tokens from the Tokenizer to resolve ambiguity. Unlike the ExpressionTokenizer,
which performs simple validation based on the next char, the ExpressionLexer performs validation based on the previous and next tokens.
Currently, the lexer solves the following issues:
- merges the tokens A1:B1 into a cell reference token, instead of treating this sequence as a range operator (Note that in the expression =A1:B1:C1:D1 the first and last : are not range operators)
- resolves ambiguity between list separator and union operator;
- resolves ambiguity between whitespace and intersection operator;
- distinguishes between unary and binary - and + operators;
- inserts missing value token (e.g. =INDEX(A1:C3,,2) is a valid expression);
The class reads tokens from the ExpressionLexer class, parses them, and builds an expression tree and an InputStringCollection.
The ExpressionParser maps the type of the expression token with a RadExpression. Note that the ExpressionParser does not deal
with ambiguous tokens - the ExpressionLexer handles such cases.
This collection is resposible for updating the string casing of the user input
Rewrites the tokens for a function-form operator (e.g. _xlfn.ANCHORARRAY(arg) → arg#,
_xlfn.SINGLE(arg) → @arg) so that the raw formula string shows the operator form.
The function name token to locate in the collection.
Replacement for the opening parenthesis (e.g. "" or "@").
Replacement for the closing parenthesis (e.g. "#" or "").
Collapses all tokens for a function call (name, parens, arguments) into a single
expression token. Used when the function is semantically an operator (e.g.
_xlfn.ANCHORARRAY(B1)) and the expression's ToString and
ToXlsxExportString produce the display and export forms respectively.
Collapses a postfix operator token and its preceding operand tokens into a single
expression token. Walks backwards from the operator to find the operand start
(handling parenthesized sub-expressions and function calls).
The class reads chars from the ExpressionTokenReader class and attempts to convert them to tokens.
It does not keep track of the preceding tokens and it cannot peek tokens. For this reason, the class
cannot handle ambiguities: it cannot determine whether the space should be treated as intersection operator,
whether the list separation should be union operator and whether the minus operator is a unary and binary.
The class performs validation based only on the next char. For example, if it registers a multiplication
operator (*) the following char cannot be binary or postix operator, such as division (/) or percent (%).
Expression that creates a cell range between two cell references, representing the range operator (:).
Gets the operator metadata for the range operator.
The operator info as OperatorInfo.
The operator info.
Initializes a new range expression with start and end cell references.
The left.
The right.
The workbook.
Creates a continuous cell range from the two operand references or returns an error if the range is invalid.
The operands of type T.
Value as RadExpression.
, <, >, <=, >=) that compare two constant expressions and return a boolean result.]]>
Gets the type of the operands.
The type of the operands as ArgumentType.
The type of the operands.
Gets a value indicating whether this operator should perform array evaluation (element-wise operation on arrays) when one or both operands evaluate to arrays.
Initializes a new instance of the class with left and right operands.
The left.
The right.
The workbook.
Compares the two operands using type-specific comparison logic and returns a boolean expression.
The operands of type T.
Value as RadExpression.
Compares the empty expressions.
The left.
The right.
Boolean result.
Compares the string expressions.
The left.
The right.
Boolean result.
Compares the number expressions.
The left.
The right.
Boolean result.
Compares the boolean expressions.
The left.
The right.
Boolean result.
Compares the different type expressions.
The left operand value.
The right operand value.
Boolean result.
Abstract base for expressions with constant values that do not require recalculation, serving as foundation for literals in formulas.
Determines whether the current instance is registered in the calculation map of the workbook.
Always returns .
Initializes a new instance of the class.
Returns the expression value, which for constant expressions is always the expression itself without recalculation.
The value as RadExpression.
Abstract base for strongly-typed constant expressions that hold a value of type , enabling type-safe literal values in formulas.
The type T of the expression value.
The typed constant value stored in this expression.
The value.
The value of type T.
Initializes a new instance of the class with the specified typed value.
The value.
Binary expression that divides the left operand by the right operand, returning an error if division by zero occurs.
The operator metadata for the division operator, including precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified dividend and divisor expressions.
The left.
The right.
The workbook.
Computes the division result from numeric operands, returning #DIV/0! error if the divisor is zero.
The operands of type T.
Value as RadExpression.
Constant expression representing an empty or blank cell value in formulas, distinct from zero or empty string.
Singleton instance representing an empty cell value for use throughout the spreadsheet engine.
Binary comparison expression that tests equality between two operands, performing case-insensitive string comparison and type coercion according to spreadsheet semantics.
The operator metadata for the equality operator, including precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified operands to compare for equality.
The left.
The right.
The workbook.
Compares two string expressions for equality using case-insensitive comparison.
The left.
The right.
Boolean result.
Compares two numeric expressions for exact equality.
The left.
The right.
Boolean result.
Compares two boolean expressions for equality.
The left.
The right.
Boolean result.
Compares expressions of different types by applying spreadsheet type coercion rules, such as treating empty as zero or false.
The left operand value.
The right operand value.
Boolean result.
Compares two empty expressions, which are always considered equal.
The left operand value.
The right operand value.
Boolean result.
Constant expression representing a formula error with an error value, message, and optional exception. Use this to propagate errors through formula calculations.
The underlying exception that caused this error, if any.
The exception.
The exception of the ErrorExpression.
The human-readable error message describing what went wrong.
The message.
The error message.
Provides standard error expression instances for common formula errors such as #DIV/0!, #VALUE!, #REF!, and #N/A, matching Excel error semantics.
#NULL! error indicating an invalid range intersection or missing range operator.
#DIV/0! error indicating division by zero was attempted.
#VALUE! error indicating an invalid value type or operand mismatch in a formula.
#NAME? error indicating an unrecognized function or range name.
#REF! error indicating an invalid cell reference, often from deleted rows or columns.
#NUM! error indicating an invalid numeric value or out-of-range calculation result.
#N/A error indicating a value is not available, commonly used in lookup functions when no match is found.
#SPILL! error indicating that an array formula cannot spill because the target range is blocked by a non-empty cell.
#CALC! error indicating that the calculation engine cannot determine the result size (e.g., infinite or unbounded).
Error indicating a circular dependency was detected where a formula references itself directly or indirectly.
Exception thrown when an error occurs during formula parsing, evaluation, or manipulation, with support for localized error messages.
Initializes a new instance of the class with the specified error message.
The message.
Initializes a new instance of the class with localization support via a resource key.
The message.
The key.
The format string arguments.
Initializes a new instance of the class with an inner exception for chaining.
The message.
The inner exception.
Initializes a new instance of the class with both an inner exception and localization support.
The message.
The inner exception.
The key.
The format string arguments.
Extension methods for RadExpression that provide convenient value extraction, type conversion, and validation operations for use throughout formula evaluation.
Extracts the numeric value from an expression, returning 0 if the expression is not a NumberExpression.
The expression.
The number value as double. If the expression is not NumberExpression returns 0.
Evaluates the expression and returns its value as a constant, extracting the first element if the result is an array.
The expression.
The ConstantExpression result.
Extracts the integer value from a numeric expression, throwing an exception if the expression is not a NumberExpression.
The expression.
Thrown when expression is not NumberExpression.
The value as integer.
Tests whether a character is valid within a function name or cell reference during formula parsing.
The character.
True if valid, otherwise false.
Converts a Boolean value to the corresponding BooleanExpression singleton (True or False).
The value.
The result as BooleanExpression.
Converts a CellReferenceRange to the equivalent CellRange with resolved row and column indexes.
The cell reference range.
The cell range.
Describes different states of an RadExpression.
Unknown expression state.
Invalid expression state.
Computing expression state.
Valid expression state.
Expression that invokes a spreadsheet function by name with specified arguments, evaluating to the function's result or an error if the function does not exist.
Evaluates the function with the provided arguments and returns the result, or #NAME? error if the function is not found. Attaches listeners to cell reference results for dependency tracking.
The value as RadExpression.
Evaluates whether the left operand is greater than the right operand; implements the greater-than (>) comparison operator.
Gets metadata about the greater-than operator including its precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified left and right operands.
The left.
The right.
The workbook.
Compares two string expressions and returns true if the left is alphabetically greater than the right using case-insensitive comparison.
The left.
The right.
Boolean result.
Compares two number expressions and returns true if the left value is greater than the right value.
The left.
The right.
Boolean result.
Compares two boolean expressions and returns true only if left is true and right is false.
The left.
The right.
Boolean result.
Compares expressions of different types and returns true if the left type has higher precedence than the right type.
The left operand value.
The right operand value.
Boolean result.
Compares two empty expressions and always returns false since empty values are equal.
The left.
The right.
Boolean result.
Evaluates whether the left operand is greater than or equal to the right operand; implements the greater-than-or-equal-to (>=) comparison operator.
Initializes a new instance of the class with the specified left and right operands.
The left.
The right.
The workbook.
Compares two string expressions and returns true if the left is alphabetically greater than or equal to the right using case-insensitive comparison.
The left.
The right.
Boolean result.
Compares two number expressions and returns true if the left value is greater than or equal to the right value.
The left.
The right.
Boolean result.
Compares two boolean expressions and returns true unless left is false and right is true.
The left.
The right.
Boolean result.
Compares expressions of different types and returns true if the left type has higher precedence than the right type.
The left operand value.
The right operand value.
Boolean result.
Compares two empty expressions and always returns true since empty values are equal.
The left.
The right.
Boolean result.
Represents the input string collection class.
Gets a value indicating whether the cell value depends on a spreadsheet name.
The name of the contains spreadsheet.
Gets a value indicating whether the cell value depends on a sheet name.
The is sheet name dependent.
Gets a value indicating whether the cell value depends on the workbook name.
The is workbook name dependent.
Gets a value indicating whether the cell value contains cell references.
The is cells name dependent.
Gets the count.
The count.
Gets the at the specified index.
Initializes a new instance of the class.
Calculates the intersection of two cell reference ranges and returns the overlapping cells; implements the space intersection operator.
Gets metadata about the intersection operator including its precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified left and right cell reference ranges.
The left.
The right.
The workbook.
Calculates the intersection of two cell reference ranges and returns the overlapping range, or a null error if no intersection exists.
The operands of type T.
Value as RadExpression.
Gets metadata about the less-than operator including its precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified left and right operands.
The left.
The right.
The workbook.
Compares two string expressions and returns true if the left is alphabetically less than the right using case-insensitive comparison.
The left.
The right.
Boolean result.
Compares two number expressions and returns true if the left value is less than the right value.
The left.
The right.
Boolean result.
Compares two boolean expressions and returns true only if left is false and right is true.
The left.
The right.
Boolean result.
Compares expressions of different types and returns true if the left type has lower precedence than the right type.
The left operand value.
The right operand value.
Boolean result.
Compares two empty expressions and always returns false since empty values are equal.
The left.
The right.
Boolean result.
Gets metadata about the less-than-or-equal-to operator including its precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified left and right operands.
The left.
The right.
The workbook.
Compares two string expressions and returns true if the left is alphabetically less than or equal to the right using case-insensitive comparison.
The left.
The right.
Boolean result.
Compares two number expressions and returns true if the left value is less than or equal to the right value.
The left.
The right.
Boolean result.
Compares two boolean expressions and returns true unless left is true and right is false.
The left.
The right.
Boolean result.
Compares expressions of different types and returns true if the left type has lower precedence than the right type.
The left operand value.
The right operand value.
Boolean result.
Compares two empty expressions and always returns true since empty values are equal.
The left.
The right.
Boolean result.
Multiplies two numeric operands and returns the product; implements the multiplication (*) arithmetic operator.
Gets metadata about the multiplication operator including its precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified left and right operands.
The left.
The right.
The workbook.
Multiplies the two numeric operands and returns the product, or an error if the result is infinity or NaN.
The operands of type T.
Value as RadExpression.
) comparison operator.]]>
Gets metadata about the not-equal operator including its precedence and associativity.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class with the specified left and right operands.
The left.
The right.
The workbook.
Compares two string expressions and returns true if they are not equal using case-insensitive comparison.
The left.
The right.
Boolean result.
Compares two number expressions and returns true if the values are not equal.
The left.
The right.
Boolean result.
Compares two boolean expressions and returns true if they have different values using XOR logic.
The left.
The right.
Boolean result.
Compares expressions of different types and returns true unless comparing equivalent values like zero and empty, applying special rules for boolean and empty operands.
The left operand value.
The right operand value.
Boolean result.
Compares two empty expressions and always returns false since empty values are equal.
The left operand value.
The right operand value.
Boolean result.
Abstract base for binary operators that operate on numeric operands and return numeric results.
Gets the operand type required by this operator, which is numeric.
The type of the operands as ArgumentType.
The type of the operands.
Gets a value indicating whether this operator should perform array evaluation (element-wise operation on arrays) when one or both operands evaluate to arrays.
Initializes a new instance of the class with the specified left and right operands.
The left.
The right.
The workbook.
Represents a constant numeric value in a formula expression; provides commonly used numeric constants and validation.
A constant expression representing the numeric value zero (0).
A constant expression representing the numeric value one (1).
A constant expression representing pi (π), approximately 3.14159.
A constant expression representing Euler's number (e), approximately 2.71828.
Gets the numeric value cast to an integer, truncating any fractional part.
The integer value.
The integer value.
Initializes a new instance of the class with the specified numeric value, which must be a valid finite number.
The value.
Defines whether an operator evaluates left-to-right or right-to-left when operators of equal precedence appear in an expression.
Evaluates from left to right when operators have equal precedence.
Evaluates from right to left when operators have equal precedence.
Base for expressions that perform operations on operands using operators (+, -, *, /, etc.), managing precedence and associativity.
Initializes a new operator expression with default state.
Gets the operator metadata including its symbol, precedence, and associativity.
The operator info.
The operator info as OperatorInfo.
Describes an operator's symbol, precedence, and associativity for use in expression parsing and evaluation.
The symbol.
The symbol as String.
Gets the precedence value determining evaluation order, with lower numbers evaluated first.
The precedence.
The precedence as Int32.
Gets whether this operator evaluates left-to-right or right-to-left when operators of equal precedence appear together.
The associativity.
The associativity as OperatorAssociativity.
Initializes a new operator descriptor with the specified symbol, precedence, and associativity.
The symbol.
The precedence.
The associativity.
Defines the standard set of operators used in spreadsheet formulas, each with metadata for parsing and evaluation.
Operator info for the range operator (":") that creates a cell range between two references.
Operator info for the union operator (",") that combines multiple cell ranges or references.
Operator info for the intersection operator (" ") that finds common cells between ranges.
Operator info for the unary plus operator ("+") that preserves the sign of a numeric value.
Operator info for the unary minus operator ("-") that negates a numeric value.
Operator info for the percent operator ("%") that divides a value by 100.
Operator info for the exponentiation operator ("^") that raises a number to a power.
Operator info for the multiplication operator ("*").
Operator info for the division operator ("/").
Operator info for the addition operator ("+").
Operator info for the subtraction operator ("-").
Operator info for the equality comparison operator ("=").
").]]>
=").]]>
").]]>
Operator info for the implicit intersection operator ("@") that resolves an array to a single value.
Operator info for the spill range operator ("#") that expands a cell reference to its entire spill range.
Expression that divides a numeric value by 100, representing the percent operator (%).
Gets the operator metadata for the percent operator.
The operator info as OperatorInfo.
The operator info.
Initializes a new percent expression that will divide the operand by 100.
The operand as RadExpression.
The workbook.
Calculates the result by dividing the operand by 100.
The operand as double.
Value as RadExpression.
Expression that raises a number to a power, representing the exponentiation operator (^).
Gets the operator metadata for the exponentiation operator.
The operator info as OperatorInfo.
The operator info.
Initializes a new exponentiation expression with a base and exponent.
The left.
The right.
The workbook.
Calculates the power result, handling special cases for zero and negative bases.
The operands of type T.
Value as RadExpression.
Abstract base for all spreadsheet expressions, providing lazy evaluation, change propagation, and value caching for formula calculation.
Initializes a new expression with an unknown evaluation state.
Called only by the factory to register this expression with the workbook.
Determines whether the current instance is registered in the calculation map of the workbook.
if the instance is registered; otherwise, .
Evaluates and returns the computed value, detecting cyclic references during calculation.
The value as RadExpression.
Evaluates the expression and returns the result formatted as a string.
The value as string.
Evaluates the expression and returns the result formatted according to the specified culture.
The culture info.
The value as string.
Converts the expression to its formula string representation using default culture.
A that represents the current .
Converts the expression to its formula string representation using the specified culture for number and list separators.
The culture info.
The expression as string.
Calculates the expression result; override to define specific evaluation logic for each expression type.
The value as RadExpression.
Marks the cached value as invalid, triggering recalculation on next access and propagating invalidation to dependent expressions.
Changes the state of the expression to valid.
Changes the state of the passed expression to unknown.
Raised when the expression's cached value becomes invalid and requires recalculation.
Raises the ValueInvalidated event to notify dependent expressions.
Implements the implicit intersection operator (@), resolving an array or range expression to a
single value based on the formula cell's row and column position. In XLSX, this is stored as
_xlfn.SINGLE(inner).
Expression that references a defined name or named range, resolving to the name's underlying formula or value.
Resolves the defined name to its underlying expression, translating it to the current cell context.
The value as RadExpression.
Base for binary expressions that operate on string operands, enforcing text argument types.
Gets the required operand type, which is text for string operations.
The type of the operands as ArgumentType.
The type of the operands.
Gets a value indicating whether this operator should perform array evaluation (element-wise operation on arrays) when one or both operands evaluate to arrays.
Initializes a new string binary expression with two operands.
The left.
The right.
The workbook.
Expression representing a constant text value in a formula.
Shared instance representing an empty string constant.
Initializes a new string expression with the specified text value.
The value.
Expression that subtracts the right operand from the left operand, representing the subtraction operator (-).
Gets the operator metadata for the subtraction operator.
The operator info as OperatorInfo.
The operator info.
Initializes a new subtraction expression with left and right operands.
The left.
The right.
The workbook.
Calculates the difference between the two operands.
The operands of type T.
Value as RadExpression.
Expression that negates a numeric value, representing the unary minus operator (-).
Gets the operator metadata for the unary minus operator.
The operator info as OperatorInfo.
The operator info.
Initializes a new unary minus expression that will negate the operand.
The operand.
The workbook.
Calculates the negation of the operand by multiplying by -1.
The operand as double.
Value as RadExpression.
Base for expressions that apply a single operator to one operand (e.g., negation, percent).
Gets the single operand that this operator acts upon.
The operand.
The operand as RadExpression.
Gets the rules for converting the operand to a numeric value for evaluation.
The argument conversion rules.
The argument conversion rules of the operand operation.
Initializes a new unary operator expression with the specified operand.
The operand.
The workbook.
Converts the operand to a number and delegates to the derived class for specific operation logic.
The value as RadExpression.
Calculates the result of applying the operator to the numeric operand; override to define operator-specific behavior.
The operand as double.
Value as RadExpression.
Expression that preserves the sign of a numeric value, representing the unary plus operator (+).
Gets the operator metadata for the unary plus operator.
The operator info as OperatorInfo.
The operator info.
Initializes a new unary plus expression that will preserve the operand's sign.
The operand.
The workbook.
Returns the operand unchanged, effectively preserving its sign.
The operand as double.
Value as RadExpression.
Combines two cell reference range expressions into a union, allowing formulas to reference multiple non-contiguous ranges.
Gets the operator metadata describing the union operator's precedence and behavior.
The operator info as OperatorInfo.
The operator info.
Initializes a new instance of the class that combines two range expressions.
The left.
The right.
The workbook.
Evaluates the union of the operand ranges and returns the combined range expression or an error if the ranges are invalid.
The operands of type T.
Value as RadExpression.
Base class for format providers that import and export workbooks using binary formats such as XLSX and XLS.
Initializes a new instance of the class.
Imports a workbook from the specified byte array with optional timeout to prevent long-running operations.
The input.
The timeout after which the operation will be cancelled.
The workbook.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Exports the specified workbook to a byte array with optional timeout to prevent long-running operations.
The workbook.
The timeout after which the operation will be cancelled.
The result byte array.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Provides data for the CellImported event, raised after each cell is imported from a DataTable to a worksheet.
Initializes a new instance of the class with the source and destination cell coordinates.
The index of the row in the DataTable containing the cell that the event occurs for.
The index of the column in the DataTable containing the cell that the event occurs for.
The index of the row in the Worksheet containing the cell that the event occurs for.
The index of the column in the Worksheet containing the cell that the event occurs for.
The worksheet where the data is imported.
Gets the zero-based row index in the source DataTable for the imported cell.
Gets the zero-based column index in the source DataTable for the imported cell.
Gets the zero-based row index in the destination worksheet where the cell was imported.
Gets the zero-based column index in the destination worksheet where the cell was imported.
Gets the worksheet instance receiving the imported data.
Provides data for the ColumnExporting event, raised for each column during DataTable export.
Initializes a new instance of the class with the column being exported.
The column that is curently beeing exported.
The index of the column that is curently beeing exported.
Gets the DataColumn currently being exported, allowing modification of column properties during export.
Gets the zero-based index of the column being exported.
Converts between ADO.NET DataTable instances and spreadsheet workbooks, enabling bidirectional data exchange for tabular data integration.
Gets or sets the settings controlling how DataTable data is imported into worksheets.
Gets or sets the settings controlling how worksheet data is exported to DataTable.
Initializes a new instance of the class with default import and export settings.
Exports the specified worksheet to a new DataTable, converting cell values and types according to export settings.
The worksheet for export.
the converted DataTable
Exports the specified worksheet to a new DataTable, converting cell values and types according to export settings.
The worksheet for export.
The timeout after which the operation will be cancelled.
the converted DataTable
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Imports the specified DataTable into a new workbook, creating a worksheet with the table data.
The DataTable for import.
the converted new Workbook.
Imports the specified DataTable into a new workbook, creating a worksheet with the table data.
The DataTable for import.
The timeout after which the operation will be cancelled.
the converted new Workbook.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Imports the specified DataTable into an existing worksheet, appending data at the configured start position.
The DataTable for import.
The Worksheet where the data should be added.
Imports the specified DataTable into an existing worksheet, appending data at the configured start position.
The DataTable for import.
The Worksheet where the data should be added.
The timeout after which the operation will be cancelled.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Performs the core import logic, populating the worksheet with DataTable rows and columns.
The DataTable for import.
The worksheet where the data will be added.
The cancellation token used to cancel the operation.
Configures export behavior from worksheet to DataTable, including header handling, type conversion, and culture settings.
Raised for each column during export, allowing customization of column properties before the DataTable is finalized.
Gets or sets whether the first row of the worksheet should be treated as column headers during export; defaults to true.
Gets or sets whether to infer and apply strong data types to DataTable columns from cell values; when false, all columns use object type.
Gets or sets the culture used for the exported DataTable; defaults to the workbook's culture.
Gets or sets the cell range to export; when null, exports the worksheet's used range.
Initializes a new instance of the class with default settings.
Raises the event for the specified column.
The currently exported DataColumn
The index of the column in the DataTable that the event occurs for.
Configures import behavior from DataTable to worksheet, including header handling, date formatting, and start position.
Raised after each cell is imported, allowing customization of cell properties in the destination worksheet.
Gets or sets the format string applied to imported DateTime columns; when null, uses the current culture's short date pattern.
Gets or sets whether DataTable column names should be imported as the first row in the worksheet; defaults to true.
Gets or sets the cell index where the imported data begins in the worksheet; defaults to (0,0).
Initializes a new instance of the class with default settings.
Raises the event for the specified cell.
The index of the row in the DataTable containing the cell that the event occurs for.
The index of the column in the DataTable containing the cell that the event occurs for.
The index of the row in the Worksheet containing the cell that the event occurs for.
The index of the column in the Worksheet containing the cell that the event occurs for.
The worksheet where the data is imported.
Thrown when a worksheet column contains mixed data types that cannot be reconciled during DataTable export with type inference enabled.
Initializes a new instance of the class with details about the type conflict.
The message that describes the error.
The expected DataType.
The data type of the current cell.
The index of the column where the invalid data is.
The index of the row where the invalid data is.
Gets the data type initially inferred for the column.
Gets the conflicting data type encountered in the cell.
Gets the zero-based column index where the type conflict occurred.
Gets the zero-based row index where the type conflict occurred.
Encapsulates cell metadata including position, value, and style index for use during format provider import and export operations.
Gets or sets the zero-based row index of the cell.
The index of the row.
Gets or sets the zero-based column index of the cell.
The index of the column.
Gets or sets the cell index as a combined row and column coordinate.
The index of the cell.
Gets or sets the cell's value, which may be a number, text, boolean, formula, error, or empty value.
The cell value.
Gets or sets the style index referencing a workbook style definition.
The index of the style.
Initializes a new instance of the class.
Initializes a new instance of the class from a cell selection, extracting position and value.
Index of the cell.
The cell selection.
Describes cell property data.
Initializes a new instance of the class.
Sets the row used range value.
Index of the row.
The value.
Sets the column used range value.
Index of the column.
The value.
Gets the row used range.
Index of the row.
The row used range.
Gets the column used range.
Index of the column.
The column used range.
Gets a value indicating whether the row is empty.
Index of the row.
True if the row is empty.
Gets a value indicating whether the column is empty.
Index of the column.
True if the column is empty.
Gets the used cell range.
The used cell range.
Encapsulates a merged cell range for use during format provider import and export operations.
Gets or sets the cell range defining the rectangular area of merged cells.
The cell range.
Initializes a new instance of the class.
Initializes a new instance of the class for the specified merged range.
The cell range.
Represents worksheet export context.
Gets the worksheet.
The worksheet.
Gets the value property data information.
The value property data information.
Initializes a new instance of the class.
The worksheet.
The cancellation token.
Gets the non empty cells in row.
Index of the row.
The result collection containing information about the cells.
Specifies the scope of data to export from a workbook, such as a single sheet, the entire workbook, or a selection.
Exports only the currently active worksheet.
Exports all worksheets in the workbook.
Exports only the currently selected cell ranges.
Configures export scope and behavior, including which sheets to export, whether to honor print areas, and hidden sheet handling.
Initializes a new instance of the class.
Initializes a new instance of the class with the specified scope and print area behavior.
The ExportWhat option.
Value indicating whether to ignore print area.
Gets the export scope specifying whether to export the active sheet, entire workbook, or selection.
The ExportWhat option value.
Gets whether to export the entire sheet content instead of limiting to the defined print area.
Value indicating whether the print area should be ignored.
Gets or sets whether hidden worksheets should be included in the exported document.
true if the hidden sheets should be included; otherwise, false.
Determines whether the specified object has the same export scope and print area settings as this instance.
The to compare with the current
.
Returns true if the specified is equal to the
current ; otherwise, false.
Computes a hash code based on the export scope and print area settings.
A hash code for the current .
Interface for format providers that import and export workbooks using binary representations such as byte arrays.
Imports a workbook from the specified byte array.
The input.
The timeout.
The workbook.
Exports the specified workbook to a byte array.
The workbook.
The timeout.
The result byte array.
Interface for format providers that import and export workbooks using text-based formats such as CSV and TXT.
Imports a workbook from the specified text string with optional timeout to prevent long-running operations.
The input.
The timeout after which the operation will be cancelled.
The workbook.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Exports the specified workbook to a text string with optional timeout to prevent long-running operations.
The workbook.
The timeout after which the operation will be cancelled.
The result string.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Defines a common interface for workbook import and export format providers, enabling serialization and deserialization of workbooks to and from various file formats.
Gets the unique identifier name of this format provider.
The name of the provider.
Gets the human-readable description of files supported by this provider, suitable for display in file dialogs.
The files description.
Gets the collection of file extensions supported by this provider, each including the leading dot (e.g., ".xlsx").
The supported extensions.
Gets a value indicating whether this provider supports importing workbooks from streams.
The value indicating whether can import.
Gets a value indicating whether this provider supports exporting workbooks to streams.
The value indicating whether can export.
Imports a workbook from the specified stream with an optional timeout and returns the deserialized workbook instance.
The input.
The imported workbook.
The timeout after which the operation will be cancelled.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Exports the specified workbook to the output stream with an optional timeout in the provider's format.
The workbook.
The output.
The timeout after which the operation will be cancelled.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Base class for text-based workbook format providers that offer string-based import and export methods in addition to stream-based operations.
Initializes a new instance of the class.
Imports a workbook from the specified text string with an optional timeout and returns the deserialized workbook instance.
The input.
The timeout after which the operation will be cancelled.
The result workbook.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Exports the specified workbook to a text string with an optional timeout in the provider's format and returns the serialized result.
The workbook.
The timeout after which the operation will be cancelled.
The result string.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Configures delimiter, quote, encoding, and header options for CSV file import and export operations.
Initializes a new instance of the class with default values from the current culture for delimiter, quote, and encoding.
Gets or sets the character used to separate values in CSV data, defaulting to the list separator of the current culture.
The delimiter symbol.
Gets or sets the character used to quote values containing delimiters or line breaks, defaulting to double-quote (\").
The quote symbol.
Gets or sets a value indicating whether the first row of CSV data contains column headers rather than data, defaulting to false.
The has header row.
Gets or sets the text encoding used for reading and writing CSV files, defaulting to UTF-8 with BOM.
The encoding.
Gets or sets a value indicating whether empty cell values are included in the CSV export, affecting trailing delimiters on rows.
True if the empty values are exported; otherwise false.
Determines whether two instances are equal by comparing their delimiter, quote, header row, and encoding settings.
The first value.
The second value.
The result of the operator.
Determines whether two instances are not equal by comparing their delimiter, quote, header row, and encoding settings.
The first value.
The second value.
The result of the operator.
Determines whether the specified object is a instance with equal delimiter, quote, header row, and encoding values.
The object to compare with the current object.
true if the specified is equal to the
current ; otherwise, false.
Computes a hash code by combining the hash codes of delimiter, quote, header row, and encoding properties.
A hash code for the current .
Performs application-defined tasks associated with freeing, releasing,
or resetting unmanaged resources.
Disposes the specified clean up managed resources.
The clean up managed resources.
Imports and exports workbooks in CSV (Comma Separated Values) format with customizable delimiter, quote, and encoding settings.
Gets the unique identifier name "CsvFormatProvider" for this format provider.
The name of the provider.
Gets the human-readable file type description "CSV (Comma delimited)" for use in file dialogs.
The files description.
Gets the collection of supported file extensions (".csv") for CSV format.
The supported extensions.
Gets the configuration settings for CSV delimiter, quote character, encoding, and header row options.
The settings.
Initializes a new instance of the class with default CSV settings.
Base class for text-based workbook format providers that handle delimited value formats like CSV and tab-delimited files, providing common import and export functionality.
Gets the configuration settings controlling delimiter, quote, encoding, and header behavior for delimited text import and export.
The settings.
Gets a value indicating whether this provider supports importing delimited text files, always returning true.
The value indicating whether can import.
Gets a value indicating whether this provider supports exporting workbooks to delimited text format, always returning true.
The value indicating whether can export.
Gets or sets a value indicating whether empty rows and columns at the start of the worksheet are excluded from export, defaulting to true to minimize file size.
The value indicating whether the leading empty rows and columns should be trimmed.
Initializes a new instance of the class with set to true.
Parses delimited text from the input stream with cancellation support and returns a workbook with cell values and formatting inferred from the text data.
The input.
The token used to cancel the operation.
The imported workbook.
Serializes the active worksheet to delimited text format with cancellation support, applying cell formatting to generate text representations of cell values.
The workbook.
The output.
The token used to cancel the operation.
Imports and exports workbooks in tab-delimited text (.txt) format with tab as the default delimiter.
Gets the unique identifier name "TxtFormatProvider" for this format provider.
The name of the provider.
Gets the human-readable file type description "Text (Tab delimited)" for use in file dialogs.
The files description.
Gets the collection of supported file extensions (".txt") for tab-delimited text format.
The supported extensions.
Gets the configuration settings with tab delimiter and other options for text file import and export.
The settings.
Initializes a new instance of the class with tab character (\t) as the delimiter.
Exception thrown when attempting to import or export a workbook with a file extension that no registered format provider supports.
Gets the error message describing which file extension is not supported.
The error message that explains the reason for the exception, or an
empty string("").
Initializes a new instance of the class for the specified unsupported file extension.
The extension.
Base class for all workbook format providers, implementing common import and export logic with timeout and cancellation support.
Initializes a new instance of the class.
Gets the unique identifier name of this format provider.
The name of the provider.
Gets the human-readable description of files supported by this provider, defaulting to the first extension in uppercase (e.g., "XLSX Files").
The files description.
Gets the collection of file extensions supported by this provider, each including the leading dot.
The supported extensions.
Gets a value indicating whether this provider supports importing workbooks from streams.
The value indicating whether can import.
Gets a value indicating whether this provider supports exporting workbooks to streams.
The value indicating whether can export.
Imports a workbook from the specified stream with an optional timeout, validating import capability, and returns the deserialized workbook instance.
The input.
The timeout after which the operation will be cancelled.
The imported workbook.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
When overridden in a derived class, performs the format-specific import logic to deserialize a workbook from the input stream with cancellation support.
The input.
The token used to cancel the operation.
The imported workbook.
Exports the specified workbook to the output stream with an optional timeout, validating export capability and workbook state.
The workbook.
The output.
The timeout after which the operation will be cancelled.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
When overridden in a derived class, performs the format-specific export logic to serialize the workbook to the output stream with cancellation support.
The workbook.
The output.
The token used to cancel the operation.
Manages the global registry of workbook format providers, enabling registration, discovery by extension, and import/export operations using the registered providers.
Gets the collection of all format providers registered with the application-wide manager.
The format providers.
Enumerates all unique file extensions supported by registered format providers for import or export.
The supported file extensions.
Retrieves the format provider with the specified name from the registered providers, or null if not found.
Name of the provider.
The format provider.
Retrieves the format provider that supports the specified file extension from the registered providers, or null if not found.
The extension.
The format provider.
Registers a format provider with the global manager, replacing any existing provider with the same name.
The provider.
Removes the specified format provider from the global manager's registry.
The provider.
Imports a workbook from a stream with an optional timeout using the format provider registered for the specified file extension.
The file extension.
The input stream.
The timeout after which the operation will be cancelled.
The workbook.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Imports a workbook from a stream with an optional timeout using a provider from the specified collection that supports the file extension.
The file extension.
The input stream.
The format providers to be used.
The timeout after which the operation will be cancelled.
The workbook.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Exports a workbook to a stream with an optional timeout using the format provider registered for the specified file extension.
The workbook.
The file extension.
The output stream.
The timeout after which the operation will be cancelled.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Exports a workbook to a stream with an optional timeout using a provider from the specified collection that supports the file extension.
The workbook.
The file extension.
The output stream.
The format providers to be used.
The timeout after which the operation will be cancelled.
The exception that is thrown when timeout is less than -1 or greater than Int32.MaxValue.
Note that this upper bound is more restrictive than TimeSpan.MaxValue.
Provides utility methods for cell value formatting, date-time conversion, culture handling, and number format string parsing.
Defines the earliest date the RadSpreadsheet recognizes.
Gets or sets the culture helper used for resolving locale-specific formatting settings such as decimal separators, currency symbols, and list separators.
Converts a numeric value representing days since 1900-01-01 to a DateTime instance, accounting for Excel's leap year bug, or returns null if the value is invalid.
The double value.
The DateTime instance.
Converts a DateTime instance to a numeric value representing days since 1900-01-01, accounting for Excel's leap year bug.
The DateTime instance.
The double number.
Rounds a DateTime to the nearest second by rounding up if milliseconds are 500 or greater.
The DateTime value.
The DateTime instance with rounded minutes.
Rounds the milliseconds of a DateTime to the specified precision by truncating or rounding based on the digit count.
The DateTime value.
The precision.
The DateTime instance with rounded milliseconds.
Converts a NumberCellValue to a DateTime by interpreting the numeric value as days since 1900-01-01, or returns null if the value is invalid.
The number cell value.
The DateTime instance.
Builds accounting number format strings with aligned currency symbols and negative values enclosed in parentheses, following culture-specific patterns.
Builds an accounting format string for the specified currency and decimal places, with aligned currency symbols and negative values in parentheses.
The currency info.
The decimal places.
Builds currency number format strings with culture-specific currency symbols, thousands separators, and negative value patterns.
Builds a list of currency format strings for the specified currency and decimal places using the culture-specific currency code from the .
The currency info.
The decimal places.
Builds a list of currency format strings for the specified currency and decimal places by invoking registered handlers.
The currency info.
The decimal places.
Builds number format strings with optional thousands separator and specified decimal places following the current culture's conventions.
Builds a list of number format strings with the specified decimal places and optional thousands separator.
The decimal places.
The use thousand separator.
Manages currency format information, mapping cultures to currency codes and providing currency display options for format dialogs.
Gets the dictionary mapping each culture to its Excel-style currency code format string (e.g., "[$€-407]" for German).
The culture info to currency code.
Gets the collection of available currency options including "None", the current culture's symbol, and all registered culture-specific currency symbols.
The currency infos.
Provides a predefined list of common custom number format strings covering number, currency, percentage, date, time, and text formats.
Gets the read-only list of predefined custom format strings, including General, number formats, currency formats, date/time formats, and text formats.
The format strings.
Manages date and time format strings for different cultures, providing mappings between culture info and supported date and time formatting patterns.
Maps culture info to available date format strings for that culture.
The culture info to date formats.
Maps culture info to available time format strings for that culture.
The culture info to time formats.
Manages fraction format strings, providing mappings between fraction denominator types and their corresponding format string patterns.
Maps fraction denominator types to their format string representations.
The fraction type to format string.
Manages culture-specific special format strings such as postal codes, phone numbers, and social security numbers.
Maps culture info to available special format patterns for that culture.
The culture info to format info.
Contains the formatted output of a cell value, including text segments, color, culture, and conditional formatting information.
Culture used to format the cell value.
The culture.
Foreground color applied to the formatted value, if specified by the format string.
The foreground.
Conditional predicate that determines whether this format applies to a numeric value.
The condition.
Collection of formatted text segments, each with its own formatting attributes.
The infos.
Concatenated text from all format result items, including transparent segments.
The infos text.
Concatenated text from all visible (non-transparent) format result items.
The visible infos text.
Concatenated text from visible items with transparent segments replaced by spaces and expandable segments omitted.
The extended visible infos text.
Indicates whether any format result item should expand to fill available space.
The contains expandable info.
Initializes a new instance of the class.
The infos.
The foreground.
The condition.
The culture.
Initializes a new instance of the class.
The infos.
Represents a single text segment within a formatted cell value, with attributes controlling visibility and expansion behavior.
Formatted text content of this segment.
The text.
Indicates whether this segment is transparent and should not be rendered visually.
The is transparent.
Indicates whether this segment should expand to fill available horizontal space.
The should expand.
Indicates whether formatting should be applied to this segment.
The apply format.
Initializes a new instance of the class with specified text and formatting attributes.
The text.
The is transparent.
The should expand.
The apply format.
Contains currency symbol and culture information for formatting currency values in cells.
Represents a currency with no symbol, used when currency formatting is not required.
Currency symbol used in formatted output.
The currency symbol.
Culture associated with this currency, or null if culture-agnostic.
The culture.
Currency info using the current culture's currency symbol.
The symbol.
Initializes a new instance of the class with the specified currency symbol and optional culture.
The currency symbol.
The culture.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Defines the category of a cell value format string, determining how values are interpreted and displayed.
Default format with no specific pattern.
Numeric values with optional decimal places, thousand separators, and negative number handling.
Monetary values with currency symbol and negative number formatting.
Monetary values with currency symbol alignment and zero display as dash.
Date values formatted according to culture-specific patterns.
Time values formatted with hours, minutes, and seconds.
Numeric values displayed as percentages.
Numeric values displayed as fractions with configurable denominators.
Numeric values in exponential notation.
Text values displayed without numeric interpretation.
Culture-specific formats such as postal codes, phone numbers, and social security numbers.
User-defined format patterns not matching predefined categories.
Determines the category of format strings and validates format string membership in specific categories.
Determines whether the specified format string belongs to the given category.
The format string.
The category.
Determines the category of the specified format string by testing against each category predicate.
The local format string.
Attempts to parse the format string as a number format and returns configuration information.
The format string.
The format string info.
Attempts to parse the format string as a currency format and returns configuration information.
The format string.
The format string info.
Attempts to parse the format string as an accounting format and returns configuration information.
The format string.
The format string info.
Attempts to parse the format string as a date format and returns configuration information.
The format string.
The format string info.
Attempts to parse the format string as a time format and returns configuration information.
The format string.
The format string info.
Attempts to parse the format string as a percentage format and returns configuration information.
The format string.
The format string info.
Attempts to parse the format string as a scientific format and returns configuration information.
The format string.
The format string info.
Attempts to parse the format string as a special format and returns configuration information.
The format string.
The format string info.
Contains metadata about a format string, including its type, category, and whether it includes date or time components.
High-level type of the format string, indicating whether it formats numbers, dates, or text.
The type of the format.
Specific category of the format string, such as Currency, Date, or Percentage.
The category.
Defines the high-level data type that a format string is designed to handle.
Formats numeric values with optional decimal places, thousand separators, and negative notation.
Formats date and time values according to culture-specific patterns.
Formats text values without numeric interpretation.
Defines the denominator precision or fixed value used when formatting numbers as fractions.
Denominators with up to one digit (1-9).
Denominators with up to two digits (1-99).
Denominators with up to three digits (1-999).
Fixed denominator of 2 (halves).
Fixed denominator of 4 (quarters).
Fixed denominator of 8 (eighths).
Fixed denominator of 16 (sixteenths).
Fixed denominator of 10 (tenths).
Fixed denominator of 100 (hundredths).
Contains configuration for accounting format strings, including decimal precision and currency symbol.
Number of decimal places to display in the formatted value.
The decimal places.
Currency information including symbol and culture for this accounting format.
The currency info.
Full format string pattern used to format accounting values.
The format string.
Initializes a new instance of the class with specified decimal precision, currency, and format pattern.
The decimal places.
The currency info.
The format string.
Contains configuration for currency format strings, including decimal precision, currency symbol, and format pattern variations.
Number of decimal places to display in the formatted value.
The decimal places.
Currency information including symbol and culture for this format.
The currency info.
Collection of format string patterns for different numeric scenarios (positive, negative, zero).
The format strings.
Initializes a new instance of the class with specified decimal precision, currency, and format pattern variations.
The decimal places.
The currency info.
The format strings.
Contains configuration for date format strings, including the culture used for date formatting.
Culture that defines the date formatting patterns and localized text.
The culture.
Initializes a new instance of the class with the specified culture.
The culture.
Marker interface for format string info types that belong to specific categories such as Currency, Date, or Number.
Provides configuration for number formatting, specifying decimal places and thousand separator usage.
Number of decimal places to display in the formatted value.
The decimal places.
Indicates whether thousand separators are included in the formatted output.
The use thousand separator.
Initializes a new instance of the class.
The decimal places.
The use thousand separator.
Provides configuration for percentage formatting, specifying decimal places for percent values.
Number of decimal places to display after the percentage value.
The decimal places.
Initializes a new instance of the class.
The decimal places.
Provides configuration for scientific notation formatting, specifying decimal places in exponential display.
Number of decimal places to display in the mantissa of the scientific notation.
The decimal places.
Initializes a new instance of the class.
The decimal places.
Provides configuration for culture-specific special formats like zip codes and phone numbers.
Culture used to determine region-specific formatting rules for special formats.
The culture.
Initializes a new instance of the class.
The culture.
Provides configuration for time formatting with culture-specific time patterns.
Culture used to determine time format patterns like hour, minute, and second display.
The culture.
Initializes a new instance of the class.
The culture.
Thrown when a cell format string cannot be parsed or contains invalid syntax.
Initializes a new instance of the class.
Defines a named special format with its corresponding format string pattern.
Display name identifying this special format, such as "Zip Code" or "Phone Number".
The name.
Format pattern applied to cell values when this special format is used.
The format string.
Initializes a new instance of the class.
The name.
The format string.
Encapsulates a single undoable/redoable command executed on a workbook, preserving state for history operations.
Display name of the command for UI presentation in undo/redo lists.
The name of the command.
Manages undo/redo stacks for workbook modifications, tracking command execution and enabling history navigation.
The default depth of the workbook history.
Indicates whether the undo stack contains actions available to reverse.
The value indicating whether undo can be performed.
Indicates whether the redo stack contains actions available to reapply.
The value indicating whether redo can be performed.
Maximum number of actions retained in the undo stack before oldest entries are discarded.
The depth of the history.
Indicates whether multiple commands are being batched into a single undoable action via BeginUndoGroup/EndUndoGroup.
The value indicating whether the history is currently recording an undo group.
Controls whether commands are recorded in the undo/redo stacks; when disabled, history is cleared and recording stops.
The value indicating whether history is enabled.
Workbook instance whose modification history is tracked by this history manager.
The workbook.
Starts batching subsequent commands into a single composite action that will undo/redo together.
Completes the current undo group and commits the batched commands as a single history entry.
Aborts the current undo group and reverts all commands executed within it.
Reverses the most recent action from the undo stack and returns whether the operation succeeded.
The value indicating whether the undo was successfully performed.
Reapplies the most recently undone action from the redo stack and returns whether the operation succeeded.
The value indicating whether the redo was successfully performed.
Removes all actions from both undo and redo stacks, resetting history to empty.
Raised before a new history record begins recording, signaling the start of an undo group.
Invokes the RecordExecuting event when history recording starts.
Raised after a history record is committed to the undo stack, providing the recorded action details.
Invokes the RecordExecuted event after committing a history action.
The history action.
This parameter is not used and is reserved for future use.
Raised before an undo operation begins, providing the action about to be reversed.
Invokes the UndoExecuting event before reversing a history action.
The history action.
Raised after an undo operation completes, providing the action that was reversed.
Invokes the UndoExecuted event after completing an undo operation.
The history action.
Raised before a redo operation begins, providing the action about to be reapplied.
Invokes the RedoExecuting event before reapplying a history action.
The history action.
Raised after a redo operation completes, providing the action that was reapplied.
Invokes the RedoExecuted event after completing a redo operation.
The history action.
Raised when all history entries are removed from the undo and redo stacks.
Invokes the Cleared event after removing all history entries.
Groups one or more workbook changes into a composite undoable/redoable action with associated metadata.
User-facing description shown in undo/redo UI lists to identify this action.
The display text.
Collection of individual command changes executed as part of this composite action.
The changes.
Sheet that was active when this action was recorded, restored during undo/redo operations.
The active sheet.
Provides data for workbook history events, carrying the history action being processed.
History action being executed, undone, or redone in the current operation.
The history action.
Initializes a new instance of the class.
The history action.
Provides data for the RecordExecuted event, including merge state information for the recorded action.
Reserved for future use; currently not utilized to indicate action merge operations.
The merged state.
Initializes a new instance of the class.
The history action.
This parameter is not used and is reserved for future use.
Defines the positioned rectangular bounds of a cell for rendering and hit-testing operations.
Zero-based row position of this cell in the worksheet grid.
The index of the row.
Zero-based column position of this cell in the worksheet grid.
The index of the column.
Combined row and column coordinates identifying this cell's position in the worksheet.
The index.
Indicates whether this cell is merged and its role within the merged region (top-left, other, or not merged).
The merge state of the cell.
Initializes a new instance of the class.
Index of the row.
Index of the column.
The rectangle.
The merge.
Converts the cell position to a string representation in the format "(row, column)".
A that represents the current .
Compares this cell layout box with another based on cell position (row and column index).
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Generates a hash code based on the cell's combined row and column index.
A hash code for the current .
Initializes a new instance of the CellRotationProperties class with the specified properties.
The rotation angle in degrees.
The height of the cell.
Indicates whether the cell has outer borders.
The font properties for the cell.
Defines the positioned rectangular bounds of an entire column for rendering and hit-testing operations.
Zero-based position of this column in the worksheet grid.
The index of the column.
Initializes a new instance of the class.
Index of the column.
The rectangle.
Compares this column layout box with another based on column index.
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Generates a hash code based on the column index.
A hash code for the current .
Converts the column layout box to a string showing its index and bounding rectangle.
A that represents the current .
Gets the value indicating if the layer supports diagonal borders.
The value indicating if the layer supports diagonal borders.
Initializes a new instance of the class.
Updates the horizontal borders.
The update context.
Updates the bottom borders in row.
Type of the pane.
Index of the row.
The borders.
The update context.
The get Y coordinate.
Updates the vertical borders.
The update context.
Updates the right borders in column.
Type of the pane.
Index of the column.
The borders.
The update context.
The get X coordinate.
Updates the diagonal borders.
The update context.
Computes if the given border have to be shown.
The border.
True if the border have to be shown.
Sets the line properties for border.
The line used to show the border.
The cell border properties.
The update context.
Translates and scales the UI elements of the layer.
The update context.
Gets the name.
The name.
Updates the UI.
The update context.
Translates and scales a point.
The point.
Type of the viewport pane.
The update context.
The translated and scaled point.
Scales the specified size.
The size to scale.
The update context.
The scaled size.
Scales the specified point.
The point.
The update context.
The scaled point.
Scales the specified value.
The value.
The update context.
Scaled value.
Translates the specified point.
The point.
Type of the viewport pane.
The update context.
The translated point.
Translates the specified rectangle.
The rectangle.
Type of the viewport pane.
The update context.
The translated rectangle.
Gets the name.
The name.
Gets the sheet viewport.
The sheet viewport.
Gets the scale factor.
The scale factor.
Gets the scale transform.
The scale transform.
Translates the specified point.
The point.
Type of the viewport pane.
The translated point.
Translates the specified rectangle.
The rectangle.
Type of the viewport pane.
The translated rectangle.
Gets the name.
The name.
Determines whether this border should be merged with an adjacent border
in a compressed list. Rotated borders are never merged because their
line geometry depends on individual cell positions.
A list that merges consecutive entries into ranges
using an explicit merge predicate ()
instead of relying on .
The name of the grid lines layer.
The name of the grid lines outline layer.
The name of the cell fill layer.
The name of the cell borders layer.
The name of the cell values layer.
The name of the shapes layer.
The name of the notes layer.
The name of the comments layer.
The name of the row heading margin layer.
The name of the column heading margin layer.
The name of the header/footer layer.
The name of the bars conditional formatting layer.
The name of the icons conditional formatting layer.
The name of the bars conditional formatting layer.
Gets the worksheet layout.
The worksheet layout.
Gets the worksheet.
The worksheet.
Gets the current theme.
The current theme.
Gets the cell index to hyperlink info.
The cell index to hyperlink info.
Gets the cell index to hyperlink area.
The cell index to hyperlink area.
Gets the visible row boxes.
The visible row boxes.
Gets the visible column boxes.
The visible column boxes.
Gets the layout boxes of the cells which are currently visible.
The layout boxes of the cells which are currently visible.
Gets the visible pictures.
The visible pictures.
Initializes the caches.
Initializes the cell values.
Gets the previous and next non empty and non merged cells.
The cell box.
The update context.
The previous cell box.
The next cell box.
Initializes the previous and next non empty and non merged cells.
Initializes the hyperlinks.
Initializes the cell font properties.
Initializes the property cache.
The type of the T.
The property.
The cell index to property value.
The old cell index to property value.
Initializes the cell content sizes.
Initializes the cell clippings.
Initializes the cell actual bounding rectangle by horizontal alignment.
Gets the visible row layout box.
Index of the row.
The visible row layout box.
Gets the visible column layout box.
Index of the column.
The visible column layout box.
Gets the visible cell box.
The index.
The visible cell box.
Gets the visible cell box.
Index of the row.
Index of the column.
The visible cell box.
Gets the actual bounding rectangle by content alignment.
The cell box.
The actual bounding rectangle.
Gets the cell clipping.
The cell box.
The cell clipping rectangle.
Gets the size of the cell content.
The cell box.
The size of the cell content.
Gets the indent property value.
Index of the cell.
The indent.
Gets the previous and the next non empty and non merged cells.
Index of the cell.
The previous cell box.
The next cell box.
Gets the shape which contains a given point of the layout if there is such.
The point.
Returns a shape if such is found, otherwise returns null.
Provides methods for calculating the scale factor required to fit worksheet content into a specified number of pages during printing or PDF export.
Calculates the maximum scale factor for the worksheet to fit within the page counts specified by and .
The worksheet.
The resulting scale factor.
Calculates the maximum scale factor for the specified ranges to fit within the page counts specified by and .
The worksheet.
All the ranges that will be included in the page.
The resulting scale factor.
Calculates the scaled size of repeated rows and columns for a specific range, returning zero if the range starts before the repeated area.
Abstract base for positioned rectangular regions in worksheet layout, providing bounds for rendering calculations.
Horizontal position of the left edge of this layout box in layout coordinates.
The position of the box according to the x-axis.
Vertical position of the top edge of this layout box in layout coordinates.
The position of the box according to the y-axis.
Horizontal extent of this layout box in layout units.
The width of the box.
Vertical extent of this layout box in layout units.
The height of the box.
Combined width and height dimensions of this layout box.
The size of the box.
Complete rectangular bounds with rounded coordinates for rendering precision.
The bounding rectangle.
Converts the layout box to a string showing its bounding rectangle coordinates.
A that represents the current .
Provides utility methods for calculating cell content sizes, column widths, and layout boxes within a worksheet.
Calculates the size required to render the content of the specified cell, accounting for text wrapping and formatting.
The worksheet.
Index of the cell.
The size of the cell content.
Calculates the size required to render the content of the cell at the specified row and column, accounting for text wrapping and formatting.
The worksheet.
Index of the row.
Index of the column.
The size of the cell content.
Calculates the positioned layout box for the specified cell, handling merged cell regions when present.
The worksheet.
Index of the cell.
The cell layout box.
Calculates the positioned layout box for the cell at the specified row and column, handling merged cell regions when present.
The worksheet.
Index of the row.
Index of the column.
The cell layout box.
Represents a viewport pane within a worksheet view, defining a rectangular region and its visible cell range.
Gets or sets the rectangle defining this pane's position and size in document coordinates.
The rect.
Gets or sets the bounding rectangle defining this pane's position and size in view coordinates.
The bounding rect.
Gets or sets the cell range currently visible within this viewport pane.
The visible range.
Gets the type of this viewport pane, indicating its position relative to frozen rows and columns.
The type of the viewport pane.
Gets whether this pane has zero width or height.
The is empty.
Initializes a new with the specified type.
Type of the viewport pane.
Initializes a new with the specified rectangle and type.
The rect.
Type of the viewport pane.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Defines viewport pane types indicating position relative to frozen rows and columns.
The top-left pane above and left of frozen rows and columns.
The top-right pane above frozen rows, scrollable horizontally.
The bottom-left pane left of frozen columns, scrollable vertically.
The bottom-right pane, scrollable both horizontally and vertically.
Represents a positioned rectangular layout box for a worksheet row with its calculated dimensions.
Gets the zero-based index of the row represented by this layout box.
The index of the row.
Initializes a new with the specified row index and bounding rectangle.
Index of the row.
The rectangle.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Returns a that represents the current
.
A that represents the current .
Manages the visible area and frozen panes of a worksheet, translating between document coordinates and view coordinates.
Gets the total visible width across all viewport panes.
The width.
Gets the total visible height across all viewport panes.
The height.
Gets the count of non-empty viewport panes created by frozen rows or columns.
The viewport panes count.
Gets the array of non-empty viewport panes created by frozen rows or columns.
The viewport panes.
Gets or sets the of the specified type.
The viewport pane.
Gets the viewport pane from viewport point.
The view point.
The viewport pane.
Determines which viewport pane contains the specified point in document coordinates.
The document point.
The viewport pane.
Converts a point from view coordinates to document coordinates, accounting for frozen panes and scaling.
The view point point.
The document point.
Converts a point from document coordinates to view coordinates, accounting for frozen panes and scaling.
The document point.
The view point.
Translates the specified point to viewport coordinates relative to the containing pane.
The point.
Type of the pane that contains the point.
The translated point.
Determines whether the viewport contains the specified bounding rectangle within any pane.
The bounding rectangle.
Determines whether the viewport contains the specified point within any pane.
The point.
True if contains the point.
Gets the top-left corner point of the first non-empty viewport pane.
Determines whether the viewport contains the specified column index in any visible range.
Index of the column.
True if contains the column index.
Determines whether the viewport contains the specified row index in any visible range.
Index of the row.
True if contains the row index.
Determines whether the viewport contains the specified cell index in any visible range.
Index of the cell.
True if contains the cell index.
Determines whether the viewport contains the cell at the specified row and column index in any visible range.
Index of the row.
Index of the column.
Gets the visible range of the viewport pane that contains the specified cell index.
Index of the cell.
The cell range.
Gets the visible range of the viewport pane that contains the cell at the specified row and column.
Index of the row.
Index of the column.
Gets the viewport pane that contains the specified cell index.
The index.
The viewport pane containing cell.
Gets the topmost viewport pane that contains the specified column index.
Index of the column.
The viewport pane containing column index.
Gets the leftmost viewport pane that contains the specified row index.
Index of the row.
The viewport pane containing row index.
Determines whether the specified is equal
to the current .
The object to compare with the current object.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Implements the equals operator.
The first value.
The second value.
The result of the operator.
Implements the less operator.
The first value.
The second value.
The result of the operator.
Gets or sets the sizes of the repeated rows and/or columns for the specific page. If the worksheet has repeated rows and columns set
but this specific page does not (e.g. this is the first page), the size will be 0.
Gets or sets the rectangle which denotes the place of the content in the printed page. The content includes the headings and the repeated
rows and columns, so their size is included in the size of the PageContentBox. The left and top are determined by the margins of the page and
the offset necessary to achieve centering of the page.
Gauss-Jordan elimination method to solve Ax = b for x.
A real-valued matrix.
The real-valued vector.
The maximum amount of iterations.
The tolerance.
Gauss-Jordan elimination method solving the Ax=b inear set of equations.
A real-valued matrix.
A real-valued vector.
http://en.wikipedia.org/wiki/Gauss-Jordan
Triangulation of matrix A using LU decomposition on the basis of the Crout algorithm with pivoting.
The real-valued matrix.
The real-valued vector.
Returns the LU Matrix Inverse.
Returns the LU decomposition of the given matrix.
A matrix.
http://en.wikipedia.org/wiki/LU_decomposition
Extension methods
Return whether the number is zero (in an sense).
Calculates the modulus of the complex number in polar form.
The modulus of the complex number in polar form.
Calculates the angle in radians for the complex number in polar form.
The angle in radians for the complex number in polar form.
Inverts the sign of the imaginary number part.
Inverts the sign of the real number part.
Returns whether the number is one (in an sense).
Returns whether the number is the imaginary unit.
Returns whether either one or both parts of the number is not a number (NaN).
Returns whether either one or both parts of the number is infinite ().
Returns whether the number is purely real.
Returns whether the number is purely real and negative.
Returns the conjugate of the number.
Gets the squared norm of the number.
Returns the (natural) exponent of the given number.
Returns the (natural) logarithm of the given number.
Returns the given number to a power.
Returns the given number to root.
The square of the given number.
The square root of the given number.
The norm of the given number.
The squared norm of the difference of the given numbers.
Parses the complex number in form of 'a + ib'. If the parsing fails an exception will be thrown.
The complex number to parse.
The parsed complex number.
Mathematical, physical and framework related constants.
The epsilon aka infinitesimal; a small value to compare floating numbers.
The Catalan number.
See http://en.wikipedia.org/wiki/Catalan_number .
The Euler constant.
See http://en.wikipedia.org/wiki/E_%28mathematical_constant%29 .
The Euler-Mascheroni constant.
See http://en.wikipedia.org/wiki/Euler_constant .
Glaisher-Kinkelin constant.
See http://en.wikipedia.org/wiki/Glaisher%E2%80%93Kinkelin_constant .
The golden ratio; (1+Sqrt[5])/2.
See http://en.wikipedia.org/wiki/Golden_ratio .
The inverse of the Euler constant; 1/[e].
The inverse of Pi; 1/[Pi].
The inverse of the square root of twice Pi; 1/Sqrt[2*Pi].
The inverse of the square root of Pi; 1/Sqrt[Pi].
The Khinchin constant.
See http://en.wikipedia.org/wiki/Khinchin_constant .
2^(-53)
2^(-1074)
The logorithm of E in base 2; log[2](e).
The logorithm of 2 in base e; log[e](2).
The logorithm of 10 in base e; log[e](10).
The logorithm of Pi in base e; log[e](10).
The well-know Pi constants.
This one has a higher precision than the .Net system one.
Pi over 180; Pi/180.
Pi over 2; [Pi]/2.
Pi over 4; [Pi]/4.
The square root of 1/2.
The square root of two.
The square root of two time Pi; Sqrt[2*Pi].
The square root of 3, divided by two; Sqrt[3]/2.
The square root of Pi; Sqrt[Pi].
The speed of light (in vacuum) in [m s^-1].
See http://en.wikipedia.org/wiki/Speed_of_light .
The Planck's constant in [J s = m^2 kg s^-1].
See http://en.wikipedia.org/wiki/Planck_constant .
The Planck length in [h_bar/(m_p*c_0)].
See http://en.wikipedia.org/wiki/Plancks_length .
The Newtonian constant in [m^3 kg^-1 s^-2].
See http://en.wikipedia.org/wiki/Gravitational_Constant .
The magnetic permeability (in vacuum) in [kg m s^-2 A^-2].
See http://en.wikipedia.org/wiki/Magnetic_Permeability .
The electric permittivity (in vacuum) in [s^4 kg^-1 A^2 m^-3].
See http://en.wikipedia.org/wiki/Electric_Permittivity .
Enumeration of supported area units.
International acre "uk_acre"
U.S. survey/statute acre "us_acre"
Square angstrom "ang2" or “ang^2"
Are "ar"
Square feet "ft2" or "ft^2"
Hectare "ha"
Square inches "in2" or "in^2"
Square light-year "ly2" or "ly^2"
Square meters "m2" or "m^2"
Morgen "Morgen"
Square miles "mi2" or "mi^2"
Square nautical miles "Nmi2" or "Nmi^2"
Square Pica "Picapt2", "Pica2", "Pica^2" or "Picapt^2"
Square yards "yd2" or "yd^2"
Returns the actual multiplier value corresponding to the given multiplier prefix.
The prefix.
Returns the abbreviation corresponding to the given multiplier prefix.
The prefix.
Returns the multiplier enumeration value corresponding to the given multiplier abbreviation.
The abbreviation.
Enumeration of supported distance units.
"m"
"mi"
"Nmi"
"in"
"ft"
"yd"
"ang"
"ell"
"ly"
"parsec" or "pc"
(1/72 inch) "Picapt" or "Pica"
(1/6 inch) "pica"
U.S survey mile (statute mile) "survey_mi"
Enumeration of supported energy units.
Joule "J"
Erg "e"
Thermodynamic calorie "c"
IT calorie "cal"
Electron volt "eV" or "ev"
Horse power per hour "HPh" or "hh"
Watt per hour "Wh" or "wh"
Foot pound "flb"
British thermal unit "BTU" or "btu"
Enumeration of supported force units.
Newton "N"
Dyne "dyn" or "dy"
Pound "lbf"
Pond "pond"
Enumeration of supported time units.
Enumeration of supported magnetism units.
Tesla "T"
Gauss "ga"
Enumeration of supported mass units.
Gram "g".
Slug "sg".
Pound mass (avoirdupois) "lbm".
Atomic mass unit "u".
Ounce mass (avoirdupois) "ozm".
Grain 'grain".
U.S. (short) undredweight "cwt" or "shweight".
Imperial hundredweight "uk_cwt" or "lcwt" or "hweight".
Stone "stone".
Ton "ton".
Imperial ton "uk_ton" or "LTON" or "brton".
Enumerates the supported prefix multiplier.
No multiplier.
Equals: 1E-18; Prefix: "a"
Equals: 0.01; Prefix: "c"
Equals: 0.1; Prefix: "d"
Equals: 10; Prefix: "da" or "e"
Equals: 1E+18; Prefix: "E"
Equals: 1E-15; Prefix: "f"
Equals: 1E+09; Prefix: "G"
Equals: 100; Prefix: "h"
Equals: 1000; Prefix: "k"
Equals: 1E+06; Prefix: "M"
Equals: 1E-06; Prefix: "u"
Equals: 1E-03; Prefix: "m"
Equals: 1E-09; Prefix: "n"
Equals: 1E+15; Prefix: "P"
Equals: 1E-12; Prefix: "p"
Equals: 1E+12; Prefix: "T"
Equals: 1E-24; Prefix: "y"
Equals: 1E+24; Prefix: "Y"
Equals: 1E-21; Prefix: "z"
Equals: 1E+21; Prefix: "Z"
Equals: 2^10 =1024; Prefix: "ki"
Equals: 2^20 = 1048576; Prefix: "Mi"
Equals: 2^30 = 1073741824; Prefix: "Gi"
Equals: 2^40 = 1099511627776; Prefix: ""Ti"
Equals: 2^50 = 1125899906842624; Prefix: ""Pi"
Equals: 2^60 = 1152921504606846976; Prefix: "Ei"
Equals: 2^70 = 1180591620717411303424; Prefix: "Zi"
Equals: 2^80 = 1208925819614629174706176; Prefix: "Yi"
Enumeration of supported power units.
Horse power "HP" or "h"
Pferdestärke "PS"
Watt "W" or "w"
Enumeration of supported pressure units.
Pascal "pa" or "p"
Atmosphere "atm" or "at"
Millimeters or mercury "mmHg"
Pounds per square inch "psi"
Torricelli unit "Torr"
Enumeration of supported speed units.
The admirality knot "admkn"
The knot "kn"
Meters per hour "m/h" or "m/hr"
Meters per second "m/s" or "m/sec"
Miles per hour "mph"
Enumeration of supported temperature units.
Celsius "C" or "cel"
Fahrenheit "F" or "fah"
Kelvin "K" or "kel"
Rankine "Rank"
Reaumur "Reau"
Enumeration of supported time units.
A year "yr"
A day "d" or "day"
An hour "hr"
A minute "mn" or "min"
A second "s" or "sec"
Enumeration of supported volume units.
Teaspoon "tsp"
Modern teaspoon "tspm"
Tablespoon "tbs"
Fluid ounce "oz"
Cup "cup"
U.S. pint "pt" (or "us_pt")
U.K. pint "uk_pt"
Quart "qt"
Imperial quart (U.K.) "uk_qt"
Gallon "gal"
Imperial gallon (U.K.) "uk_gal"
Liter "l" or "L" ("lt")
Cubic angstrom "ang3" or "ang^3"
U.S. oil barrel "barrel"
U.S. bushel "bushel"
Cubic feet "ft3" or "ft^3"
Cubic inch "in3" or "in^3"
Cubic light-year "ly3" or "ly^3"
Cubic meter "m3" or "m^3"
Cubic Mile "mi3" or "mi^3"
Cubic yard "yd3" or "yd^3"
Cubic nautical mile "Nmi3" or "Nmi^3"
Cubic Pica "Picapt3", "Picapt^3", "Pica3" or "Pica^3"
Gross Registered Ton "GRT" ("regton")
Measurement ton (freight ton) "MTON"
A list implementation geared towards functional programming.
The data type on which the list is based.
The empty functional list.
Initializes a new instance of the class.
The head.
The tail (list).
Initializes a new instance of the class.
The head.
Initializes a new instance of the class.
The first value.
The values.
Initializes a new instance of the class.
The source.
Gets the head of the list.
Gets a value indicating whether this instance is empty.
true if this instance is empty; otherwise, false.
Gets the tail of the list.
Prepends the given element to the given list.
The element to prepend.
The list or tail.
Appends the given list.
The other.
Prepends the specified element.
This mimics the '::' operator from F#.
The element.
Gets the enumerator.
Removes the specified element.
The element.
Returns a that represents this instance.
A that represents this instance.
This class contains all the Excel engineering functions.
Returns the modified Bessel function, which is equivalent to the Bessel function evaluated for purely imaginary arguments.
The value at which to evaluate the function.
The order of the Bessel function. If n is not an integer, it is truncated.
Returns the Bessel function.
The value at which to evaluate the function.
The order of the Bessel function. If n is not an integer, it is truncated.
Returns the modified Bessel function, which is equivalent to the Bessel functions evaluated for purely imaginary arguments.
The value at which to evaluate the function.
The order of the Bessel function. If n is not an integer, it is truncated.
Returns the Bessel function, which is also called the Weber function or the Neumann function.
The value at which to evaluate the function.
The order of the Bessel function. If n is not an integer, it is truncated.
Converts a binary number to decimal.
The binary number you want to convert. Number cannot contain more than 10 characters (10 bits).
The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Converts a binary number to hexadecimal.
The binary number you want to convert. Number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, BIN2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros).
Converts a binary number to hexadecimal.
The binary number you want to convert. Number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Converts a binary number to octal.
The binary number you want to convert. Number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, BIN2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros).
Converts a binary number to octal.
The binary number you want to convert. Number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Returns a bitwise 'AND' of two numbers.
Must be in decimal form and greater than or equal to 0.
Must be in decimal form and greater than or equal to 0.
Returns a number shifted left by the specified number of bits.
Must be an integer greater than or equal to 0.
Must be an integer.
Returns a bitwise 'OR' of two numbers.
Must be in decimal form and greater than or equal to 0.
Must be in decimal form and greater than or equal to 0.
Returns a number shifted right by the specified number of bits.
Must be an integer greater than or equal to 0.
Must be an integer.
Returns a bitwise 'XOR' of two numbers.
Must be greater than or equal to 0.
Must be greater than or equal to 0.
Converts real and imaginary coefficients into a complex number of the form x + yi or x + yj.
The real coefficient of the complex number.
The imaginary coefficient of the complex number.
The suffix for the imaginary component of the complex number. If omitted, suffix is assumed to be "i".
Only 'i' or 'j' is allowed for the imaginary number.
Converts a number from one measurement system to another. For example, CONVERT can translate a table of distances in miles to a table of distances in kilometers.
The value in from_units to convert.
The units for number.
The units for the result. .
Converts a decimal number to binary.
The decimal integer you want to convert. If number is negative, valid place values are ignored and DEC2BIN returns a 10-character (10-bit)
binary number in which the most significant bit is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
If the number should not be less than -512 and not bigger than 511 or if the number of characters to use cannot be less than one or if the number of characters to use cannot be more than ten.
Converts a decimal number to binary.
The decimal integer you want to convert. If number is negative, valid place values are ignored and DEC2BIN returns a 10-character (10-bit)
binary number in which the most significant bit is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, DEC2BIN uses the minimum number of characters necessary.
Places is useful for padding the return value with leading 0s (zeros).
If the number should not be less than -512 and not bigger than 511 or if the number of characters to use cannot be less than one or if the number of characters to use cannot be more than ten.
Converts a decimal number to hexadecimal.
The decimal integer you want to convert. If number is negative, places is ignored and DEC2HEX returns a 10-character (40-bit) hexadecimal number in which the most significant bit is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, DEC2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros)
Converts a decimal number to hexadecimal.
The decimal integer you want to convert. If number is negative, places is ignored and DEC2HEX returns a 10-character (40-bit) hexadecimal number in which the most significant bit is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Converts a decimal number to hexadecimal.
The decimal integer you want to convert. If number is negative, places is ignored and DEC2HEX returns a 10-character (40-bit) hexadecimal number in which the most significant bit is the sign bit.
The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, DEC2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros).
Converts a decimal number to hexadecimal.
The decimal integer you want to convert. If number is negative, places is ignored and DEC2HEX returns a 10-character (40-bit) hexadecimal number in which the most significant bit is the sign bit.
The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Tests whether the value is equal to zero. Returns 1 if number = 0, returns 0 otherwise.
A number.
Tests whether two values are equal. Returns 1 if number1 = number2; returns 0 otherwise.
Use this function to filter a set of values. For example, by summing several DELTA functions you calculate
the count of equal pairs. This function is also known as the Kronecker Delta function.
A number.
A number.
Returns the error function integrated between lower_limit and upper_limit.
The lower limit of the integration.
The upper bound for integrating ERF. If omitted, ERF integrates between zero and lower_limit.
Returns the error function integrated between zero and the given upper_limit.
The ERF.Precise function of Excel returns a more accurate value but this difference has to be implemented in consumers of this library.
This function will return the most precise value possible and is, hence, the ERF.PRECISE engineering function. To get the ERF function just truncate the returned value.
The upper_limit.
Returns 1 if number ≥ 0; returns 0 (zero) otherwise.
The number.
Returns 1 if number ≥ step; returns 0 (zero) otherwise. This is sometimes called the Heaviside step function, the Kronecker delta being the derivative of this function within the context of distributions.
A number.
A step or threshold from which on the result is one.
Converts a hexadecimal number to binary.
The hexadecimal number you want to convert. Number cannot contain more than 10 characters. The most significant bit of number is the sign bit (40th bit from the right). The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, HEX2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros).
Converts a hexadecimal number to binary.
The hexadecimal number you want to convert. Number cannot contain more than 10 characters. The most significant bit of number is the sign bit (40th bit from the right). The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Converts a hexadecimal number to decimal.
The hexadecimal number you want to convert. Number cannot contain more than 10 characters (40 bits). The most significant bit of number is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Converts a hexadecimal number to octal.
The hexadecimal number you want to convert. Number cannot contain more than 10 characters.
The most significant bit of number is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, HEX2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros).
Converts a hexadecimal number to octal.
The hexadecimal number you want to convert. Number cannot contain more than 10 characters.
The most significant bit of number is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Returns the absolute value (modulus) of a complex number in x + yi or x + yj text format.
A complex number.
Ieturns the imaginary coefficient of a complex number in x + yi or x + yj text format.
A complex number for which you want the imaginary coefficient.
Returns the argument of the polar representation of the specified complex number.
The returned angle is in radians.
A complex number.
Returns the complex conjugate of a complex number in x + yi or x + yj text format.
A complex number.
Returns the cosine of a complex number in x + yi or x + yj text format.
A complex number.
Returns the hyperbolic cosine of a complex number in x+yi or x+yj text format.
A complex number.
Returns the cotangent of a complex number in x+yi or x+yj text format.
A complex number.
Returns the hyperbolic secant of a complex number in x+yi or x+yj text format.
A complex number.
Returns the hyperbolic cosecant of a complex number in x+yi or x+yj text format.
A complex number.
Returns the quotient of two complex numbers.
A complex number.
A complex number.
Returns the exponential of a complex number.
A complex number.
Returns the natural logarithm of a complex number.
A complex number.
Returns the base-10 logarithm of a complex number.
A complex number.
Returns the base-10 logarithm of a complex number.
A complex number.
Returns a complex number in x + yi or x + yj text format raised to a power.
A complex number you want to raise to a power.
The power to which you want to raise the complex number.
Returns the product of two complex numbers
A complex number.
A complex number.
Returns the real coefficient of a complex number in x + yi or x + yj text format.
A complex number.
Returns the secant of a complex number in x+yi or x+yj text format.
A complex number.
Returns the hyperbolic secant of a complex number in x+yi or x+yj text format.
A complex number.
Returns the sine of a complex number in x + yi or x + yj text format.
A complex number.
Returns the hyperbolic sine of a complex number in x+yi or x+yj text format.
A complex number.
Returns the square root of a complex number in x+yi or x+yj text format.
A complex number.
Returns the difference between two complex numbers
A complex number.
A complex number.
Returns the sum of two complex numbers
A complex number.
A complex number.
Returns the tangent of a complex number in x+yi or x+yj text format.
A complex number.
Converts an octal number to binary.
The octal number you want to convert. Number may not contain more than 10 characters. The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, OCT2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros).
Converts an octal number to binary.
The octal number you want to convert. Number may not contain more than 10 characters. The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Converts an octal number to decimal.
TThe octal number you want to convert. Number may not contain more than 10 octal characters (30 bits).
The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
Converts an octal number to hexadecimal.
The octal number you want to convert. Number may not contain more than 10 octal characters (30 bits).
The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
The number of characters to use. If places is omitted, OCT2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros).
Converts an octal number to hexadecimal.
The octal number you want to convert. Number may not contain more than 10 octal characters (30 bits).
The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation.
A logical value specifying whether to switch to straight-line depreciation when depreciation is greater than the declining balance calculation.
Switches to straight-line depreciation when depreciation is greater than the declining balance calculation.
Does not switch to straight-line depreciation even when the depreciation is greater than the declining balance calculation.
Common financial, actuarial and investment functions.
Utilities related to counting days and the diverse convention around it.
See for example http://en.wikipedia.org/wiki/Day_count_convention.
Defines the common methods of the day counting modules for each .
Day count convention for calculating interest accrued on U.S. Treasury bills and other money market instruments.
Uses actual number of days in a month and 360 days in a year for calculating interest payments.
Each month is treated normally and the year is assumed to be 365 days.
"Actual/Actual AFB/FBF Master Agreement" has the DiY equal to 365 (if the calculation period does not contain 29 February) or 366 (if 29 February falls within the Calculation Period or Compounding Period).
The 360-day calendar is a method of measuring durations used in financial markets, in computer models, in ancient literature, and in prophetic literary genres.
It is based on merging the three major calendar systems into one complex clock, with the 360-day year as the average year of the lunar and the solar: 365.24 (solar) + 354.37(lunar) = 719.61 ÷ 2 = 359.8 days rounded to 360.
It is a simplification to a 360-day year, consisting of 12 months of 30 days each. To derive such a calendar from the standard Gregorian calendar, certain days are skipped.
Calculational utilities.
Aggregates in step of one from start to end using the given collector function.
The start.
The end.
The collector.
The seed.
The well-know Newton iterator.
The underlying function.
The argumentx.
The count.
The required precision.
Returns the accrued interest for a security that pays periodic interest.
The security's issue date.
The security's first interest date.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer..
The security's annual coupon rate.
The security's par value.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the accrued interest for a security that pays interest at maturity.
The security's issue date.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer..
The security's annual coupon rate.
The security's par value.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the depreciation for each accounting period. This function is provided for the French accounting system.
If an asset is purchased in the middle of the accounting period, the prorated depreciation is taken into account.
The function is similar to AMORLINC, except that a depreciation coefficient is applied in the calculation depending on the life of the assets.
The cost of the asset.
The date of the purchase of the asset.
The date of the end of the first period.
The salvage value at the end of the life of the asset.
The period.
The rate of depreciation.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the depreciation for each accounting period.
This function is provided for the French accounting system.
If an asset is purchased in the middle of the accounting period, the prorated depreciation is taken into account.
The cost of the asset.
The date of the purchase of the asset.
The date of the end of the first period.
The salvage value at the end of the life of the asset.
The period.
The rate of depreciation.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the depreciation for each accounting period.
This function is provided for the French accounting system.
If an asset is purchased in the middle of the accounting period, the prorated depreciation is taken into account.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the number of days from the beginning of a coupon period until its settlement date.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the number of days from the settlement date to the next coupon date.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns a number that represents the next coupon date after the settlement date.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the number of coupons payable between the settlement date and maturity date.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the previous coupon date before the settlement date.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the cumulative interest paid between two periods.
The interest rate.
The total number of payment periods.
The present value.
The first period in the calculation. Payment periods are numbered beginning with 1.
The last period in the calculation.
The timing of the payment:
-
0:
Payment at the end of the period.
-
1:
Payment at the beginning of the period.
Returns the cumulative principal paid on a loan between two periods.
The interest rate.
The total number of payment periods.
The present value.
The first period in the calculation. Payment periods are numbered beginning with 1.
The last period in the calculation.
The timing of the payment:
-
0:
Payment at the end of the period.
-
1:
Payment at the beginning of the period.
Returns the depreciation of an asset for a specified period by using the fixed-declining balance method.
The initial cost of the asset.
The value at the end of the depreciation (sometimes called the salvage value of the asset).
The number of periods over which the asset is being depreciated (sometimes called the useful life of the asset).
The period for which you want to calculate the depreciation. Period must use the same units as life.
The number of months in the first year. If month is omitted, it is assumed to be 12.
Returns the depreciation of an asset for a specified period using the double-declining balance method.
The initial cost of the asset.
The value at the end of the depreciation (sometimes called the salvage value of the asset). This should be positive or zero otherwise an exception will be thrown.
The number of periods over which the asset is being depreciated.
The period for which you want to calculate the depreciation.
It's crucial to use for the and the parameters the same unit (years, days... and so on). If not a result will be returned but obviously have an incorrect meaning.
Returns the discount rate for a security.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The pr.
The security's redemption value per $100 face value.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Converts a dollar price, expressed as a fraction, into a dollar price, expressed as a decimal number.
The fractional dollar.
The integer to use in the denominator of a fraction.
Converts a dollar price, expressed as a decimal number, into a dollar price, expressed as a fraction.
The decimal dollar.
The integer to use in the denominator of a fraction.
Returns the Macauley duration for an assumed par value of $100.
Duration is defined as the weighted average of the present value of the cash flows and is used as a measure of a bond price's response to changes in yield.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's annual coupon rate.
The security's annual yield.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the effective annual interest rate.
The nominal interest rate.
The number of compounding periods per year.
Returns the future value of an investment based on periodic, constant payments and a constant interest rate.
Rate is the interest rate per period.
Nper is the total number of payment periods in an annuity.
Pmt is the payment made each period; it cannot change over the life of the annuity. Typically, pmt contains principal and interest but no other fees or taxes. If pmt is omitted, you must include the pv argument.
Pv is the present value, or the lump-sum amount that a series of future payments is worth right now. If pv is omitted, it is assumed to be 0 (zero), and you must include the pmt argument.
The due parameter indicates when payments are due.
Returns the future value of an initial principal after applying a series of compound interest rates.
The present value.
An array of interest rates to apply.
Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate.
Rate is the interest rate per period.
Per is the period for which you want to find the interest and must be in the range 1 to nper
Nper is the total number of payment periods in an annuity.
Pv is the present value, or the lump-sum amount that a series of future payments is worth right now.
Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0).
The due parameter indicates when payments are due.
Returns the internal rate of return for a series of cash flows represented by the numbers in values. These cash flows do not have to be even, as they would be for an annuity. However, the cash flows must occur at regular intervals, such as monthly or annually. The internal rate of return is the interest rate received for an investment consisting of payments (negative values) and income (positive values) that occur at regular periods.
Values is an array or a reference to cells that contain numbers for which you want to calculate the internal rate of return.
- Values must contain at least one positive value and one negative value to calculate the internal rate of return.
-
IRR uses the order of values to interpret the order of cash flows. Be sure to enter your payment and income values in the sequence you want.
- If an array or reference argument contains text, logical values, or empty cells, those values are ignored.
Guess is a number that you guess is close to the result of IRR.
- An iterative technique is used for calculating IRR. Starting with guess, IRR cycles through the calculation until the result is accurate within 0.00001 percent. If IRR can't find a result that works after 20 tries, the #NUM! error value is returned.
- In most cases you do not need to provide guess for the IRR calculation. If guess is omitted, it is assumed to be 0.1 (10 percent).
- If IRR gives the #NUM! error value, or if the result is not close to what you expected, try again with a different value for guess.
Calculates the interest paid during a specific period of an investment.
The interest rate for the investment.
The period for which you want to find the interest, and must be between 1 and nper.
The total number of payment periods for the investment.
The present value of the investment. For a loan, pv is the loan amount.
Returns the interest rate for a fully invested security.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The amount invested in the security.
The amount to be received at maturity.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the Macauley modified duration for a security with an assumed par value of $100.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's annual coupon rate.
The security's annual yield.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the modified internal rate of return for a series of periodic cash flows. MIRR considers both the cost of the investment and the interest received on reinvestment of cash.
Values is an array or a reference to cells that contain numbers. These numbers represent a series of payments (negative values) and income (positive values) occurring at regular periods.
-
Values must contain at least one positive value and one negative value to calculate the modified internal rate of return. Otherwise, MIRR returns the #DIV/0! error value.
-
If an array or reference argument contains text, logical values, or empty cells, those values are ignored; however, cells with the value zero are included.
Finance-rate is the interest rate you pay on the money used in the cash flows.
Reinvest-rate is the interest rate you receive on the cash flows as you reinvest them.
Returns the number of periods for an investment based on periodic, constant payments and a constant interest rate.
Rate is the interest rate per period.
Pmt is the payment made each period; it cannot change over the life of the annuity. Typically, pmt contains principal and interest but no other fees or taxes.
The Pv is the present value, or the lump-sum amount that a series of future payments is worth right now.
Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0).
The due parameter indicates when payments are due.
Returns the net present value of an investment by using a discount rate and a series of future payments (negative values) and income (positive values).
Rate is the rate of discount over the length of one period.
The array of payments equally spaced in time and occurring at the end of a period.
Returns the annual nominal interest rate.
The effective interest rate.
The number of compounding periods per year.
Returns the price per $100 face value of a security with an odd first period.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's issue date.
The security's first coupon date.
The security's interest rate.
The security's annual yield.
The security's redemption value per $100 face value.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the yield of a security with an odd first period.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's issue date.
The security's first coupon date.
The security's interest rate.
The security's price.
The security's redemption value per $100 face value.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the price per $100 face value of a security with an odd last period.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's last coupon date.
The security's interest rate.
The security's annual yield.
The security's redemption value per $100 face value.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the yield of a security with an odd last period.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The last interest.
The security's interest rate
The security's price.
The security's redemption value per $100 face value.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the number of periods required by an investment to reach a specified value.
Rate is the interest rate per period.
Pv is the present value of the investment.
Fv is the desired future value of the investment.
Calculates the payment for a loan based on constant payments and a constant interest rate.
Rate is the interest rate per period.
Nper is the total number of payments for the loan.
Pv is the present value, or the total amount that a series of future payments is worth now; also known as the principal.
Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (zero), that is, the future value of a loan is 0.
The due parameter indicates when payments are due.
Returns the payment on the principal for a given period for an investment based on periodic, constant payments and a constant interest rate.
Rate is the interest rate per period.
Per is the period for which you want to find the interest and must be in the range 1 to nper
Nper is the total number of payment periods in an annuity.
Pv is the present value, or the lump-sum amount that a series of future payments is worth right now.
Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0).
The due parameter indicates when payments are due.
Returns the present value of an investment. The present value is the total amount that a series of future payments is worth now. For example, when you borrow money, the loan amount is the present value to the lender.
Rate is the interest rate per period. For example, if you obtain an automobile loan at a 10 percent annual interest rate and make monthly payments, your interest rate per month is 10%/12, or 0.83%. You would enter 10%/12, or 0.83%, or 0.0083, into the formula as the rate.
Nper is the total number of payment periods in an annuity. For example, if you get a four-year car loan and make monthly payments, your loan has 4*12 (or 48) periods. You would enter 48 into the formula for nper.
Pmt is the payment made each period and cannot change over the life of the annuity. Typically, pmt includes principal and interest but no other fees or taxes. For example, the monthly payments on a $10,000, four-year car loan at 12 percent are $263.33. You would enter -263.33 into the formula as the pmt. If pmt is omitted, you must include the fv argument.
Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0). For example, if you want to save $50,000 to pay for a special project in 18 years, then $50,000 is the future value. You could then make a conservative guess at an interest rate and determine how much you must save each month. If fv is omitted, you must include the pmt argument.
The due parameter indicates when payments are due.
Returns the price per $100 face value of a security that pays periodic interest.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's annual coupon rate.
The security's annual yield.
The security's redemption value per $100 face value.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the price per $100 face value of a discounted security
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's discount rate.
The security's redemption value per $100 face value.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the interest rate per period of an annuity. RATE is calculated by iteration and can have zero or more solutions. If the successive results of RATE do not converge to within 0.0000001 after 20 iterations, RATE returns the #NUM! error value.
Nper is the total number of payment periods in an annuity.
Pmt is the payment made each period and cannot change over the life of the annuity. Typically, pmt includes principal and interest but no other fees or taxes. If pmt is omitted, you must include the fv argument
Pv is the present value — the total amount that a series of future payments is worth now.
Fv is the future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0).
The due parameter indicates when payments are due.
Guess is your guess for what the rate will be.
-
If you omit guess, it is assumed to be 10 percent.
- If RATE does not converge, try different values for guess. RATE usually converges if guess is between 0 and 1.
Returns an equivalent interest rate for the growth of an investment.
Nper is the number of periods for the investment.
Pv is the present value of the investment.
Fv is the future value of the investment.
Returns the amount received at maturity for a fully invested security.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The amount invested in the security.
The security's discount rate.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the straight-line depreciation of an asset for one period.
Cost is the initial cost of the asset.
Salvage is the value at the end of the depreciation (sometimes called the salvage value of the asset).
Life is the number of periods over which the asset is depreciated (sometimes called the useful life of the asset).
Returns the sum-of-years' digits depreciation of an asset for a specified period.
Cost is the initial cost of the asset.
Salvage is the value at the end of the depreciation (sometimes called the salvage value of the asset).
Life is the number of periods over which the asset is depreciated (sometimes called the useful life of the asset).
Per is the period and must use the same units as life.
Returns the bond-equivalent yield for a Treasury bill.
The Treasury bill's settlement date. The security settlement date is the date after the issue date when the Treasury bill is traded to the buyer.
The Treasury bill's maturity date. The maturity date is the date when the Treasury bill expires.
The Treasury bill's discount rate.
Returns the price per $100 face value for a Treasury bill.
The Treasury bill's settlement date. The security settlement date is the date after the issue date when the Treasury bill is traded to the buyer.
The Treasury bill's maturity date. The maturity date is the date when the Treasury bill expires.
The Treasury bill's discount rate.
Returns the yield for a Treasury bill.
The Treasury bill's settlement date. The security settlement date is the date after the issue date when the Treasury bill is traded to the buyer.
The Treasury bill's maturity date. The maturity date is the date when the Treasury bill expires.
The Treasury bill's price per $100 face value.
Returns the depreciation of an asset for a specified or partial period by using a declining balance method.
The initial cost of the asset.
The value at the end of the depreciation (sometimes called the salvage value of the asset). This value can be 0.
The number of periods over which the asset is depreciated (sometimes called the useful life of the asset).
The starting period for which you want to calculate the depreciation. Start_period must use the same units as life.
The ending period for which you want to calculate the depreciation. End_period must use the same units as life.
The rate at which the balance declines. If factor is omitted, it is assumed to be 2 (the double-declining balance method). Change factor if you do not want to use the double-declining balance method. For a description of the double-declining balance method, see .
A logical value specifying whether to switch to straight-line depreciation when depreciation is greater than the declining balance calculation:
-
0:
switches to straight-line depreciation when depreciation is greater than the declining balance calculation
-
1:
does not switch to straight-line depreciation even when the depreciation is greater than the declining balance calculation.
Returns the depreciation of an asset for a specified or partial period by using a declining balance method.
The initial cost of the asset.
The value at the end of the depreciation (sometimes called the salvage value of the asset). This value can be 0.
The number of periods over which the asset is depreciated (sometimes called the useful life of the asset).
The starting period for which you want to calculate the depreciation. Start_period must use the same units as life.
The ending period for which you want to calculate the depreciation. End_period must use the same units as life.
The rate at which the balance declines. If factor is omitted, it is assumed to be 2 (the double-declining balance method). Change factor if you do not want to use the double-declining balance method. For a description of the double-declining balance method, see .
Returns the depreciation of an asset for a specified or partial period by using a declining balance method.
The cost.
The salvage.
The life.
The first period in the calculation. Payment periods are numbered beginning with 1.
The last period in the calculation.
Returns the internal rate of return for a schedule of cash flows that is not necessarily periodic.
A series of cash flows that corresponds to a schedule of payments in dates.
The first payment is optional and corresponds to a cost or payment that occurs at the beginning of the investment. If the first value is a cost or payment, it must be a negative value.
All succeeding payments are discounted based on a 365-day year. The series of values must contain at least one positive value and one negative value.
A schedule of payment dates that corresponds to the cash flow payments.
The first payment date indicates the beginning of the schedule of payments.
All other dates must be later than this date, but they may occur in any order.
A number that you guess is close to the result of XIRR.
Returns the internal rate of return for a schedule of cash flows that is not necessarily periodic.
A series of cash flows that corresponds to a schedule of payments in dates.
The first payment is optional and corresponds to a cost or payment that occurs at the beginning of the investment. If the first value is a cost or payment, it must be a negative value.
All succeeding payments are discounted based on a 365-day year. The series of values must contain at least one positive value and one negative value.
A schedule of payment dates that corresponds to the cash flow payments.
The first payment date indicates the beginning of the schedule of payments.
All other dates must be later than this date, but they may occur in any order.
Returns the net present value for a schedule of cash flows that is not necessarily periodic.
TThe discount rate to apply to the cash flows.
A series of cash flows that corresponds to a schedule of payments in dates.
The first payment is optional and corresponds to a cost or payment that occurs at the beginning of the investment. If the first value is a cost or payment, it must be a negative value.
All succeeding payments are discounted based on a 365-day year. The series of values must contain at least one positive value and one negative value.
A schedule of payment dates that corresponds to the cash flow payments.
The first payment date indicates the beginning of the schedule of payments.
All other dates must be later than this date, but they may occur in any order.
Returns the yield on a security that pays periodic interest.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's annual coupon rate.
The security's price per $100 face value..
The security's redemption value per $100 face value.
The number of coupon payments per year:
-
1:
annual payments
-
2:
semi-annual payments
-
4:
quarterly payments.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the annual yield for a discounted security; for example, a Treasury bill.
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's price per $100 face value..
The security's redemption value per $100 face value.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Returns the annual yield of a security that pays interest at maturity.h
The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.
The security's maturity date. The maturity date is the date when the security expires.
The security's issue date.
TThe security's interest rate at date of issue.
The security's price per $100 face value.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
Calculates the fraction of the year represented by the number of whole days between two dates. Use the YEARFRAC worksheet function to identify the proportion of a whole year's benefits or obligations to assign to a specific term.
The start date.
The end date.
The type of day count basis to use:
-
0:
US (NASD) 30/360
-
1:
Actual/actual
-
2:
Actual/360.
-
3:
Actual/365
-
4:
European 30/360.
A collection of utility methods inspired by functional programming techniques in F#.
The randomizer.
Appends the given list to the current one.
The one.
The other.
Returns whether all the elements are different in the given sequence.
The data type contained in the list.
The list.
Collects elements into a new sequence by applying the given converter to each element.
The data type of the list.
The data type of the target list.
The converter.
The list.
Concatenates the sequence of sequences into one sequence.
The data type of the list.
The sequences.
Filters the list using a .
The data type of the list being filtered.
The predicate.
The list being filtered.
Folds the list.
The data type of the domain.
The type of the range.
The list.
The accumulator functional; the first parameter is the current value of the accumulator and the second the current list value.
The accumulator's start value.
Folds the list and returns the intermediate steps.
The data type of the domain.
The type of the range.
The list.
The accumulator functional; the first parameter is the current value of the accumulator and the second the current list value.
The accumulator's start value.
Applies the action to each element of the sequence.
The data type of the list.
The source.
The action.
Applies the action to each element of the sequence.
The data type of the list.
The source.
The action.
Compares the two given lists if they have the same item content, not necessarily in the same order.
The data type of the list.
The list1.
The list2.
Creates an array and initializes the element through the given functional.
The data type of the arry elements.
The length.
The functional used to initialize the elements.
Returns a lazy instance defined by the given functional.
The data type of the list.
The functional returning the instance for this lazy object.
Returns a lazy instance defined by the given value.
The data type of the list.
The value.
Maps the elements of the list to a new list.
The type of the source elements.
The type of the mapped elements.
The list to map.
The function applied to the elements of the list.
The mapped list.
Removes the specified list.
The list.
The element to remove.
The list without the removed element.
Reverses the specified sequence.
The data type of the list.
The source.
Returns a random reordering of the given collection.
The data type of the enumerable collection.
The source collection to be scrambled.
The same collection of elements in a different order.
Interpolates linearly the specified range. to the specified target.
If the range is [0,12] and the target [101,145] with a default subdivision of 100 the value zero will map to (0,101) and 50 to (6,123).
The values outside the subdivision range will be clipped to the initial, respectively final value.
The range.
The target.
The subdivision.
subdivision
Swaps the specified func.
The type of the domain1.
The type of the domain2.
The type of the range.
The func.
Converts the given enumerable to a .
The data type of the list.
The range.
A lazy construct geared towards functional programming.
The data type of the list.
Initializes a new instance of the class.
The function.
Initializes a new instance of the class.
The value.
Gets the exception which was raised during instantiation, if any.
Gets whether the instantiation raised an exception.
true if this instance has exception; otherwise, false.
Gets a value indicating whether this instance is forced.
true if this instance is forced; otherwise, false.
Gets the value and induces an instantiation.
Forces an instantiation.
Unsynchronizeds the force.
Implementation of the for a set of common data types.
Creates a range of bytes within the given interval.
The start.
The end.
Creates a range of Int16 integers within the given interval.
The start.
The end.
Creates a range of integers within the given interval.
Inclusive start of the range.
Inclusive end of the range.
Creates a range of Int64 integers within the given interval.
The start.
The end.
Returns an array of the range.
The data type of the range.
The range.
Creates a range of doubles within the given interval.
The start.
The end.
Creates a range of doubles starting from a certain and with an amount of step.
The start.
The step.
The amount.
amount;The amount should be greater than one.
Creates a range of floats within the given interval.
The start.
The end.
Creates a range of decimals within the given interval.
The start.
The end.
Creates a range of chars within the given interval.
The start.
The end.
Creates a range of datetime values within the given interval.
The start.
The end.
Creates a range of values within the given interval using a 'next' functional and a comparison to ensure the end-value can be compared..
The data type of the sequence.
The start.
The end.
The get next.
The compare.
Creates a range of values within the given interval using a 'next' functional.
The data type of the sequence.
The start.
The end.
The get next.
Ensures the range.
The value.
The min.
The max.
Creates the rectangle.
The start point.
The end point.
Generic range implementation.
The data type of the range.
Initializes a new instance of the class.
The start-element of the range.
The end-element of the range.
The functional mapping from one element to the next one.
The comparison between two items.
Initializes a new instance of the class.
The start.
The end.
The get next.
Gets the end of the range.
Gets the start of the range.
Returns whether the given value is in the range.
The value.
true if the specified value is inside the range; otherwise, false.
Gets the enumerator.
Returns an enumerator that iterates through a collection.
An object that can be used to iterate through the collection.
Compares the specified one.
The first item.
The second item.
Sequence extensions.
Compares the two given lists per item if they are the same.
The data type contained in the lists.
A sequence.
Another sequence.
Creates a sequence.
The data type of the sequence.
The next method.
The start value.
The method specifying when the end has been reached.
Creates a sequence of random dates over the maximum datetime interval.
The length of the sequence.
Creates a sequence of random integers.
The length of the sequence.
The minimum value of the random integers.
The maximum value of the integers.
Creates a sequence of random floating point numbers.
The length of the sequence.
The minimum value of the random sequence values.
The maximum value of the random sequence values.
Finds the duplicates in the list of points which leads to loops in the paths.
The source.
Creates a custom enumerable sequence.
The sequence can be infinite in contrast to lists and other similar structures.
The data type of the sequence.
The get next.
The start val.
The end reached.
Clones the specified list.
The list to clone.
The cloned list.
Copies the content of the given array into the specified list.
The type type.
The source array.
The distination list.
Returns a more readable format of the string sequence.
The list.
The amount of items to present in the output.
Returns the variance of the given sequence.
A sequence.
Returns the standard deviation of the sequence.
Creates a sequence using the given function.
The data type of the sequence.
The function which maps the zero-based enumeration to the type of the sequence.
The length of the sequence to generate.
count
Drops the element at the specified position. For position values this is equivalent to the method. For negative values
the -1 position will remove the last elements and so on.
The data type of the sequence.
The list.
The position at which the element has to be removed.
Cannot drop at position zero; the sequence is empty.
The negative position is beyond the start of the sequence.;position
Sums the elements of the two sequences.
A sequence of doubles.
The length of the sequences are not the same.
Special mathematical functions and polynomials.
The factorial ln cache size.
The factorial precomp size.
The factorial precomp.
The cache.
Returns the binomial coefficient of two integers as a double precision number.
A number.
A number.
http://en.wikipedia.org/wiki/Binomial_coefficient
Returns the regularized lower incomplete beta function
The regularized incomplete beta function (or regularized beta function for short) is defined in terms of the incomplete beta function and the complete beta function.
http://en.wikipedia.org/wiki/Regularized_Beta_function
Returns the natural logarithm of the binomial coefficient of n and k.
A number
A number
Evaluates the minimum distance to the next distinguishable number near the argument value.
The value.
Relative Epsilon (positive double or NaN).
Evaluates the Negative epsilon. The more common positive epsilon is equal to two times this negative epsilon.
Returns the factorial (n!) of an integer number > 0. Consider using instead.
The argument.
A value value! for value > 0.
http://en.wikipedia.org/wiki/Factorial
Returns the natural logarithm of the factorial (n!) for an integer value > 0.
The value.
A value ln(value!) for value > 0.
Returns the natural logarithm of Gamma for a real value > 0.
The value.
A value ln|Gamma(value))| for value > 0.
Returns the gamma function.
http://en.wikipedia.org/wiki/Gamma_function
Returns the regularized lower incomplete gamma function
P(a,x) = 1/Gamma(a) * int(exp(-t)t^(a-1),t=0..x) for real a > 0, x > 0.
The a.
The x.
Note that some packages like Mathematica define the regularized gamma function differently.
Returns the square of the given value.
The value.
Returns the square of the given value.
The value.
The sine integral function.
A number.
The cosine integral function.
A number.
Returns the error function.
Returns the complementary or inverse error function.
The Laguerres polynomial value for the specified number and order.
A number.
The order of the Laguerre polynomial.
http://en.wikipedia.org/wiki/Laguerre_polynomials
The Hermite polynomial value for the specified number and order.
A number.
The order of the Hermite polynomial.
http://en.wikipedia.org/wiki/Hermite_polynomials
The Legendre polynomial value for the specified number and order.
A number.
The order of the Legendre polynomial.
http://en.wikipedia.org/wiki/Legendre_polynomials
Gets whether the value is double or infinity.
Returns whether the given double is not infinite and an actual number (not NaN).
The x.
True if the value is true number; otherwise, false.
Returns the greatest common divisor of two numbers.
The first number.
The second number.
The greatest common divisor.
Returns the greatest common divisor of the given numbers.
Some numbers.
The greatest common divisor.
The Bessel function of the first kind.
http://en.wikipedia.org/wiki/Bessel_function
The argument.
The order of the Bessel function.
The modified Bessel function of the first kind.
http://en.wikipedia.org/wiki/Bessel_function
The argument.
The order.
The modified Bessel function of the second kind.
http://en.wikipedia.org/wiki/Bessel_function
The argument.
The order.
The Bessel function of the second kind.
http://en.wikipedia.org/wiki/Bessel_function
The argument.
The order.
The spherical Bessel function of the first kind.
http://en.wikipedia.org/wiki/Bessel_function
The argument.
The order.
The spherical Bessel function of the second kind.
http://en.wikipedia.org/wiki/Bessel_function
The argument.
The order.
Bessel J and Y for fractional order.
Bessel I and K for fractional order.
Distances to rectangle point.
The pt.
The rectangle.
Dists to rect select.
The point X.
The rect x1.
The rect x2.
Distances to rectangle.
The pt.
The rc.
Returns the shortest distance to the Bezier curve.
Returns the shortest distance to the polyline.
Returns the shortest distance to the polyline.
The point.
The polyline.
The closest segment to point.
Distances to line segment.
The point.
The polyline.
The delta.
Returns the distance from the given point to the line (segment).
Distances to line squared.
The p.
A.
The b.
Returns the distance of a point to a segment. If the projection
of the point on the segment is outside the segment the distance is
the distance to the closest point of the segment. This in effect defines
some kind of elliptic neighborhood around the segment.
Returns the distance of the point to the origin.
The point.
Returns the distance of the point to the origin.
Returns the distance between the specified points.
Returns the squared distance between the given points.
Given an interval and a value this will output the value which is closer to the given value.
Given an interval and a value this will output the value which is closer to the given value.
The value.
The first choice.
The second choice.
The nearest value.
The other value.
Returns the point of the interval which sits the closest to the given point.
The point seeking the closes neighbor.
The first point in the interval.
The second point in the interval.
Returns whether the given value is less than an .
A value.
true if less than ; otherwise, false.
Checks whether two values are close, i.e. the absolute value of their difference is less than .
A value.
Another value.
Determines whether a given value is strictly less than another one in an epsilon sense.
A value.
Another value.
True if the first value is less than the second or only an epsilon apart; otherwise, false.
Determines whether a given value is strictly less than another one in an epsilon sense.
A value.
Another value.
True if the first value is less than the second or only an epsilon apart; otherwise, false.
Determines whether a given value is less than or equal to another one in an epsilon sense.
A value.
Another value.
True if the first value is less than or equal to the second or only an epsilon apart; otherwise, false.
Determines whether a given value is less than or equal to another one in an epsilon sense.
A value.
Another value.
True if the first value is less than or equal to the second or only an epsilon apart; otherwise, false.
Determines whether a given value is strictly less than another one and not an epsilon away.
A value.
Another value.
True if the first value is less than the second and not an epsilon apart; otherwise, false.
Determines whether a given value is strictly bigger than another one and not an epsilon away.
A value.
Another value.
True if the first value is less than the second and not an epsilon apart; otherwise, false.
Determines whether a given value is strictly bigger than another one or an epsilon away.
A value.
Another value.
True if the first value is less than the second or an epsilon apart; otherwise, false.
Determines whether the double values are equal up to an epsilon.
A double value.
Another double value.
True If the values are equal; otherwise, false.
Determines whether number is as good as zero within the bounds.
The value to test.
The accuracy or bounds within which the value has to be in order to be considered as zero.
true if the specified absolute value is within the accuracy; otherwise, false.
Determines whether the two values are different in an epsilon sense.
A value.
Another value.
True if the values are equal up to epsilon; otherwise, false.
Geometric intersection and overlap methods.
Returns whether the two rectangles intersect.
Returns whether the specified rectangle and circle intersect.
The rectangle.
The center of the circle.
The radius of the circle.
Returns whether the specified point is inside the ellipse defined by the specified rectangle.
Determines whether [is point in rectangle] [the specified point].
The point.
The size.
true if [is point in rectangle] [the specified point]; otherwise, false.
Returns whether the specified rectangle and circle intersect.
The rectangle.
The center of the circle.
The radius of the circle.
Returns whether the line (line segments) intersect and returns in the crossingPoint the actual crossing
point if they do.
The first point of the first line.
The second point of the first line.
The first point of the second line.
The second point of the second line.
The crossing point, if any.
Returns whether the rectangle and the segment intersect.
A rectangle.
An endpoint of the segment.
The complementary endpoint of the segment.
The crossing point, if any.
Returns whether the polyline segment intersect the rectangle.
A rectangle
A polyline.
Returns whether the given rectangle intersects the current one.
The first rectangle.
The queried rectangle which potentially intersects.
Checks whether the segments defined by the specified
point pairs intersect and returns the intersection point.
Finds the intersection point of the lines defined by the point pairs.
The intersection point. If acceptNaN is true a double.NaN is returned if they don't intersect.
Calculate the intersection point between an ellipse and a line segment.
Calculate the intersection point between a polyline and a line segment.
Calculates the intersection point between the specified
rectangle and the line segment defined by the specified
points.
Extensions for the Point class.
Swaps the values of the two points.
A point.
Another point.
Offsets the specified points.
The points.
The offset vector.
Snaps a point by changing the X and Y coordinates to the closest value dividable by the snapping value.
The point.
The horizontal snapping value.
/// The vertical snapping value.
Returns the snapped point.
Returns the barycentric coordinates as percentages with respect to the given rectangle.
The real point.
The rectangle which acts as a barycentric coordinate system.
The percentages wrapped in a Point.
The right side of the rectangle corresponds to a value of 100. If the position is left of the left side of rectanlge the value will be negative.
The complementary method.
Given a percentage and a rectangle this will return the coordinates corresponding to the percentages given.
A couple of values in percentage, e.g. a value of (50,50) will return the center of the rectangle.
The size from which the point will be extracted.
The point corresponding to the barycentric coordinates.
Given a percentage and a rectangle this will return the coordinates corresponding
to the percentages given.
A couple of values in percentage, e.g. a value of (50,50) will return the center of the rectangle.
The rectangle which acts as the barycentric system.
The point corresponding to the barycentric coordinates.
Determines whether the given point is horizontally between two points.
The interval includes the endpoints.
The point.
The first point.
The second point.
true if the X-coordinate is located in the interval of the X-coordinates of the other points; otherwise, false.
Determines whether the given point is vertically between two points.
The point.
The first point.
The second point.
true if the Y-coordinate is located in the interval of the Y-coordinates of the other points; otherwise, false.
Rotatates the specified point with respect to an achor point.
The point to rotate.
The anchor point of the rotation.
The rotation angle.
Determines whether another point sits in a delta neighborhood.
The point which determines the neighborhood.
The point which is tested for being contained in the neighborhood of origin point.
The size of the square around the origin point which acts as a neighborhood around the point.
true if point is in the neghborhood of origin point; otherwise, false.
Attempts to convert the given string to a Point.
The string representation of the point.
The Point corresponding to the serialized form.
Rotates the point.
The point.
The pivot.
The angle.
Rotates the points.
Converts the point to a string representation.
The point.
Returns the opposite of point p with respect to specified line.
Returns true if for three given points p, u, v one has |p-u| < |p-v|.
A point.
The second point.
The third point.
Mirrors the point with respect to the given center.
Returs the middle point between the given points.
A point.
Another point.
Halfway between the two given points.
Gets a point from the minimum X and Y values from the specified points.
The points.
Gets a point from the maximum X and Y values from the specified points.
The points.
Substracts the specified p1.
The p1.
The p2.
Subtracts the specified p1.
The p1.
The p2.
Determine whether p1 and p2 are on the same side of a line.
Determines, given three points, if when travelling from the first to
the second to the third, we travel in a counterclockwise direction.
1 if the movement is in a counterclockwise direction, -1 if not.
Dots the specified v1.
The v1.
The v2.
Dots the specified p1.
The p1.
The p2.
Determinants the specified p1.
The p1.
The p2.
Calculates the point of the specified line segment which determines the distance from the specified point to the line segment.
That is, the perpendicular projection onto the segment.
The point outside the segment.
The first point defining the segment.
The second point defining the segment.
Finds the projection (point) of the given point on the line.
Rotates the transform.
The center.
The angle.
Linear interpolation between the given points.
A point.
Another point.
A value in the [0,1] interval. At zero the interpolation returns the first point, at one it results in the second point.
Normals the specified p1.
The p1.
The p2.
Inverts the point.
The point.
Nearests the point.
The point.
The points.
Extensions on the structure.
Simple RotateTransform.
Gets whether the Rect is fully in bounds of the hosting rect.
The rect.
The hosting rect.
Returns true if the rect is fully inside the boudns fo the hosting rect.
Determines whether the specified rect is bigger.
The rect.
The target rect.
true if the specified rect is bigger; otherwise, false.
Creates a new rectangle from the lefttop and rightbottom coordinates.
Rotates the given rectangle with the specified amount with respect to a rotation anchor.
The rectangle to rotate.
The angle of rotation.
The anchor (fixed-point) of the rotation.
Returns the top-left point of the rectangle.
The current rectangle.
Returns the top-right point of the rectangle.
The current rectangle.
Returns the bottom-right corner of the rectangle.
The current rectangle.
Returns the bottom-left point of the rectangle.
The current rectangle.
Centers the left.
The rect.
Centers the top.
The rect.
Centers the right.
The rect.
Centers the bottom.
The rect.
Returns the center of the specified rectangle.
Centers the X.
The rect.
Centers the Y.
The rect.
Tops the left.
The rect.
The angle.
The offset vector.
Tops the right.
The rect.
The angle.
The offset vector.
Bottoms the right.
The rect.
The angle.
The offset vector.
Bottoms the left.
The rect.
The angle.
The offset vector.
Centers the specified rect.
The rect.
The angle.
The offset vector.
Centers the left.
The rect.
The angle.
The offset vector.
Centers the top.
The rect.
The angle.
The offset vector.
Centers the right.
The rect.
The angle.
The offset vector.
Centers the bottom.
The rect.
The angle.
The offset vector.
Determines whether [contains] [the specified rect].
The rect.
The point.
The angle.
true if [contains] [the specified rect]; otherwise, false.
Returns whether the rectangle intersects the rotated rectangle.
The rotation is with respect to the center of the rectangle.
A rectangle.
The rectangle which will be rotated before being compared for overlap.
The angle of the rotation.
Returns the size of the rectangle.
The rectangle.
Performs a rotation of the given point with respect to a point in the rectangle defined by an offset from the center.
The new point.
The rectangle whose center will be offset and taken as the anchor of the rotation.
The rotation angle.
The offset vector with respect to the center of the rectangle.
Return a rectangle located a (0.0) with the specified size.
The s.
A rectangle located at the (0.0).
Creates a new rectangle based on the middle point rather than the LT origin.
The center of the rectangle.
The size of the new rectangle.
News the rect.
The center.
The size.
Offsets the specified rect.
The rect.
The offset vector.
Offsets the current rectangle with the specified values.
The rectangle to offset.
The horizontal offset.
The vertical offset.
Inflates the given rectangle with the specified amount.
Inflates the specified rect.
The rect.
The size.
Determines whether [contains] [the specified rectangle].
The rectangle.
The p.
true if [contains] [the specified rectangle]; otherwise, false.
Returns the center point of the specified rectangle.
Unions the specified a.
A.
The b.
Inflates the specified rect.
The rect.
The left.
The top.
The right.
The bottom.
Diverse extension method which do not fit in the more specialized extension classes.
Tells you whether the given value sits in the specified interval.
The value.
The lower.
The upper.
The opposite of the approximation method, this attempts to smoothen out the polyline to a Bezier curve.
The polyline.
Converts the Cartesian coordinates to polar coordinates.
The root point.
The other point.
The angle.
The rho.
Polars to cartesian coordinates conversion.
The coordinate center.
The angle.
The polar radius.
Clones the specified list.
The list to clone.
The cloned list.
Constrains the specified value to the given interval.
The value to constrain.
The min.
The max.
Gets the projected points of the specified point on the given rectangle.
Gets the Bezier point at the specified value.
The points.
The segment.
A value in the interval [0,1].
Gets the equal sides of a triange from the Pythagor theorem.
The hypotenuse.
Gets the hypotenuse according to the Pythagor theorem.
The first side.
The second side.
Determines whether [has valid area] [the specified size].
The size.
true if [has valid area] [the specified size]; otherwise, false.
Hypotenuses the specified x.
The x.
The y.
Determines whether [is point in rectangle] [the specified pt].
The pt.
The rc.
true if [is point in rectangle] [the specified pt]; otherwise, false.
Determines whether [is in right open interval] [the specified v].
The v.
The min.
The max.
True f [is in right open interval] [the specified v]; otherwise, false.
Determines whether [is in closed interval] [the specified v].
The v.
The min.
The max.
True if [is in closed interval] [the specified v]; otherwise, false.
Inverts the matrix.
The matrix.
Moves the given point into the rectangle by taking the rectangle's intervals as limiting values for
the point's coordinates.
Any point.
A rectangle which acts as limiting container.
Linear interpolation between the given values.
See http://en.wikipedia.org/wiki/Linear_interpolation .
A value.
Another value.
A value in the [0,1] interval. At zero the interpolation returns the first value, at one it results in the second value.
Normalizes the specified angle into the [0, 2Pi] interval.
The angle.
The normalize.
Offsets the point collection.
The points.
The original points.
The offset.
Pushes the specified start point onwards in the direction specified by the vector and a length given.
The start.
The unit vector.
The distance to push.
Safes the divide.
The value1.
The value2.
The fallback.
Shrinks the specified outer bounds.
The outer bounds.
The left.
The top.
The right.
The bottom.
Returns zero within the given interval and +/-1 whether the value is above or below the interval.
The argument of the function.
The lower value of the interval.
The upper value of the interval.
Zero, -1 or +1 whether the value is below, resp. inside, resp. above the interval.
Returns the of the x,y values of the given point with.
respect to the boundaries of the specified rectangle.
The point to test.
The rectangle which acts as the domain of the stair function.
Zero, -1 or +1 whether the coordinate is below, resp. inside, resp. above the boundary of the rectangle.
Swaps the values of the two numbers.
A value.
Another value.
Snaps the specified value.
The value.
The snapping value.
Transforms the specified tr.
The tr.
The r.
Transforms the specified m.
The m.
The r.
Transforms the size of the percent to.
The rect.
The size.
Toes the matrix.
The transform.
Converts the point to a string representation.
The size.
Converts the double to a string representation.
The value.
Converts the int to a string representation.
The value.
Sizes from string.
The value.
Converts the given value to an enum type.
The type of the enumeration.
The value.
Gets the bezier coefficients, see http://processingjs.nihongoresources.com/bezierinfo/ .
The a0.
The a1.
The a2.
The a3.
The b0.
The b1.
The b2.
The b3.
The u.
The s.
The z.
The x4.
The y4.
Linear interpolation between the given vectors.
A point.
Another point.
A value in the [0,1] interval. At zero the interpolation returns the first vector, at one it results in the second vector.
Returns the mirrored vector with respect to the X-coordinate.
The vector to mirror.
The mirrored vector.
Returns the mirrored vector with respect to the Y-coordinate.
The vector to mirror.
The mirrored vector.
Returns a unit vector in the direction specified by the angle.
The angle in degrees.
A unit vector.
Returns the perpendicular of the specified vector.
A vector.
Normalizeds the specified vector.
The vector.
Fills up an array of linear extrapolations on the basis of the given values.
The array of values to interpolate.
How many items to generate.
The step value. Considering the -values as function values of an array of real values, the represents the step between these (functional domain) values.
if set to true the resulting array will not continue (extrapolate) the given -array but rather return the actual values of the calculated interpolation.
Use the interpolation to get a linear function from which arbitrary functional values can be calculated.
Fills up an array of exponential extrapolations on the basis of the given values.
if set to true the resulting array will not continue (extrapolate) the given -array but rather return the actual values of the calculated interpolation.
The values to inter-expolate.
How many items to generate.
The step value. Considering the -values as function values of an array of real values, the represents the step between these (functional domain) values.
Number theory utility functions for integers.
Find out whether the provided 32 bit integer is an even number.
The number to very whether it's even.
True if and only if it is an even number.
Truncates the specified number by dropping its decimals.
The number.
Find out whether the provided 32 bit integer is an odd number.
The number to very whether it's odd.
True if and only if it is an odd number.
Find out whether the provided 32 bit integer is a perfect power of two.
The number to very whether it's a power of two.
True if and only if it is a power of two.
Find out whether the provided 64 bit integer is a perfect power of two.
The number to very whether it's a power of two.
True if and only if it is a power of two.
Find the closest perfect power of two that is larger or equal to the provided
32 bit integer.
The number of which to find the closest upper power of two.
A power of two.
Raises 2 to the provided integer exponent (0 <= exponent < 31).
The exponent to raise 2 up to.
2 ^ exponent.
Returns the greatest common divisor of the given list.
Returns the greatest common divisor of the given numbers.
Returns the least common multiple (lcm) of a set of integers using Euclid's algorithm.
Returns the least common multiple of the given numbers.
A real-valued matrix.
A real-valued vector.
Initializes a new instance of the struct.
The dimension.
Initializes a new instance of the struct.
The vector.
Gets or sets the with the specified i.
The .
The entry number.
Requested vector index is out of range!
Clones this instance.
Returns a that represents this instance.
A that represents this instance.
Trigonometry functions and extensions.
Converts degrees to radians.
Converts the given value to radians assuming it's a value specifying degrees.
The degrees.
The angle in radians
Converts radians to degrees.
Returns the sine of the given angle (in radians).
Returns the cosine of the given angle (in radians).
Returns the tangent of the given angle (in radians).
Returns the cotangent of the given angle (in radians).
Returns the secant of the given angle (in radians).
Sec = 1/Cos.
Returns the cosecant of the given angle (in radians).
Cosec = 1/Sin.
Returns the inverse sine of the given value.
The value.
The angle in radians.
Returns the inverse cosine of the given value.
Returns the inverse tangent of the given value.
Returns the inverse tangent of the given ratio values.
The nominator.
The denominator.
The angle in radians.
Returns the inverse cotangent of the given value.
Returns the inverse secans of the given value.
Returns the inverse cosecans of the given value.
Returns the hyperbolic sine of the given value.
Returns the hyperbolic cosine of the given value.
Returns the hyperbolic tangent of the given value.
Returns the hyperbolic cotangent of the given value.
Returns the hyperbolic secans of the given value.
Returns the hyperbolic cosecans of the given value.
Returns the inverse hyperbolic sine of the given value.
Returns the inverse hyperbolic secant of the given value.
Returns the inverse hyperbolic tangent of the given value.
Returns the inverse hyperbolic cotangent of the given value.
Returns the inverse hyperbolic cosine of the given value.
Returns the inverse hyperbolic cosecans of the given value.
Manages the reference map trees for formula calculations.
Each tree represents a set of cells with formulas that depend on each other.
Invoked whenever an expression that can return a multi-element array is invalidated.
Called while the dependency map lock is held (re-entrance is safe due to .NET's recursive Monitor).
Used by SpillCoordinator to detect when anchor formula expressions need re-evaluation.
Represents a node in the reference map tree structure.
Each node contains a cell reference and its dependencies.
Uses weak references for node-to-node links so that nodes can be garbage collected
when their associated expression is no longer referenced.
Gets the live precedent nodes, filtering out any that have been garbage collected.
Gets the live dependent nodes, filtering out any that have been garbage collected.
Searches for entries intersecting the query range.
Note: This method opportunistically cleans up dead weak references during traversal.
Represents a spill range.
The current state of the spill range.
Column-major linear index of the anchor cell; lower values are processed first when multiple spills
compete for the same cells, matching left-to-right, top-to-bottom Excel priority.
The cell range currently occupied by the spill.
The cell index of the anchor cell, which is the cell that contains the formula that produces the spill.
Creates a SpillRange from imported data without recalculation. The caller is responsible
for stamping spill cell values with via .
Updates all position-related state after row/column insertion or removal has shifted the anchor cell.
Called by before recalculation.
Transitions the spill to Inactive without firing when the anchor cell
has been deleted. The caller is responsible for writing and removing the spill.
The translated is used so that
clears ghost spilled cells at their post-deletion positions.
Provides old and new range data when a desired cell range changes.
Represents the state of a spill range.
The spilled range has spilled its values to neighbouring cells.
The spilled range has been cleared and no longer spills its values to neighbouring cells. The anchor cell returns value #SPILL!.
The spilled range has just been created, it is inactive and does not spill its values to neighbouring cells.
The spilled range is dormant and does not spill its values to neighbouring cells. It is expected that an update of the expression might cause the spilled range to become active again.
Represents a dscription of the spill ranges in a worksheet.
Gets the spill ranges in the worksheet.
Registers a SpillRange from imported XLSX data without recalculation or cell writing.
The caller must stamp spill cell values with the returned SpillRange's Index.
Writes the #SPILL! error into the anchor cell expression for a blocked spill that was
restored from imported data, without triggering the normal change-detection guards.
A HashSet-like collection that holds weak references to its items.
Items are automatically removed when they are garbage collected.
The type of items in the set. Must be a reference type.
Stores a boolean (true or false) value for a cell, rendering as uppercase text in the cell.
Gets the value type as .
The type of the value.
Gets the value as string override.
The format.
Provides methods for creation of DocumentChart object.
Creates a DocumentChart with structure based on the passed data.
The worksheet containing the chart data.
The range containing the chart data.
A value indicating whether the series of the chart will refer to vertical or horizontal ranges or it will be determined automatically.
The types of chart that will be created. Passing more than one type will create a combo chart.
The result DocumentChart object.
This method looks for an empty range at the top left part of the range. If the top left cell is empty, it first goes along the top row,
to try and find the end of the empty range. If it finds non-empty cell, it concludes that this is the start of the top title range and the
left title range starts from the second row below. If the entire first row is empty, it repeats the same along the first column. If the entire
first row and first column are empty, the first row and column are considered to be the title ranges.
The range will be divided into a data range and "titles" ranges, starting from the bottom right cell and working our way to the top and left. The titles part contain the
ranges for the categories and the series titles. Where the data range ends is determined by going along the bottom row in a right-to-left direction and finding the first cell
that is considered title cell (that is, non-data). These are cells containing text or dates, in the case when the bottom right cell is not a date. If the bottom right cell
contains a date, dates are considered part of the value range.
Direction for interpreting chart data series in a cell range (rows vs columns); determines whether series run horizontally or vertically.
Automatically determines series direction by analyzing the data range dimensions.
Series are arranged in columns, with each column representing a data series.
Series are arranged in rows, with each row representing a data series.
Formula-based chart data that resolves to cell ranges within a workbook for dynamic chart series and values.
Initializes a new from cell ranges in the specified worksheet.
The worksheet the ranges refer to.
The ranges that refer to the chart data.
Initializes a new with a formula string that references chart data in the workbook.
The workbook the formula refer to.
The formula which refers to the chart data.
The workbook containing the cell ranges referenced by this chart data formula.
Creates a deep copy of this chart data instance with the same formula and workbook reference.
The deep copy of the object.
Resolves the formula to cell ranges and returns them along with the containing worksheet.
The result cell ranges.
Thrown when the formula referring to the data cannot be parsed to cell ranges.
Attempts to resolve the formula to cell ranges and returns whether the resolution succeeded.
The result cell ranges.
The worksheet the cell ranges are located in.
A value indicating whether the ranges have been retrieved.
Defines a contiguous range of columns by start and end indices within a worksheet.
Initializes a new spanning from the start to the end column index.
The start index of the range.
The end index of the range.
Initializes a new representing a single column at the specified index.
The index of the range.
Determines whether the specified is equal
to the current .
The to compare with the current
.
Returns true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Manages threaded comments in a worksheet, supporting add, remove, and lookup operations by cell index.
Initializes a new for the specified worksheet.
The worksheet.
The shape type discriminator identifying this collection as containing comment shapes.
Creates and adds a new comment to the specified cell with author and text content.
Index of the cell assigned to the comment.
The author.
The text.
The date the comment is created.
The new comment.
Removes the specified comment and its fallback note from the worksheet.
The comment.
The value indicating whether the specified comment was found.
Finds all comments whose related cell indices fall within the specified cell range.
The cell range.
The collection of contained comments.
Represents a shape element of SpreadsheetComment.
Defines comment properties including the related cell, text, and author.
The cell index to which this comment is anchored in the worksheet.
The cell index.
The comment text content; changes are recorded in the undo stack.
The text value.
The author name associated with this comment; changes are recorded in the undo stack.
The author.
Extends comment properties to allow changing the related cell index, with changes tracked in the undo stack.
The cell index to which this comment is anchored; changes are recorded in the undo stack.
The cell index.
Represents threaded comment interface.
Gets the text.
The text value.
Gets the creation date.
The creation date value.
Gets the unique id.
The unique id value.
Gets the author`s id.
The author`s id value.
Represents a shape element of SpreadsheetNote.
Initializes a new instance of the class.
Initializes a new instance of the class.
Collection of comment replies automatically sorted by creation date in ascending order, supporting add, remove, and enumeration operations.
Accesses the reply at the specified position in the sorted collection.
The element at the specified index.
Returns the number of replies currently in the collection.
Returns false as the collection supports modification operations.
Returns the worksheet containing the parent comment and its replies.
The worksheet.
Returns the comment that owns this reply collection.
The comment.
Adds a reply to the collection and re-sorts all replies by creation date in ascending order.
The object to be added to the ReplySortedCollection.
Removes the specified reply from the collection and returns whether the operation succeeded.
The object to remove from the ReplySortedCollection.
Removes the reply at the specified position in the collection.
The zero-based index of the element to remove.
Removes all replies from the collection.
Checks whether the specified reply exists in the collection.
The object to locate in ReplySortedCollection.
true if item is found in the ReplySortedCollection; otherwise, false.
Copies all replies to the specified array starting at the given array index.
The one-dimensional System.Array that is the destination of the elements
copied from ReplySortedCollection. The System.Array must have zero-based indexing.
The zero-based index in array at which copying begins.
Returns an enumerator for iterating through replies in creation date order.
Finds the position of the specified reply in the sorted collection and returns its index, or -1 if not found.
The object to locate in the ReplySortedCollection. The value can be null for reference types.
The zero-based index of the first occurrence of item within the entire ReplySortedCollection,
if found; otherwise, –1
Raised before a reply is added or removed, allowing cancellation of the operation.
Raises the event before modifying the collection.
The instance containing the event data.
Raised after a reply has been successfully added or removed from the collection.
Raises the event after the collection has been modified.
The instance containing the event data.
Event arguments providing information about a completed reply collection modification, including the change type and affected reply.
Returns whether the operation was an Add or Remove action.
The change type.
Returns the reply that was added or removed from the collection.
The reply.
Specifies whether a reply collection operation is adding or removing a reply.
A reply is being added to the collection.
A reply is being removed from the collection.
Cancelable event arguments providing information about a pending reply collection modification, including the change type and affected reply.
Returns whether the pending operation is an Add or Remove action.
The change type.
Returns the reply that will be added or removed if the operation is not canceled.
The reply.
Threaded comment attached to a worksheet cell, supporting author attribution, replies, creation dates, and resolution state.
Returns FloatingShapeType.Comment to identify this shape as a comment.
Cell index to which this comment is attached; setting a new value pushes the change to the undo stack.
The cell index.
Text content of the comment; setting a new value pushes the change to the undo stack.
The text value.
Date when the comment was created; setting a new value pushes the change to the undo stack.
Display name of the comment's author; setting a new value pushes the change to the undo stack.
The author.
Collection of replies to this comment, sorted by creation date in ascending order.
Indicates whether the comment thread is resolved; setting a new value pushes the change to the undo stack.
The value indicating whether the comment is resolved.
Adds a new reply to this comment with the specified author, text, and optional creation date, returning the created reply.
The author`s name.
The text.
The date the reply is created.
The new reply.
Removes the specified reply from this comment's reply collection and returns true if the reply was found and removed.
The reply.
The value indicating whether the specified reply was found.
Determines whether the specified is equal to this comment by comparing base properties, author, and creation date.
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Computes a hash code combining base properties, author display name, and creation date.
A hash code for the current .
Executes the SetCommentText command to update the comment's text with undo support.
The text value.
Executes the SetCommentRelatedCellIndex command to update the comment's cell attachment with undo support.
The related cell index value.
Executes the SetCommentAuthor command to update the comment's author with undo support.
The author`s name value.
Reply within a threaded comment, supporting author attribution, text content, and creation dates.
Date when the reply was created; setting a new value triggers re-sorting of the parent comment's reply collection by creation date.
Display name of the reply's author; setting a new value pushes the change to the undo stack.
The author.
Text content of the reply; setting a new value pushes the change to the undo stack.
The text value.
Parent comment to which this reply belongs.
The text value.
Cell index of the parent comment to which this reply is attached.
The cell index.
Executes the SetReplyAuthor command to update the reply's author with undo support.
The author`s name value.
Note attached to a worksheet cell with text content, author, visibility, and positioning behavior for cell operations.
Initializes a new note attached to the specified cell with author, text, and shape properties.
The worksheet assigned to the note.
Index of the cell assigned to the note.
Index of the cell where the top left corner of the shape is located.
The author of the note.
The text content of the note.
The shape of the note.
Returns FloatingShapeType.Note to identify this shape as a note.
Cell index to which this note is attached; setting a new value pushes the change to the undo stack.
The cell index.
Name of the note's author; setting a new value pushes the change to the undo stack.
The author.
Text content of the note; setting a new value pushes the change to the undo stack.
The text value.
Controls whether the note is displayed on the worksheet; setting a new value pushes the change to the undo stack.
true if visible; otherwise, false.
Controls whether the note relocates when its underlying cells are inserted or deleted; setting a new value pushes the change to the undo stack.
true if move with cells; otherwise, false.
Controls whether the note resizes when its underlying cells are resized; setting a new value pushes the change to the undo stack.
true if resize with cells; otherwise, false.
Alternate text description for accessibility; setting a new value pushes the change to the undo stack.
The alternate text value.
Indicates whether this note is a fallback representation of a threaded comment for compatibility with older Excel versions.
true if visible; otherwise, false.
Gets or sets a value indicating whether this comment-related fallback `s text is custom modified.
true if text is modified; otherwise, false.
Determines whether the specified is equal to this note by comparing base properties, author, and alternate text.
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Computes a hash code combining base properties, author name, and alternate text.
A hash code for the current .
Executes the SetNoteText command to update the note's text with undo support.
The text value.
Executes the SetNoteRelatedCellIndex command to update the note's cell attachment with undo support.
The related cell index value.
Executes the SetNoteAuthor command to update the note's author with undo support.
The author`s name value.
Collection of notes attached to worksheet cells, supporting visibility control and conversion to threaded comments.
Initializes a new note collection for the specified worksheet.
The worksheet.
Returns FloatingShapeType.Note to identify notes within the shape collection.
Adds a note to the specified cell with default positioning and returns the created note.
Index of the cell assigned to the note.
The author.
The text.
The new note.
Adds a note to the specified cell with custom positioning and returns the created note.
Index of the cell assigned to the note.
Index of the cell where the top left corner of the note is visualized.
The author.
The text.
The new note.
Hides the specified note from view without removing it from the collection.
The note.
Makes the specified note visible in the worksheet.
The note.
Hides all notes in the collection from view as a single operation.
Makes all notes in the collection visible as a single operation.
Converts all non-fallback notes to threaded instances.
Finds all notes whose related cells fall within the specified range.
The cell range.
The collection of contained notes.
Raised when the visibility of all notes is changed together via ShowAll or HideAll.
Raises the NotesVisibilityChanged event when all notes' visibility changes.
Comparison operators used in data validation, conditional formatting, and filtering operations.
Tests whether two values are equal.
Tests whether the first value is greater than the second.
Tests whether the first value is greater than or equal to the second.
Tests whether the first value is less than the second.
Tests whether the first value is less than or equal to the second.
Tests whether two values are not equal.
Tests whether a value falls within an inclusive range defined by two boundary values.
Tests whether a value falls outside an inclusive range defined by two boundary values.
Conditional formatting applied to one or more cell ranges, dynamically styling cells based on a formatting rule.
Initializes a new conditional formatting instance with the specified rule.
Rule that determines which cells receive conditional formatting and what styling is applied.
Worksheet to which this conditional formatting is applied; throws InvalidOperationException if accessed before the formatting is applied to a cell selection.
Read-only collection of cell ranges to which this conditional formatting is applied.
Replaces the current rule with a new rule and invalidates the worksheet layout with undo support.
The new rule that is applied.
Evaluates the conditional formatting rule for the specified cell and returns a numeric result indicating formatting status.
The index on which the formatting is applied.
Associates a cell range with the conditional formatting rules applied to it, enabling retrieval of all active formatting conditions for a specific region.
Initializes a new ConditionalFormattingRange that will associate a cell range with its applied conditional formatting rules.
Gets the cell range to which the conditional formatting rules apply.
Gets the collection of conditional formatting rules currently applied to this cell range.
Holds the evaluation result of a conditional formatting rule over a cell range, determining whether the formatting should be applied.
Initializes a new ConditionalFormattingResult to store the outcome of a conditional formatting rule evaluation.
Gets the conditional formatting rule that was evaluated.
Gets the numeric result of the rule evaluation, where positive values typically indicate the condition was met.
Gets a value that indicates whether the given result should be applied. CFs that are not dxf based are always applied.
TODO: Remove
Specifies where the axis is positioned in data bar conditional formatting, affecting how positive and negative values are displayed.
Positions the axis automatically based on the presence of negative values in the range.
Displays data bars without an axis, so positive and negative values extend in the same direction.
Positions the axis at the cell's midpoint, with positive values extending right and negative values extending left.
Specifies the direction in which data bars extend within cells for conditional formatting visualization.
Determines the direction automatically based on the current reading order context (LTR or RTL).
Extends data bars from left to right, regardless of reading order.
Extends data bars from right to left, regardless of reading order.
Defines formatting properties that overlay base cell formatting when conditional formatting rules are met, allowing selective property changes without replacing all formatting.
Initializes a new DifferentialFormatting that can overlay formatting properties on cells when conditional formatting rules apply.
Gets or sets the number format to apply when the conditional formatting rule is satisfied.
Gets or sets the left border style and color to apply when the conditional formatting rule is satisfied.
Gets or sets the top border style and color to apply when the conditional formatting rule is satisfied.
Gets or sets the right border style and color to apply when the conditional formatting rule is satisfied.
Gets or sets the bottom border style and color to apply when the conditional formatting rule is satisfied.
Gets or sets the diagonal up border (bottom-left to top-right) style and color to apply when the conditional formatting rule is satisfied.
Gets or sets the diagonal down border (top-left to bottom-right) style and color to apply when the conditional formatting rule is satisfied.
Gets or sets the background fill (pattern or gradient) to apply when the conditional formatting rule is satisfied.
Gets or sets the font family to apply when the conditional formatting rule is satisfied.
Gets or sets the font size to apply when the conditional formatting rule is satisfied.
Gets or sets whether to apply bold text formatting when the conditional formatting rule is satisfied.
Gets or sets whether to apply italic text formatting when the conditional formatting rule is satisfied.
Gets or sets whether to apply strikethrough text decoration when the conditional formatting rule is satisfied.
Gets or sets the vertical text alignment (none, superscript, or subscript) to apply when the conditional formatting rule is satisfied.
Gets or sets the underline style to apply when the conditional formatting rule is satisfied.
Gets or sets the text color to apply when the conditional formatting rule is satisfied.
Compares this differential formatting with another object and returns true if all formatting properties match.
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Computes a hash code based on all defined formatting properties for use in collections.
A hash code for the current .
Identifies a specific icon within a preset icon set by combining the set type and the icon's index position, used in icon set conditional formatting.
Initializes a new IconDefinition that references a specific icon by its preset set and index position.
Gets or sets the zero-based position of the icon within its preset set.
Gets or sets the preset icon set that contains this icon.
Compares this icon definition with another object and returns true if both the icon set and index match.
Computes a hash code combining the icon set and index for use in collections.
Specifies the built-in icon sets available for icon set conditional formatting, each containing 3-5 related icons for visualizing data ranges.
Three traffic light icons (red, yellow, green) without borders.
Three gray arrows (up, right, down) indicating directional trends.
Four gray arrows providing finer trend distinctions than three-arrow sets.
Five gray arrows providing the most granular trend distinctions in the arrow series.
Three colored arrows (red down, yellow right, green up) for clear positive/neutral/negative indication.
Four colored arrows providing finer trend distinctions with color coding.
Five colored arrows providing the most granular trend distinctions with color coding.
Three triangular indicators (red down, yellow flat, green up) for directional trends.
Three traffic light icons (red, yellow, green) with black borders for enhanced visibility.
Three road sign shapes (triangle, diamond, circle) for categorical distinctions.
Four traffic light colors providing finer status distinctions than three-light sets.
Color gradient from red to black, useful for heat map visualizations.
Three symbol icons (check, exclamation, X) without borders for status indication.
Three symbol icons (check, exclamation, X) with borders for enhanced visibility.
Three flag icons (red, yellow, green) for priority or status indication.
Three star rating levels (empty, half, full) for quality or satisfaction metrics.
Four rating levels providing finer quality distinctions than three-level sets.
Five rating levels providing the most granular quality or satisfaction distinctions.
Five boxes showing progressive filling levels from empty to full for completion or progress visualization.
Five circular pie-chart quarters showing progressive filling (0%, 25%, 50%, 75%, 100%) for percentage or completion metrics.
Base class for conditional formatting rules that apply differential formatting (overlay properties) when conditions are met, providing visual feedback without replacing base cell formatting.
Initializes a new differential formatting rule with the specified formatting to apply when conditions are met.
Initializes a new differential formatting rule without initial formatting properties.
Gets or sets the differential formatting properties to apply when this rule's conditions are satisfied.
Gets or sets whether evaluation of lower-priority rules should halt when this rule's condition is met, optimizing performance and ensuring this rule takes precedence.
Base class for rules that evaluate cell values and apply formatting when specific conditions are met, enabling dynamic visual feedback in worksheets.
Initializes a new conditional formatting rule with default priority and evaluation behavior.
Keep these for compatibility reasons with Excel.
Returns a successful resolution result (1.0) regardless of the cell value, used for rules that always apply.
Does not serve any purpose
1d
Returns a failure resolution result (0.0) regardless of the cell value, used for rules that never apply.
Does not serve any purpose
0d
Exchanges the evaluation priority with another rule, affecting the order in which rules are applied when multiple rules match.
Evaluates the cell value against the rule's condition and returns a numeric result indicating whether the condition is met (positive for match, zero for no match).
The cell value that is resolved by the rule
Evaluates the rule for a specific cell and returns the resolution result, with positive values indicating the condition is met and zero indicating failure.
Current cell value
The cell index
0 if the rules fails. A positive number (most often 1), if it succeeds
Base class for conditional formatting rules that require two comparison arguments, supporting both literal values and formula expressions for flexible condition evaluation.
Initializes a new two-argument rule with the specified argument values and differential formatting to apply when conditions are met.
Gets the resolved first argument as a cell value after evaluating formulas or converting literals.
Gets the resolved second argument as a cell value after evaluating formulas or converting literals.
Conditional formatting rule that applies formatting when a cell value falls between two specified bounds, inclusive.
Initializes a new instance of the class.
Evaluates whether the cell value falls between the two boundary arguments and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell value equals a specified argument value.
Initializes a new instance of the class.
Evaluates whether the cell value equals the argument and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell value is greater than or equal to a specified argument value.
Initializes a new with the comparison argument and formatting to apply when the condition is met.
Evaluates whether the cell value is greater than or equal to the argument value and returns 1.0 if true, 0.0 otherwise.
The cell value
The argument value
Conditional formatting rule that applies formatting when a cell value is greater than a specified argument value.
Initializes a new instance of the class.
Evaluates whether the cell value is greater than the argument value and returns 1.0 if true, 0.0 otherwise.
The cell value
The argument value
Conditional formatting rule that applies formatting when a cell value is less than or equal to a specified argument value.
Initializes a new with the comparison argument and formatting to apply when the condition is met.
Evaluates whether the cell value is less than or equal to the argument value and returns 1.0 if true, 0.0 otherwise.
The cell value
The argument value
Conditional formatting rule that applies formatting when a cell value is less than a specified argument value.
Initializes a new with the comparison argument and formatting to apply when the condition is met.
Evaluates whether the cell value is less than the argument value and returns 1.0 if true, 0.0 otherwise.
The cell value
The argument value
Conditional formatting rule that applies formatting when a cell value falls outside the range defined by two specified bounds.
Initializes a new with two boundary arguments and formatting to apply when the condition is met.
Evaluates whether the cell value falls outside the range defined by the two boundary arguments and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell value does not equal a specified argument value.
Initializes a new with the comparison argument and formatting to apply when the condition is met.
Evaluates whether the cell value does not equal the argument and returns 1.0 if true, 0.0 otherwise.
The cell value
Base class for conditional formatting rules that compare cell values against a single argument, supporting both absolute values and formula-based arguments.
Initializes a new with the comparison argument and formatting to apply when the condition is met.
Evaluates the comparison between the cell value and argument value and returns 1.0 when the condition is satisfied, 0.0 otherwise.
Evaluates the comparison rule for text cell values and returns 1.0 if the condition is met, 0.0 otherwise.
The cell value
Evaluates the comparison rule for numeric cell values and returns 1.0 if the condition is met, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell contains an error value such as #DIV/0!, #N/A, or #VALUE!.
Initializes a new with the specified formatting to apply when the condition is met.
Conditional formatting rule that applies formatting when a cell does not contain an error value such as #DIV/0!, #N/A, or #VALUE!.
Initializes a new with the specified formatting to apply when the condition is met.
Conditional formatting rule that applies formatting when a cell satisfies a custom formula expression.
Initializes a new with the specified formula expression and formatting to apply when the condition is met.
Evaluates the formula expression for the specified cell and returns 1.0 if the formula evaluates to true or non-zero, 0.0 otherwise.
Conditional formatting rule that applies formatting when a cell's text value begins with a specified text string.
Initializes a new with the text prefix to match and formatting to apply when the condition is met.
Evaluates whether the cell's text value begins with the specified prefix and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell is blank or contains only whitespace.
Initializes a new with default formatting.
Initializes a new with the specified formatting to apply when the condition is met.
Evaluates whether the cell is blank or contains only whitespace and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell's text value contains a specified substring.
Initializes a new with the text substring to search for and formatting to apply when the condition is met.
Evaluates whether the cell's text value contains the specified substring and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell's text value ends with a specified text string.
Initializes a new with the text suffix to match and formatting to apply when the condition is met.
Evaluates whether the cell's text value ends with the specified suffix and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell is not blank and contains non-whitespace content.
Initializes a new with default formatting.
Initializes a new with the specified formatting to apply when the condition is met.
Evaluates whether the cell contains non-whitespace content and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting when a cell's text value does not contain a specified substring.
Initializes a new with the text substring to exclude and formatting to apply when the condition is met.
Evaluates whether the cell's text value does not contain the specified substring and returns 1.0 if true, 0.0 otherwise.
The cell value
Conditional formatting rule that applies formatting to cells containing the smallest values in a range, by rank or percentage.
Initializes a new with the specified unit type, rank count, and formatting to apply when the condition is met.
Specifies the number or percentage of bottom values to format, depending on the unit type.
Specifies whether the rank is interpreted as item count or percentage.
Specifies whether a conditional formatting rule's rank value is interpreted as item count or percentage.
Rank value interpreted as percentage of the total range.
Rank value interpreted as absolute number of items.
Initializes a new instance of the class.
Gets or sets a value that represents the occurrence period.
Conditional formatting rule that applies formatting to cells containing values that appear more than once in the rule's range.
Initializes a new with default formatting.
Initializes a new with the specified formatting to apply when the condition is met.
Specifies time periods for conditional formatting rules that compare dates against relative time ranges.
Matches dates occurring today.
Matches dates occurring yesterday.
Matches dates occurring tomorrow.
Matches dates occurring in the last 7 days.
Matches dates occurring in the current month.
Matches dates occurring in the next month.
Matches dates occurring in the previous month.
Matches dates occurring in the current week.
Matches dates occurring in the next week.
Matches dates occurring in the previous week.
Conditional formatting rule that applies formatting to cells containing the largest values in a range, by rank or percentage.
Initializes a new with the specified unit type, rank count, and formatting to apply when the condition is met.
Specifies the number or percentage of top values to format, depending on the unit type.
Specifies whether the rank is interpreted as item count or percentage.
Conditional formatting rule that applies formatting to cells containing values that appear exactly once in the rule's range.
Initializes a new with default formatting.
Initializes a new with the specified formatting to apply when the condition is met.
Specifies how cell values compare to the average value in a range for conditional formatting rules.
Values greater than the average value in the range.
Values greater than or equal to the average value in the range.
Values less than the average value in the range.
Values less than or equal to the average value in the range.
Applies differential formatting to cells based on their position relative to the average of a range, supporting above, below, and equal-to-average conditions.
Initializes a new with the specified value distribution condition and differential formatting.
Applies gradient color formatting to cells based on their numeric distance between minimum and maximum values, creating a visual heatmap effect.
Initializes a new with the specified color scale value context defining the range and colors.
Gets the color scale value context that defines the minimum and maximum values, colors, and optional midpoint settings for gradient calculation.
Renders horizontal data bars within cells based on their numeric values relative to the range minimum and maximum, with customizable colors, gradients, and axis positioning.
Initializes a new with the specified data bar value context defining the range bounds.
Gets or sets the minimum length of the data bar as a percentage of the cell width, ensuring bars remain visible even for the smallest values.
The minimum length represented as a percentage of the cell length.
Gets or sets the maximum length of the data bar as a percentage of the cell width, capping the bar for the largest values.
The maximum length represented as a percentage of the cell length.
Gets or sets the fill color for positive-value data bars, supporting theme-based or explicit colors.
Gets or sets the border color for positive-value data bars when borders are enabled.
Gets or sets the fill color for negative-value data bars, allowing distinct styling for values below zero.
Gets or sets whether data bars use gradient fill from the fill color to white, creating a shaded appearance.
Gets or sets the border color for negative-value data bars when borders are enabled.
Gets or sets whether the numeric cell value text is rendered alongside the data bar.
Gets or sets the color of the vertical axis line that separates positive and negative data bars, defaulting to black.
Gets or sets the axis position for the data bar, controlling whether bars grow from the cell edge, midpoint, or auto-calculated position.
Gets or sets the direction in which data bars grow within the cell, such as left-to-right or right-to-left.
Gets or sets whether data bars display a border, using the configured border colors.
Gets or sets whether only the data bars are visible, hiding the underlying numeric cell values.
Gets the data bar value context that defines the minimum and maximum values for calculating bar lengths.
Displays icons in cells based on numeric value thresholds, categorizing data into 3, 4, or 5 ranges with distinct visual indicators.
Initializes a new with a custom icon set value context defining thresholds and icons.
Initializes a new with a preset icon set and optional reversal of icon order.
Gets or sets whether the numeric cell value text is rendered alongside the icon.
Gets the icon set value context that defines the value thresholds and associated icons for each range.
Gets whether the icon set order is reversed, swapping icons for highest and lowest value ranges.
Gets or sets whether only the icon is visible, hiding the underlying numeric cell value.
Abstract base for conditional formatting rules that evaluate a single argument, supporting both absolute values and formula expressions.
Initializes a new with the specified argument and differential formatting.
Gets the evaluated cell value of the argument, resolved from the raw argument string or formula.
Abstract base for color scale value contexts that define minimum and maximum values with associated colors for gradient conditional formatting.
Initializes a new , the base for all color scale value contexts.
Gets or sets the color applied to cells at the minimum value threshold in the gradient scale.
Gets or sets the color applied to cells at the maximum value threshold in the gradient scale.
Gets or sets the minimum value threshold for the color scale, which cannot be of type HighestValue.
Gets or sets the maximum value threshold for the color scale, which cannot be of type LowestValue.
Defines a three-color gradient scale with minimum, midpoint, and maximum value thresholds and their associated colors for conditional formatting.
Initializes a new .
Initializes a new with specified minimum, midpoint, and maximum values and their associated colors.
The minimum value.
The color associated with the minimum value.
The midpoint value.
The color associated with the midpoint value.
The maximum value.
The color associated with the maximum value.
Gets or sets the color applied to cells at the midpoint value threshold in the three-color gradient.
Gets or sets the midpoint value threshold between minimum and maximum, supporting Percent, Percentile, Number, and Formula types.
Defines a two-color gradient scale with minimum and maximum value thresholds and their associated colors for conditional formatting.
Initializes a new .
Initializes a new with specified minimum and maximum values and their associated colors.
The minimum value.
The color associated with the minimum value.
The maximum value.
The color associated with the maximum value.
Defines the minimum and maximum value thresholds for calculating data bar lengths in conditional formatting.
Initializes a new with automatic minimum and maximum values.
Gets or sets the minimum value threshold for data bar calculation, which cannot be of type HighestValue.
Gets or sets the maximum value threshold for data bar calculation, which cannot be of type LowestValue.
Defines five value range thresholds and their associated icons for classifying cell values in icon set conditional formatting.
Initializes a new .
Initializes a new with four range thresholds and five associated icons.
The first range.
The icon that is associated with the first range.
The second range.
The icon that is associated with the second range.
The third range.
The icon that is associated with the third range.
The fourth range.
The icon that is associated with the fourth range.
The icon that is associated with the fift range.
Gets or sets the icon displayed for values in the first (lowest) range.
Gets or sets the icon displayed for values in the second range.
Gets or sets the icon displayed for values in the third (middle) range.
Gets or sets the icon displayed for values in the fourth range.
Gets or sets the icon displayed for values in the fifth (highest) range.
Gets or sets the first range threshold that defines the lower bound for the second icon.
Gets or sets the second range threshold that defines the lower bound for the third icon.
Gets or sets the third range threshold that defines the lower bound for the fourth icon.
Gets or sets the fourth range threshold that defines the lower bound for the fifth icon, which also auto-calculates Range5.
Gets the fifth (highest) range, automatically calculated from Range4 to cover all remaining values.
Configures icon set conditional formatting with four threshold ranges, assigning distinct icons to cells based on which range their value falls into.
Initializes a new FourIconSetValueContext with default settings.
Initializes a new FourIconSetValueContext with the specified threshold ranges and associated icons.
The first range.
The icon that is associated with the first range.
The second range.
The icon that is associated with the second range.
The third range.
The icon that is associated with the third range.
The icon that is associated with the fourth range.
Gets or sets the icon displayed for cells whose values fall within the first range.
Gets or sets the icon displayed for cells whose values fall within the second range.
Gets or sets the icon displayed for cells whose values fall within the third range.
Gets or sets the icon displayed for cells whose values fall within the fourth range.
Gets or sets the first threshold range, defining the lower boundary and operator for icon assignment.
Gets or sets the second threshold range, defining the next boundary and operator for icon assignment.
Gets or sets the third threshold range, which automatically calculates the fourth range's inverse condition.
Gets the fourth threshold range, automatically derived from Range3 to cover remaining values.
Defines a threshold boundary for icon set conditional formatting, combining a comparison operator with a threshold value to determine icon assignment.
Initializes a new IconSetRange with default settings.
Gets or sets the comparison operator used to evaluate whether cell values match this threshold range.
Gets or sets the boundary value used with the threshold operator to define this range.
Specifies comparison operators for evaluating icon set threshold ranges.
Matches values strictly greater than the threshold.
Matches values greater than or equal to the threshold.
Matches values strictly less than the threshold.
Matches values less than or equal to the threshold.
Base class for icon set conditional formatting contexts, managing threshold ranges and icon resolution for cell values.
Initializes a new icon set value context base.
Configures icon set conditional formatting with three threshold ranges, assigning distinct icons to cells based on which range their value falls into.
Initializes a new ThreeIconSetValueContext with default settings.
Initializes a new ThreeIconSetValueContext with the specified threshold ranges and associated icons.
The first range.
The icon that is associated with the first range.
The second range.
The icon that is associated with the second range.
The icon that is associated with the third range.
Gets or sets the icon displayed for cells whose values fall within the first range.
Gets or sets the icon displayed for cells whose values fall within the second range.
Gets or sets the icon displayed for cells whose values fall within the third range.
Gets or sets the first threshold range, defining the lower boundary and operator for icon assignment.
Gets or sets the second threshold range, which automatically calculates the third range's inverse condition.
Gets the third threshold range, automatically derived from Range2 to cover remaining values.
Base class for conditional formatting contexts that apply visual formatting based on value ranges across cells.
Initializes a new range value context base.
Specifies an automatic maximum threshold that resolves to the highest value in the conditional formatting range.
Initializes a new automatic maximum value that resolves at evaluation time.
Gets the value type, always AutomaticHighestValue.
Specifies an automatic minimum threshold that resolves to the lowest value in the conditional formatting range.
Initializes a new automatic minimum value that resolves at evaluation time.
Gets the value type, always AutomaticLowestValue.
Specifies a threshold value calculated dynamically from a formula expression for conditional formatting rules.
Initializes a new FormulaValue with the specified formula expression.
Gets the value type, always Formula.
Gets the formula expression used to calculate the threshold value.
Defines a fixed numeric threshold value for conditional formatting range calculations.
Gets the numeric threshold value.
Defines a value that can be assigned to range-based conditional formatting rules such as data bars, color scales, and icon sets.
The value type that determines how the value is calculated or interpreted within the conditional formatting range.
Specifies the highest value in the applied range for use in conditional formatting rules.
Initializes a new instance representing the highest value in the conditional formatting range.
The value type, always for this range value.
Specifies the lowest value in the applied range for use in conditional formatting rules.
Initializes a new instance representing the lowest value in the conditional formatting range.
The value type, always for this range value.
Specifies a fixed numeric threshold for conditional formatting rules.
Initializes a new instance with the specified numeric threshold value.
The value type, always for this range value.
The numeric threshold value used in conditional formatting evaluation.
Specifies a percentile-based threshold for conditional formatting, where the value is determined by the specified percentile within the range.
Initializes a new instance with the specified percentile value between 0 and 100.
The value type, always for this range value.
The percentile value (0-100) that determines the threshold position within the data distribution.
Specifies a percentage-based threshold for conditional formatting, where the value is calculated as a percentage of the range span.
Initializes a new instance with the specified percentage value between 0 and 100.
The value type, always for this range value.
The percentage value (0-100) used to calculate the threshold relative to the minimum and maximum of the range.
Specifies how a threshold value is calculated or interpreted in range-based conditional formatting rules.
A fixed numeric value.
A value calculated from a formula expression.
A percentage of the range span between minimum and maximum values.
A value at the specified percentile position within the data distribution.
The highest value in the range.
The lowest value in the range.
The highest value, automatically determined based on the conditional formatting context.
The lowest value, automatically determined based on the conditional formatting context.
Configuration for a data validation rule that accepts any value without restrictions.
Initializes a new context that allows any cell value without validation constraints.
Base class providing common configuration for data validation rules including input prompts and error alerts.
Whether to display an input message when the cell is selected.
The value indicating whether an input message should be shown.
The title displayed in the input message prompt.
The input message title.
The content text displayed in the input message prompt.
The content of the input message.
Whether to display an error alert when invalid data is entered.
The value indicating whether an input message should be shown.
The severity style of the error alert, controlling whether invalid input is blocked or only warned.
The error style.
The title displayed in the error alert dialog.
The error message title.
The content text displayed in the error alert dialog.
The content of the error alert.
Initializes a new context with default settings for input and error messages.
Base configuration context for data validation rules that use a single argument expression for evaluation.
Controls whether empty cells bypass validation and are considered valid regardless of the rule.
The value indicating if blank cells should be ignored.
Expression or value used as the primary validation criterion, which may be a literal value or a formula reference.
The first argument.
Cell location where the validation rule is defined, used as the base reference for relative formula expressions.
The index of the cell.
Worksheet containing the validated cells, required for evaluating formula-based validation arguments.
The worksheet.
Initializes a new instance of the class.
The worksheet.
Index of the row.
Index of the column.
Initializes a new instance of the class.
Configuration context for list-based data validation rules that restrict cell values to a predefined list of options.
Controls whether a dropdown selector is displayed in the cell for choosing from the list of valid values.
The a value indicating if an cell dropdown should be shown.
Initializes a new instance of the class.
The worksheet.
Index of the row.
Index of the column.
Initializes a new instance of the class.
The worksheet.
Index of the cell.
Configuration context for numeric data validation rules that validate cell values using comparison operators and numeric boundaries.
Comparison operator used to evaluate the cell value against the validation arguments.
The comparison operator.
Second boundary value for range-based comparisons such as Between and NotBetween operators.
The second argument.
Initializes a new instance of the class.
The worksheet.
Index of the row.
Index of the column.
Initializes a new instance of the class.
The worksheet.
Index of the cell.
Severity level for data validation error alerts, controlling whether users can override invalid input.
Blocks invalid input and prevents the user from entering values that fail validation.
Displays a warning but allows the user to accept invalid input by choosing to proceed.
Shows an informational message but permits invalid input without requiring user confirmation.
Contract for data validation rules that validate cell values and provide input prompts and error alerts.
Indicates whether an input prompt is displayed when the cell is selected, guiding users on valid input.
The value indicating whether an input message should be shown.
Title text displayed in the input prompt when the user selects a validated cell.
The input message title.
Descriptive text in the input prompt explaining valid values or constraints to the user.
The content of the input message.
Indicates whether an error alert is displayed when the user enters invalid data.
The value indicating whether an input message should be shown.
Severity level of the error alert, determining whether invalid input is blocked or allowed.
The error style.
Title text displayed in the error alert dialog when validation fails.
The error alert title.
Descriptive text in the error alert explaining why the input was rejected.
The content of the error alert.
Evaluates whether the specified cell value satisfies the validation rule and returns the validation result.
The worksheet.
Index of the row.
Index of the column.
The cell value.
Retrurns True if the rule is satisfied, else returns False.
Validation rule that accepts any cell value without restrictions, used primarily for displaying input messages.
Initializes a new that permits all input values.
The context.
Evaluates the validation rule and always returns true since any value is considered valid.
The worksheet.
Index of the row.
Index of the column.
The cell value.
Retrurns True if the rule is satisfied, else returns False.
Abstract base for data validation rules, providing common infrastructure for input messages, error alerts, and validation evaluation.
Indicates whether an input prompt is displayed when the cell is selected, guiding users on valid input.
The value indicating whether an input message should be shown.
Title text displayed in the input prompt when the user selects a validated cell.
The input message title.
Descriptive text in the input prompt explaining valid values or constraints to the user.
The content of the input message.
Indicates whether an error alert is displayed when the user enters invalid data.
The value indicating whether an input message should be shown.
Severity level of the error alert, determining whether invalid input is blocked or allowed.
The error style.
Title text displayed in the error alert dialog when validation fails.
The error alert title.
Descriptive text in the error alert explaining why the input was rejected.
The content of the error alert.
Initializes a new from the specified configuration context.
The context.
Evaluates whether the specified cell value satisfies the validation rule and returns the validation result.
The worksheet.
Index of the row.
Index of the column.
Retrurns True if the rule is satisfied, else returns False.
Override to implement rule-specific validation logic that determines whether the cell value is valid.
The worksheet.
Index of the row.
Index of the column.
The cell value.
Retrurns True if the rule is satisfied, else returns False.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Abstract base for data validation rules that evaluate cell values using a single argument expression, with support for blank cell handling.
Controls whether empty cells bypass validation and are considered valid regardless of the rule.
The value indicating if blank cells should be ignored.
Cell location where the validation rule is defined, used as the base reference for relative formula expressions.
The index of the cell.
Primary validation criterion expression or value used to evaluate cell validity.
The first argument.
Initializes a new from the specified single-argument validation context.
The context.
Converts the validation argument to a string representation, translating formulas to the specified cell location.
The expression result.
The worksheet.
Index of the row.
Index of the column.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Computes a hash code for this validation rule based on its configuration properties.
A hash code for the current .
Evaluates a validation argument expression and returns its numeric result for comparison.
The argument.
The worksheet.
Index of the row.
Index of the column.
Abstract base for numeric data validation rules that compare cell values against numeric boundaries using comparison operators.
Comparison operator used to evaluate the cell value against the validation arguments.
The comparison operator.
Second boundary value for range-based comparisons such as Between and NotBetween operators.
The second argument.
Indicates whether the rule restricts input to whole numbers without decimal fractions.
The value indicating if the rule requires whole numbers as a result of the argument expression.
Initializes a new from the specified numeric validation context.
The context.
Evaluates the numeric validation rule by comparing the cell value against the configured numeric boundaries.
The worksheet.
Index of the row.
Index of the column.
The cell value.
Retrurns True if the rule is satisfied, else returns False.
Compares the cell value against the validation arguments using the configured comparison operator.
The cell value result.
The argument1.
The argument2.
Retrurns True if the rule is satisfied, else returns False.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Validation rule using a custom formula expression that returns a boolean result determining cell validity.
Initializes a new with a formula expression that determines validity.
The context.
Evaluates the custom formula expression and returns true if the result is a boolean true value.
The worksheet.
Index of the row.
Index of the column.
The cell value.
Retrurns True if the rule is satisfied, else returns False.
Validates that cell input contains date values within specified comparison criteria.
Initializes a new with the specified comparison context.
The context.
Validates that cell input contains decimal numbers within specified comparison criteria.
Initializes a new with the specified comparison context.
The context.
Validates that cell input matches one of the values in a specified list or range.
Controls whether a dropdown arrow appears in the cell to display available list values.
The a value indicating if an cell dropdown should be shown.
Initializes a new with the specified list source and dropdown settings.
The context.
Evaluates whether the specified cell value matches any item in the list.
The worksheet.
Index of the row.
Index of the column.
The cell value.
Retrurns True if the rule is satisfied, else returns False.
Extracts the list items defined by this rule for the specified cell location.
The worksheet.
Index of the cell.
Extracts the list items defined by this rule for the specified cell location.
The worksheet.
Index of the row.
Index of the column.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Validates that the character count of cell text meets specified comparison criteria.
Initializes a new with the specified comparison context.
The context.
Evaluates whether the character count of the cell value satisfies the length comparison criteria.
The worksheet.
Index of the row.
Index of the column.
The cell value.
Retrurns True if the rule is satisfied, else returns False.
Validates that cell input contains time values within specified comparison criteria.
Initializes a new with the specified comparison context.
The context.
Validates that cell input contains whole numbers (integers) within specified comparison criteria.
Indicates that this rule enforces integer values only, rejecting fractional components.
The value indicating if the rule requires whole numbers as a result of the expressions.
Initializes a new with the specified comparison context.
The context.
Manages column-based filtering for a worksheet range, hiding or showing rows based on applied filter criteria.
Gets or sets the range to which filtering is applied, including the header row with column names.
The range of the filter.
Applies multiple filters to the filtered range in a single operation.
The filters.
Applies the specified filter to its target column, replacing any existing filter on that column.
The filter.
Retrieves the filter applied to the specified column, or null if no filter exists on that column.
The column index relative to the filter range.
The filter applied to the column, or null if the column is not filtered.
Removes the specified filter and unhides rows that were hidden solely by that filter.
The filter.
A value indicating whether the filter was successfully found and removed.
Removes the filter from the specified column and unhides rows that were hidden solely by that filter.
The column index relative to the filter range.
A value indicating whether the filter was successfully found and removed.
Removes all filters from all columns and unhides all filtered rows.
Reapplies the specified filter to re-evaluate row visibility based on current cell values.
The filter.
Reapplies the filter on the specified column to re-evaluate row visibility based on current cell values.
The column index relative to the filter range.
Base for filters that evaluate cell values to determine whether rows should be hidden or visible.
Provides the cell value property definition used to retrieve values for filter evaluation.
The property definition.
Initializes a new instance of the class.
The relative index of the column.
Defines a single comparison criterion for , specifying a relational operator and target value.
Gets the relational operator used to compare cell values (e.g., equals, greater than, less than).
The comparison operator.
Gets the target value against which cell values are compared, stored as a string but parsed to appropriate types.
The filter value.
Initializes a new instance of the class.
The comparison operator.
The filter value to which the cell value will be compared.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Filters rows by matching cell background fill color against a specified fill; use for visual grouping in filtered data.
Gets the target background fill that cells must match to pass the filter.
The fill.
Gets the cell fill property definition used to retrieve fill values from cells.
The property definition.
Initializes a new instance of the class.
Relative index of the column.
The fill.
Determines whether the row containing the specified fill matches the filter's target fill, accounting for theme color resolution.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Filters rows by comparing cell values against one or two custom criteria using relational operators; use for range-based or multi-condition filtering.
Gets the first comparison criterion applied to filter cell values.
The first criteria.
Gets the second comparison criterion, if specified. This is used together with and combined using the ; returns null if only one criterion is set.
The second criteria.
Gets the logical operator (AND or OR) used to combine the two criteria when both are present.
The logical operator.
Initializes a new instance of the class.
Relative index of the column.
The criteria.
Initializes a new instance of the class.
Relative index of the column.
The first criteria.
The logical operator.
The second criteria.
Determines whether the row containing the specified cell value passes the filter criteria and should be shown.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Defines a date/time grouping criterion for , matching values by year, month, day, hour, minute, or second components.
Gets the level of date/time granularity used for matching (year only, month, day, hour, minute, or second).
The grouping type of the item.
Gets the year component used for matching date values.
The year.
Gets the month component (1-12) used for matching when grouping type is Month or more granular.
The month.
Gets the day component (1-31) used for matching when grouping type is Day or more granular.
The day.
Gets the hour component (0-23) used for matching when grouping type is Hour or more granular.
The hour.
Gets the minute component (0-59) used for matching when grouping type is Minute or Second.
The minute.
Gets the second component (0-59) used for matching when grouping type is Second.
The second.
Initializes a new instance of the class.
The year.
Initializes a new instance of the class.
The year.
The month.
Initializes a new instance of the class.
The year.
The month.
The day.
Initializes a new instance of the class.
The year.
The month.
The day.
The hour.
Initializes a new instance of the class.
The year.
The month.
The day.
The hour.
The minute.
Initializes a new instance of the class.
The year.
The month.
The day.
The hour.
The minute.
The seconds.
Initializes a new instance of the class.
Type of the date time grouping.
The year.
The month.
The day.
The hour.
The minute.
The second.
Determines whether the specified date matches this item's criteria. Compares year, month, day, hour, minute, and/or second components based on the grouping type.
The date.
A value indicating whether the specified date satisfies the item.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Specifies the date/time component granularity for filtering, from year-level down to second-level precision.
Groups dates by year only, ignoring month, day, and time components.
Groups dates by year and month, ignoring day and time components.
Groups dates by year, month, and day, ignoring time components.
Groups dates by year, month, day, and hour, ignoring minute and second components.
Groups dates by year, month, day, hour, and minute, ignoring second component.
Groups dates by year, month, day, hour, minute, and second for full precision matching.
Filters rows based on dynamic date/time criteria (e.g., Today, This Month, Last Year) or numeric criteria (Above/Below Average); recalculates on each evaluation.
Gets the dynamic filter criterion (date-relative, time period, or average comparison) applied to cell values.
The type of the dynamic filter.
Initializes a new instance of the class.
Relative index of the column.
Type of the dynamic filter.
Retrieves the cell value at the specified row and column, interpreting numeric values as dates when formatted as such.
The cells of the worksheet.
Index of the row.
Index of the column.
The value of the cell.
Determines whether the row containing the specified date or numeric value satisfies the dynamic filter criterion.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Specifies the criterion type for , including relative date periods, specific months/quarters, and average comparisons.
No filter applied; all rows pass.
Shows rows with numeric values greater than the column's average.
Shows rows with numeric values less than the column's average.
Shows rows with dates matching tomorrow's date (relative to execution time).
Shows rows with dates matching today's date (relative to execution time).
Shows rows with dates matching yesterday's date (relative to execution time).
Shows rows with dates falling in next week (7 days ahead of current week).
Shows rows with dates falling in the current week (Sunday through Saturday containing today).
Shows rows with dates falling in last week (7 days prior to current week).
Shows rows with dates falling in next calendar month.
Shows rows with dates falling in the current calendar month.
Shows rows with dates falling in last calendar month.
Shows rows with dates falling in next fiscal quarter (Q1: Jan-Mar, Q2: Apr-Jun, Q3: Jul-Sep, Q4: Oct-Dec).
Shows rows with dates falling in the current fiscal quarter.
Shows rows with dates falling in last fiscal quarter.
Shows rows with dates falling in next calendar year.
Shows rows with dates falling in the current calendar year.
Shows rows with dates falling in last calendar year.
Shows rows with dates from January 1st of the current year through today.
Shows rows with dates falling in the first fiscal quarter (January through March).
Shows rows with dates falling in the second fiscal quarter (April through June).
Shows rows with dates falling in the third fiscal quarter (July through September).
Shows rows with dates falling in the fourth fiscal quarter (October through December).
Shows rows with dates falling in January of any year.
Shows rows with dates falling in February of any year.
Shows rows with dates falling in March of any year.
Shows rows with dates falling in April of any year.
Shows rows with dates falling in May of any year.
Shows rows with dates falling in June of any year.
Shows rows with dates falling in July of any year.
Shows rows with dates falling in August of any year.
Shows rows with dates falling in September of any year.
Shows rows with dates falling in October of any year.
Shows rows with dates falling in November of any year.
Shows rows with dates falling in December of any year.
Abstract base for filters that evaluate cell properties of type to determine row visibility; provides property retrieval and copying behavior.
The type of the property definition of the filter.
Gets the zero-based column offset within the filter range to which this filter applies.
The relative index of the column.
Gets the cell property definition specifying which property to retrieve for filter evaluation.
The property definition.
Initializes a new instance of the class.
Index of the relative column.
Retrieves the property value from the cell at the specified row and column, respecting style inheritance.
The cells of the worksheet.
Index of the row.
Index of the column.
The value of the cell.
Evaluates whether the row containing the specified property value passes the filter criterion and should be visible.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Copies the specified item with a new relative index.
New relative index.
The new item
Exception thrown when filter operations encounter invalid configurations, unsupported criteria, or operation failures.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
The message.
The key.
Initializes a new instance of the class.
The message.
The inner exception.
Initializes a new instance of the class.
The message.
The inner exception.
The key.
Copies the specified item with a new relative index.
New relative index.
The new item
Logical operators that combine two custom filter criteria into a single filter condition.
Both criteria must be satisfied for the filter to match.
Either criterion can be satisfied for the filter to match.
Filter that displays rows whose cell values match any value in a predefined list of strings, dates, or blank entries.
Text values to match against formatted cell content; matching is case-insensitive.
The string values.
Date group items representing hierarchical date/time criteria (year, month, day) for filtering date-formatted cells.
The date items.
Whether to include rows with empty or whitespace-only cell values in the filtered results.
The value indicating whether the cells containing blank values should be shown by the filter.
Initializes a values filter matching the specified string values, excluding blanks.
Relative index of the column.
The string values.
Initializes a values filter matching the specified date group items, excluding blanks.
Relative index of the column.
The date values.
Initializes a values filter matching the specified string values with optional blank inclusion.
Relative index of the column.
The string values.
The value indicating whether the cells containing blank values should be shown by the filter.
Initializes a values filter matching the specified date group items with optional blank inclusion.
Relative index of the column.
The date values.
The value indicating whether the cells containing blank values should be shown by the filter.
Initializes a values filter matching both string and date group items, excluding blanks.
Relative index of the column.
The string values.
The date values.
Initializes a values filter matching string values, date group items, and optionally blank cells.
Relative index of the column.
The string values.
The date values.
The value indicating whether the cells containing blank values should be shown by the filter.
Retrieves the cell value formatted as a string or DateTime based on the cell's number format for filter comparison.
The cells of the worksheet.
Index of the row.
Index of the column.
The value of the cell.
Evaluates whether the value matches any entry in the string list, date groups, or blank criteria.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Filters rows by matching cell text (foreground) color against a specified color; use for visual grouping in filtered data.
Gets the target text color that cells must match to pass the filter.
The fore color.
Gets the cell fore color property definition used to retrieve text color values from cells.
The property definition.
Initializes a new instance of the class.
Index of the relative column.
The color.
Determines whether the row containing the specified text color matches the filter's target color, accounting for theme color resolution.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Common contract for filters that control row visibility in AutoFilter ranges by evaluating cell values.
Column index within the filter range where this filter applies, zero-based relative to the first column of the filter range.
The relative index of the column.
Retrieves the cell value at the specified position, transforming it as needed for filter evaluation.
The cells of the worksheet.
Index of the row.
Index of the column.
The value of the cell.
Evaluates whether the row containing the specified value should remain visible based on the filter criteria.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Filter that displays only the top or bottom N items or percentage of items by numeric value in a column.
Filter type controlling whether to show top or bottom items by count or percentage.
The type of the top filter.
Number of items or percentage (depending on filter type) to display from the sorted column values.
The value.
Initializes a new top filter showing the top 10 numeric values by default.
The relative index of the column.
Initializes a new top filter with the specified filter type and count or percentage threshold.
The relative index of the column.
Type of the top filter.
Gets the value which indicates how many or what percent of the items covered by the filter should be shown.
Evaluates whether the numeric value ranks within the configured top or bottom threshold.
The value retrieved by the GetValue method.
A value indicating whether the row which contains the specified value will be shown
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Modes for selecting top or bottom items by count or percentage in a TopFilter.
Shows the N highest numeric values in the column.
Shows the N lowest numeric values in the column.
Shows the top N% of values ranked by magnitude in the column.
Shows the bottom N% of values ranked by magnitude in the column.
Defines the style, color, and thickness of a cell border edge.
The default cell border.
Gets the line style of this border (solid, dashed, dotted, etc.).
The style.
Gets the color of this border, which may reference a theme color.
The color.
Gets the line thickness of this border in device-independent units, determined by the border style.
The thickness.
Initializes a new with the specified style and color.
The style.
The color.
Implements the equals operator.
The first value.
The second value.
The result of the operator.
Implements the not equals operator.
The first value.
The second value.
The result of the operator.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Compares two borders and returns the one with higher visual priority based on thickness and color intensity.
The left border.
The right border.
The color scheme.
The border with higher priority according to the color scheme.
Calculates the line thickness for the specified border style.
The border style.
The thickness.
Defines the border styling for all edges of a cell or cell range, including outline, inside, and diagonal borders.
The default borders of a cell.
Gets or sets the border on the left edge of the cell.
The left border.
Gets or sets the border on the top edge of the cell.
The top border.
Gets or sets the border on the right edge of the cell.
The right border.
Gets or sets the border on the bottom edge of the cell.
The bottom border.
Gets or sets the border for horizontal lines inside a cell range.
The inside horizontal border.
Gets or sets the border for vertical lines inside a cell range.
The inside vertical border.
Gets or sets the border for the diagonal line from bottom-left to top-right.
The diagonal up border.
Gets or sets the border for the diagonal line from top-left to bottom-right.
The diagonal down border.
Initializes a new instance of the class.
Initializes a new applying the same border to all edges.
The cell border to be applied on all sides of the cell.
Initializes a new with individual borders for each edge and diagonal.
The left border.
The top border.
The right border.
The bottom border.
The inside horizontal border.
The inside vertical border.
The diagonal up border.
The diagonal down border.
Implements the equals operator.
The first value.
The second value.
The result of the operator.
Implements the not equals operator.
The first value.
The second value.
The result of the operator.
Creates a border configuration with the specified border applied to the outer edges only.
The border to be applied to the top, right, bottom and left sides of the cell.
The outline.
Creates a border configuration with individual borders applied to each outer edge.
The left border.
The top border.
The right border.
The bottom border.
The outline.
Creates a border configuration with the specified border applied to inside horizontal and vertical lines.
The border to be applied to the inner borders of a cell.
The inside group of borders.
Creates a border configuration with separate borders for inside horizontal and vertical lines.
The inside horizontal border.
The inside vertical border.
The inside group of borders.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Defines line styles for cell borders, including solid, dashed, dotted, and double lines with various thicknesses.
None cell border style.
Hair cell border style.
Dotted cell border style.
DashDotDot cell border style.
DashDot cell border style.
Dashed cell border style.
Thin cell border style.
MediumDashDotDot cell border style.
MediumDashDot cell border style.
MediumDashed cell border style.
Double cell border style.
Medium cell border style.
SlantDashDot cell border style.
Thick cell border style.
Identifies a specific cell by its row and column indices within a worksheet.
Gets the zero-based row index of this cell.
The index of the row.
Gets the zero-based column index of this cell.
The index of the column.
Initializes a new with the specified row and column indices.
Index of the row.
Index of the column.
Creates a new cell index by adding the specified offsets to this cell's row and column, returning null if the result is out of bounds.
The row offset.
The column offset.
The new cell index.
Converts this cell index to a unique numeric representation for internal storage and comparison.
A numeric representation of the current index.
Returns a that represents the current
.
A that represents the current .
Abstract base for cell index and position classes, providing row and column coordinates with comparison and equality operations.
Initializes a new CellIndexBase for derived cell index types.
Gets the zero-based row index of the cell.
The index of the row.
Gets the zero-based column index of the cell.
The index of the column.
Returns a that represents the current
.
A that represents the current .
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Implements the equals operator.
The left value.
The right value.
The result of the operator.
Implements the not equals operator.
The left value.
The right value.
The result of the operator.
Implements the less operator.
The left value.
The right value.
The result of the operator.
Implements the greater operator.
The left value.
The right value.
The result of the operator.
Implements the less or equal operator.
The left value.
The right value.
The result of the operator.
Implements the greater or equal operator.
The left value.
The right value.
The result of the operator.
Compares this cell index to another and returns a value indicating their relative order (row-major, then column).
The other.
Defines the merge state of a cell, indicating whether it is standalone, the top-left anchor, or a covered cell in a merged range.
Cell is not part of any merged range.
Cell is the top-left anchor of a merged range, displaying the content for the entire range.
Cell is covered by a merged range and does not display content independently.
Defines the text orientation of a cell, controlling whether content flows horizontally or vertically.
Text flows left-to-right across the cell.
Text flows top-to-bottom down the cell.
Defines a rectangular selection of cells within a worksheet, bounded by row and column indices, supporting operations like offset, intersection, and containment checks.
A single-cell empty range at position (0,0).
Gets the top-left cell index of the range.
The start index.
Gets the bottom-right cell index of the range.
The end index.
Gets the number of rows spanned by the range.
The row count.
Gets the number of columns spanned by the range.
The column count.
Gets whether the range contains exactly one cell (1 row × 1 column).
The value indicating if the cell range is single cell range.
Initializes a new instance of the class.
Start row index.
Start column index.
End row index.
End column index.
Initializes a new instance of the class.
Start index.
End index.
Creates a new range by shifting this range by the specified row and column offsets, or returns null if out of bounds.
The row offset.
The column offset.
The created cell range.
Gets the first row.
The cell range of the first row.
Gets the last row.
The cell range of the last row.
Gets the first column.
The cell range of the first column.
Gets the last column.
The cell range of the last column.
Checks whether the range includes the specified cell index.
The index.
The value indicating whether the range contains the specified index.
Checks whether the range includes the cell at the specified row and column.
Index of the row.
Index of the column.
The value indicating whether the range contains the specified index.
Checks whether this range fully contains the specified cell range.
The cell range.
The value indicating whether the range contains the specified range.
Checks whether this range overlaps with another cell range.
The other cell range.
The value indicating whether the present instance intersects with another cell range.
Computes the overlapping region between this range and another, or returns if no overlap.
The other cell range.
The intersection.
Creates a range spanning all columns in the specified row.
Index of the row.
The cell range of the specified row.
Creates a cell range of a range of rows.
Start row.
End row.
The cell range.
Creates a range spanning all rows in the specified column.
Index of the column.
The cell range of the specified column.
Creates a cell range of a range of columns.
Start column.
End column.
The cell range.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Returns a that represents the current
.
A that represents the current .
A collection of cell ranges that automatically updates stored ranges when rows or columns are inserted or removed from the worksheet.
Gets the cell ranges.
The cell ranges.
Gets the count.
The count.
Replaces an old range with a new range after worksheet insert or remove operations.
The old range.
The new range.
Adds a cell range to the collection.
The cell range.
Removes a cell range from the collection.
The cell range.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Abstract base for collections that track and update cell ranges when worksheet structure changes due to insert or remove operations.
Gets the cell ranges.
The cell ranges.
Gets or sets the cells.
The cells.
Checks whether inserting or removing the specified range with the given shift would be valid for this collection.
The selected range.
Type of the shift.
The value indicating whether the specified selected range can be inserted or removed from this instance.
Determines whether this instance can insert or remove the selected range depending on some existing range and a given shift type.
Type of the shift.
The range.
The selected range.
True if the selected range can be inserted or removed.
Translates the range.
The old range.
The new range.
Checks if should translate up or down.
Type of the range.
A value indicating whether should translate up or down.
Checks if should translate left or right.
Type of the range.
A value indicating whether should translate left or right.
Translates the ranges.
The old and new translated ranges positions.
Called before translation.
The old and new translated ranges positions.
The range to insert or remove.
Type of the shift.
Called after translation.
The old and new translated ranges positions.
The range to insert or remove.
Type of the shift.
A dictionary-backed collection mapping cell ranges to elements, automatically updating ranges when worksheet structure changes.
Gets the count.
The count.
Gets the worksheet.
The worksheet.
Gets the cell ranges.
The cell ranges.
Gets the elements.
The elements.
Adds an element associated with the specified cell range to the collection.
The cell range.
The element.
Removes the element associated with the specified cell range from the collection.
The cell range.
Translates the range.
The old range.
The new range.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
A list-backed collection of cell ranges that preserves insertion order and updates ranges when worksheet structure changes.
Initializes a new instance of the class.
The cells.
Gets the ranges list.
The ranges list.
Gets the cell ranges.
The cell ranges.
Translates the range.
The old range.
The new range.
Removes the cell range at the specified index from the ordered list.
The index.
Inserts a cell range at the specified index in the ordered list.
The index.
The range.
Defines the scope of a range insert or remove operation: entire rows, entire columns, or partial cells within rows or columns.
Operation affects entire rows across all columns.
Operation affects entire columns across all rows.
Operation affects cells within specific rows, shifting horizontally.
Operation affects cells within specific columns, shifting vertically.
Event arguments describing a cell range insert or remove operation, including the affected range and operation type.
Gets the full range of cells affected by the insert or remove operation, including cells beyond the operation range.
The affected range.
Gets the range where the insert or remove operation was applied.
The range.
Gets the scope of the operation: entire rows, entire columns, or partial cells.
The type of the range.
Gets whether the operation is a remove (true) or insert (false).
The value indicating whether the type of change is remove.
Initializes a new instance of the class.
The range.
Type of the range.
The value indicating whether the type of change is remove.
Represents a reference to a single cell with absolute or relative row and column addressing, used in formulas for cell-based calculations.
Gets the resolved zero-based row index after evaluating relative references.
The actual index of the row.
Gets the resolved zero-based column index after evaluating relative references.
The actual index of the column.
Gets whether the row reference is absolute (does not change when formula is copied).
A value indicating whether the row is absolute.
Gets whether the column reference is absolute (does not change when formula is copied).
A value indicating whether the column is absolute.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Gets the start cell reference.
The start cell reference.
Gets the end cell reference.
The end cell reference.
Gets the rows count.
The rows count.
Gets the columns count.
The columns count.
Gets a value indicating whether the range is within the valid boundaries.
The value indicating whether the range is within the valid boundaries.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Returns a that represents the current
.
A that represents the current .
Represents a rectangular range of cell references with absolute or relative addressing, used in formulas to reference contiguous cell areas.
Gets the top-left cell reference of the range.
The start cell reference.
Gets the bottom-right cell reference of the range.
The end cell reference.
Gets the number of rows spanned by the reference range.
The rows count.
Gets the number of columns spanned by the reference range.
The columns count.
Gets whether the reference range lies within valid worksheet boundaries.
The value indicating whether the range is within the valid boundaries.
Gets the worksheet to which this cell reference range belongs.
The worksheet.
Gets the cell reference range.
The cell reference range.
The cell reference range as CellReferenceRange.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Returns a that represents the current
.
A that represents the current .
Provides access to the cells in a worksheet, managing their values, formatting, data validation, and merged ranges with sparse storage.
Gets the maximum number of rows in the worksheet.
The row count.
Gets the maximum number of columns in the worksheet.
The column count.
Gets the with the specified row and column indices.
The cell selection.
Gets the with the specified cell index.
The cell selection.
Gets the with the specified start row index, start column index, end row index and end column index.
The cell selection.
Gets the with the specified start and end indices.
The cell selection.
Gets the with the specified cell range.
The cell selection.
Gets the with the specified cell ranges.
The cell selection.
Checks whether cells can be inserted starting at the specified position without violating constraints like merged ranges or filters.
Index of the row.
Index of the column.
The item count.
Type of the shift.
The value indicating whether cells can be inserted at the specified row index.
Determines whether cells can be inserted at the specified cell range.
The cell range.
Type of the shift.
The value indicating whether cells can be inserted at the specified cell range.
Inserts empty cells at the specified range, shifting existing cells down or right, and returns whether the operation succeeded.
The cell range.
Type of the shift.
The value indicating whether the insertion was successful.
Inserts the specified number of items at the specified location.
Index of the row.
Index of the column.
The item count.
Type of the shift.
The value indicating whether the insertion was successful.
Removes cells at the specified range and shifts remaining cells up or left to fill the gap.
The cell range.
Type of the shift.
Removes the specified number of items at the specified location.
Index of the row.
Index of the column.
The item count.
Type of the shift.
Gets cell selection.
Index of the row.
Index of the column.
The cell selection.
Gets cell selection.
Index of the cell.
The cell selection.
Gets cell selection.
Start row index.
Start column index.
End row index.
End column index.
The cell selection.
Gets cell selection.
Start index.
End index.
The cell selection.
Gets cell selection.
The cell range.
The cell selection.
Gets the cell selection.
The cell ranges.
The cell selection.
Tries to get the merged range containing the index.
Index of the cell.
The merged range.
The value indicating whether precisely a range was found.
Gets the value indicating whether the cell index is contained in a merged range.
Index of the cell.
The value indicating whether the cell index is contained in a merged range.
Gets the merge state.
Index of the cell.
The merge state.
Gets the merge state.
Index of the row.
Index of the column.
The merge state.
Gets the merged cell ranges.
The cell ranges.
Gets the merged ranges containing the specified cell range.
The range.
The merged ranges containing the specified cell range.
Occurs when a cell range is inserted or removed.
Raises the event.
The instance containing the event data.
Occurs when merged cells are changed.
Raises the event.
The instance containing the event data.
Occurs when a cell property is changed.
Raises the event.
The instance containing the event data.
Provides operations on a selection of one or more cell ranges, enabling batch setting of values, formatting, formulas, and data validation.
Sets the borders.
The value.
Retrieves the cell value(s) from the selection, returning a single value if uniform or an indeterminate result if mixed.
Returns the value of the selection.
Gets the conditional formatting elemenets that are active in the current selection.
Updates an existing conditional formatting element's cell range, applying it on the current selection ranges.
The added conditional formatting
Adds a conditional formatting elemenet to the worksheet, applying it on the current selection ranges.
The added conditional formatting
Removes the a given formatting elemenets that is active in the current selection.
Sets all cells in the selection to the specified date-time value and applies short date formatting if the cell format is default.
The value.
Sets all cells in the selection to the specified numeric value.
The value.
Sets all cells in the selection to the specified boolean value.
The value.
Parses and sets the string value for all cells in the selection; prefer typed overloads for better performance.
Please note that the string value is parsed to find its type. This process is slow.
If you know the type of your data use the other overloads of this method.
The value.
Sets all cells in the selection to the specified value as literal text, bypassing number and formula parsing.
The value.
Sets all cells in the selection to the specified formula string, which will calculate dynamically.
The value.
Sets the value.
The value.
Clears the value.
Merges this instance.
The value indicating whether the merge was successful.
Merges the instance across.
The value indicating whether the merge was successful.
Unmerges this instance.
Copies this instance.
The worksheet fragment.
Determines whether the specified fragment can be copied.
The fragment.
The value indicating whether the specified fragment can be copied.
Pastes the specified fragment.
The fragment.
The paste options.
The value indicating whether the paste was successful.
Pastes the specified fragment.
The fragment.
The paste options.
The new shapes.
Determines whether the specified fragment can be pasted.
The fragment.
The paste result.
Pastes the specified fragment.
The fragment.
The paste options.
The affected cell ranges.
The new shapes.
The value indicating whether the paste was successful.
Inserts this instance using the specified shift type.
Type of the shift.
Removes the instance using the specified shift type.
Type of the shift.
Determines whether the selected range can be inserted or removed using the specified shift type.
The selected range.
Type of the shift.
The value indicating whether the selected range can be inserted or removed using the specified shift type.
Does linear data series fill.
The series orientation.
The step value.
The stop value.
Does trend data series fill.
The series orientation.
Does exponential data series fill.
The series orientation.
The step value.
The stop value.
Does exponential and trend data series fill.
The series orientation.
Does date data series fill.
The series orientation.
Type of the date unit.
The step value.
The stop value.
Does auto data series fill.
The series orientation.
The respect ranges direction.
The initial value count.
Fills data.
The direction.
Gets the data validation rule.
Sets the data validation rule.
The value.
Clears the data validation rule.
Sorts the selected cells using the specified sort conditions.
The sort conditions.
Sets the specified filters to the cell selection.
The filters.
Abstract base for strongly-typed cell value implementations, managing value storage, formatting, and string conversion.
The type of the underlying value.
Gets the type of the value.
The type of the value.
Gets the evaluated value type after formula calculation; same as for non-formula values.
The type of the result value.
Gets the unformatted string representation of the stored value.
The raw value.
Gets the strongly-typed value stored in the cell.
The value.
Initializes a new instance of the class.
The value.
Converts the cell value to a string using the specified format, caching the result for performance.
The format.
Clears the cached string representation, forcing it to be recalculated on next access.
Gets the value as string override.
The format.
Converts the evaluated result value to a formatted string for display.
The format.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Factory for creating cell value instances from various input types; use to convert strings, numbers, dates, and formulas into appropriate ICellValue implementations.
Converts a string to a cell value by parsing its content at the specified cell location; string is analyzed to determine if it contains a number, date, formula, or text.
The value.
The worksheet.
Index of the cell.
Please note that the string value is parsed to find its type. This process is slow.
If you know the type of your data use the other overloads of this method.
The ICellValue instance.
Converts a string to a cell value by parsing its content at the specified row and column; string is analyzed to determine if it contains a number, date, formula, or text.
The value.
The worksheet.
Index of the row.
Index of the column.
Please note that the string value is parsed to find its type. This process is slow.
If you know the type of your data use the other overloads of this method.
The ICellValue instance.
Retrieves the cell value at the specified cell index from the worksheet.
The value.
The worksheet.
The ICellValue instance.
Converts a double value to a number cell value.
The value.
The ICellValue instance.
Converts a boolean value to a boolean cell value.
The value.
The ICellValue instance.
Converts a DateTime value to a number cell value representing the date; apply a date format to the cell to display as a date instead of a number.
The value.
Please note the date is stored as number value. If a date number format is not set to the cell the value will be shown as number.
The ICellValue instance.
Converts a string to a text cell value without parsing; use when you want to store the string as literal text regardless of content.
The value.
The TextCellValue instance.
Converts a string to a formula cell value by parsing it as an Excel formula at the specified location.
The value.
The worksheet.
Index of the row.
Index of the column.
The FormulaCellValue instance.
Determines the cell value type that corresponds to a constant expression; returns the appropriate CellValueType for the expression's result.
The expression.
The cell value type.
Creates a cell value from a string by parsing its content and determining the appropriate format; outputs both the cell value and any detected format.
The value.
The worksheet.
Index of the cell.
The current format value.
The cell value.
The new format value.
Creates a cell value from a string by parsing its content at the specified location and determining the appropriate format; outputs both the cell value and any detected format.
The value.
The worksheet.
Index of the row.
Index of the column.
The current format value.
The cell value.
The format value.
Creates a number cell value from a double.
The value.
The ICellValue instance.
Creates a boolean cell value from a bool.
The value.
The ICellValue instance.
Creates a number cell value from a DateTime by converting it to Excel's date serial number format.
The value.
The ICellValue instance.
Creates a text cell value from a string without parsing or type detection.
The value.
The ICellValue instance.
Creates a formula cell value by parsing the string as an Excel formula expression at the specified location.
The value.
The worksheet.
Index of the row.
Index of the column.
The ICellValue instance.
Number format pattern for displaying cell values; applies format strings to control how numbers, dates, times, and text appear in cells.
Default general format that displays values without any special formatting rules.
Format pattern string that controls how cell values are displayed.
The format string.
Metadata about the format string including its category and type.
The format string information.
Initializes a new with the specified format pattern string.
The format string.
Applies this format to a cell value and returns the formatted result with color, culture, and condition information.
The cell value.
The format result.
Determines whether two cell value formats are equal by comparing their format strings.
The first value.
The second value.
The result of the operator.
Determines whether two cell value formats are not equal by comparing their format strings.
The first value.
The second value.
The result of the operator.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Cell value types indicating the content category (empty, number, text, formula, boolean, rich text, or error).
Cell contains no content.
Cell contains a numeric value.
Cell contains a boolean value (TRUE or FALSE).
Cell contains an expression that calculates dynamically.
Cell contains plain text.
Cell contains text with formatting (fonts, colors, styles).
Cell contains an error value (#DIV/0!, #N/A, etc.).
Specifies what content to clear from cells: all data, only formatting, only values, or only hyperlinks.
Clears all content including values, formatting, and hyperlinks.
Clears only formatting properties while preserving cell values and hyperlinks.
Clears cell values and formulas while preserving formatting and hyperlinks.
Clears only hyperlinks while preserving cell values and formatting.
Manages all columns in a worksheet, providing access to column properties, widths, and visibility.
The total number of columns in the worksheet.
The row / column count.
Accesses a single column by index, returning a selection for applying properties or operations.
The column selection.
Accesses a range of columns by start and end indices, returning a selection for batch operations.
The column selection.
Accesses the column containing the specified cell index.
The column selection.
Accesses the columns intersecting the specified cell range.
The column selection.
Accesses the columns intersecting a collection of cell ranges.
The column selection.
Checks whether the specified number of columns can be inserted at the given index without exceeding worksheet limits.
The index.
The item count.
The value indicating whether this instance can be inserted at the specified index
Inserts the specified number of columns at the given index, shifting existing columns to the right.
The index.
The item count.
Removes the specified number of columns starting at the given index, shifting remaining columns to the left.
The index.
The item count.
Creates a selection for the column at the specified index.
The index.
The column selection.
Creates a selection for the range of columns between the start and end indices.
From index.
To index.
The column selection.
Creates a selection for the column containing the specified cell index.
Index of the cell.
The column selection.
Creates a selection for the columns intersecting the specified cell range.
The cell range.
The column selection.
Creates a selection for the columns intersecting a collection of cell ranges.
The cell ranges.
The column selection.
Retrieves the default width applied to all columns without explicit width settings.
The column width
Sets the default width for all columns without explicit width settings.
The width.
Raised when one or more column widths change, providing the affected column index range.
A selection of one or more worksheet columns for applying properties, formatting, and operations in batch.
Applies border styling to all cells in the selected columns.
The value.
Extracts the start and end column indices from a cell range.
The cell range.
From index.
To index.
Retrieves the width value for the selected columns, indicating whether the value is uniform or varies.
The width for the selection.
Applies the specified width to all selected columns.
The value.
Resets the width of selected columns to the default worksheet column width.
Calculates and applies the optimal width for selected columns based on their content.
Expands column widths to accommodate numeric values without truncation, preserving custom widths.
Retrieves the outline grouping level for the selected columns.
The outline level.
Hides or shows the selected columns in the worksheet view.
The value indicating whether the selected columns are hidden.
Retrieves whether the selected columns are hidden in the worksheet view.
The value of the hidden property
Makes the selected columns visible if they are currently hidden.
Inserts new columns at the position of the selected columns, shifting existing columns to the right.
The value indicating whether the insert was successful.
Deletes the selected columns from the worksheet, shifting remaining columns to the left.
Defines a column width value in worksheet units, indicating whether it is user-defined or auto-calculated.
Initializes a new with the specified width value and custom flag.
The value.
The is custom.
Event arguments providing the column index range affected by a width change operation.
The zero-based index of the first column in the changed range.
The start index.
The zero-based index of the last column in the changed range.
The end index.
Initializes a new with the affected column range.
From index.
To index.
Base class for reporting the outcome of copy-paste operations in worksheets.
Whether the paste operation completed successfully without errors.
The value indicating whether the paste was successful.
The error message describing why the paste operation failed, or empty if successful.
The error message.
Initializes a new result with the specified success state and optional error details.
The success.
The error message.
The error message localization key.
Specifies the unit of time for date-based operations and calculations.
Calendar day, including weekends and holidays.
Business day, excluding weekends (Saturday and Sunday).
Calendar month.
Calendar year.
Cell value for cells with no content; use to represent blank or uninitialized cells.
Singleton instance representing an empty cell.
Returns CellValueType.Empty.
The type of the value.
Gets the value as string override.
The format.
Gets the result value as string.
The format.
Cell value for formula errors and invalid operations; stores error indicators like #DIV/0!, #REF!, #VALUE!, #N/A, #NAME?, #NUM!, and #NULL!.
Error value #NULL! indicating an invalid intersection of ranges.
Error value #DIV/0! indicating division by zero.
Error value #VALUE! indicating an invalid value type for an operation.
Error value #REF! indicating an invalid cell reference.
Error value #NAME? indicating an unrecognized name in a formula.
Error value #NUM! indicating an invalid numeric value in a function.
Error value #N/A indicating a value is not available.
Error value #SPILL! indicating that the spill range is blocked.
Error value #CALC! indicating that the result dimensions are unbounded.
Returns CellValueType.Error.
The type of the value.
Provides a type-filtered view over a workbook's sheet collection, exposing only sheets of a specific type.
The type of the sheet.
Gets the workbook that owns this sheet collection.
The workbook.
Gets the number of sheets of type T in the collection.
The item count.
Gets the sheet of type T at the specified zero-based index.
Gets the sheet of type T with the specified name (case-insensitive).
Creates a new sheet of type T and appends it at the end of the collection.
The created sheet.
Creates a new sheet of type T and inserts it at the specified zero-based index.
The index.
The created sheet.
Searches for the specified sheet and returns its zero-based index, or -1 if not found.
The item.
The index of the item.
Searches for a sheet by name (case-insensitive) and returns its zero-based index, or -1 if not found.
Name of the sheet.
The index of the item
Checks whether a sheet with the specified name (case-insensitive) exists in the collection.
Name of the sheet.
The value indicating whether the collection contains a sheet with the specified sheet name.
Checks whether the specified sheet exists in the collection.
The item.
The value indicating whether the collection contains the specified sheet.
Retrieves the sheet with the specified name (case-insensitive), or null if not found.
Name of the sheet.
The sheet.
Removes the sheet at the specified zero-based index from the collection and workbook.
The index.
Removes the sheet with the specified name (case-insensitive) from the collection and workbook.
Name of the sheet.
The value indicating whether a sheet by the specified name was found.
Removes the specified sheet from the collection and workbook.
The item.
The value indicating whether the specified sheet was found.
Hides the sheet at the specified zero-based index, making it invisible in the workbook.
The index.
Hides the specified sheet, making it invisible in the workbook.
The sheet.
Unhides the sheet at the specified zero-based index, making it visible in the workbook.
The index.
Unhides the specified sheet, making it visible in the workbook.
The sheet.
Removes all sheets of type T from the collection and workbook.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Direction for traversing cells during find and replace operations within a worksheet.
Search proceeds horizontally across each row before moving to the next row.
Search proceeds vertically down each column before moving to the next column.
Cell content type to search within during find and replace operations.
Searches the raw formula text as entered by the user (e.g., "=SUM(A1:A10)").
Searches the formatted display text as it appears in the cell after evaluation and formatting.
Configuration for find operations specifying search criteria, scope, direction, and matching rules.
Text pattern to search for; supports wildcards (* and ?) unless escaped.
The searched string.
Gets the searched string as regex.
The searched string regex.
Gets the find what regex options.
The find what regex options.
Scope controlling whether to search only the current sheet or across the entire workbook.
The find within option.
Direction for traversing cells, either row-by-row or column-by-column.
The find by option.
Cell content type to search within: raw formula text or formatted display values.
The find in option.
Whether to perform case-sensitive matching; when false, comparisons ignore case.
The value indicating whether the match case option should be used.
Whether to match only when the search pattern equals the entire cell content, not just a substring.
The value indicating whether the option to match entire cell contents should be used.
Cell position where the search begins; subsequent searches wrap around if no match is found.
The start cell.
Optional collection of cell ranges to limit the search scope; if null, searches the entire configured scope.
The search ranges.
Initializes find options with default settings: search by rows within the current sheet in formula content.
Copies all search configuration properties from another FindOptions instance into this one.
The options.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Sets the search string regex.
Result of a find operation containing the located cell position and its raw and formatted values.
Worksheet and cell index identifying the matched cell location.
The found cell.
Formatted display text of the cell after evaluating formulas and applying number formatting.
The result value.
Unformatted underlying value of the cell, such as the formula text or the numeric value as text.
The raw value.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Search scope specifying whether to search within a single sheet or across the entire workbook.
Search only within the current worksheet.
Search across all worksheets in the workbook.
Configures text replacement operations in worksheets, combining find criteria with replacement text.
Initializes a new ReplaceOptions with default find and replace settings.
Gets or sets the replacement text that will substitute matched occurrences.
The value to replace with.
Copies all find and replace settings from another ReplaceOptions instance to this one.
The options.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Immutable descriptor for font characteristics including family, size, weight, style, color, and underline used in cell formatting.
Gets the typeface family name used to render text.
The font family.
Gets the font size in points.
The size of the font.
Gets whether the font uses bold weight.
The value indicating whether the font is bold.
Gets whether the font uses italic style.
The value indicating whether the font is italic.
Gets whether the font uses strikethrough decoration.
The value indicating whether the font is strikethrough.
Gets the vertical text alignment (none, superscript, or subscript) applied to the font.
The vertical text alignment.
Gets the underline style applied to text (None, Single, Double, etc.).
The underline.
Gets the text color, which may reference a theme color or an explicit RGB value.
The font color.
Gets the platform-specific font weight derived from IsBold.
The font weight.
Gets the platform-specific font style derived from IsItalic.
The font style.
Gets or sets whether the font is monospaced (fixed-width), determined by font family or explicit override.
The value indicating whether the text is monospaced.
Initializes a new with the specified family, size, and weight.
The font family.
Size of the font.
The value indicating whether the font is bold.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Implements the equals operator.
The left value.
The right value.
The result of the operator.
Implements the not equals operator.
The left value.
The right value.
The result of the operator.
Cell value for formula expressions that calculate dynamically; holds the expression tree and recalculates when dependencies change.
Formula string as entered by the user (e.g., "=SUM(A1:A10)").
The raw value.
Returns CellValueType.Formula.
The type of the value.
Type of the calculated result after the formula evaluates (e.g., Number, Text, Error).
The type of the result value.
Indicates that this formula was entered as a legacy CSE (Ctrl+Shift+Enter) array formula.
Used solely to round-trip the legacy CSE.
This flag has no effect on evaluation — spilling is determined by whether the expression tree
returns an at runtime.
The fixed array range for a legacy CSE formula (the "ref" attribute value).
Only meaningful when is true.
Evaluates the formula and returns the result formatted as a string.
The format.
The result value string.
Gets the value as string override.
The format.
The value as string.
Evaluates the formula expression and returns the calculated result as a cell value.
The cell value.
Creates a new instance of FormulaCellValue and, if necessary, translates it using the targetCellIndex.
The method is used for when copying, pasting and setting new value.
The target worksheet.
Index of the target row.
Index of the target column.
The on overflow start over.
New instance of FormulaCellValue
Updates the worksheet name of its CellReferenceRange and SpreadsheetName expressions.
Updates the workbook name of its SpreadsheetName expressions.
Updates the SpreadsheetName name of its expression tree.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Two-color gradient fill for cell backgrounds, blending between Color1 and Color2 along the specified direction.
Gets the gradient direction and pattern (Horizontal, Vertical, DiagonalUp, FromCenter, etc.).
The type of the gradient.
Gets the starting color in the gradient blend.
The first color.
Gets the ending color in the gradient blend.
The second color.
Initializes a new with the specified direction and explicit RGB colors.
Type of the gradient.
The first color.
The second color.
Initializes a new with the specified direction and theme-aware colors.
Type of the gradient.
The first color.
The second color.
Determines whether the specified is equal
to the current .
The object to compare with the current object.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Defines gradient directions and patterns for two-color fills in cells.
Blends from left to right.
Blends from right to left.
Blends horizontally with repeated transitions.
Blends from top to bottom.
Blends from bottom to top.
Blends vertically with repeated transitions.
Blends diagonally from bottom-left to top-right.
Blends diagonally from top-right to bottom-left.
Blends diagonally upward with repeated transitions.
Blends diagonally from top-left to bottom-right.
Blends diagonally from bottom-right to top-left.
Blends diagonally downward with repeated transitions.
Radiates from the top-left corner outward.
Radiates from the top-right corner outward.
Radiates from the bottom-left corner outward.
Radiates from the bottom-right corner outward.
Radiates from the cell center outward.
Configures summary row and column placement for row/column outline groups in a worksheet.
Gets or sets whether summary rows appear below their detail rows (true) or above (false) when outlining is applied.
The summary row is below.
Gets or sets whether summary columns appear to the right of their detail columns (true) or to the left (false) when outlining is applied.
The summary column is to the right.
Manages hyperlinks attached to cell ranges in a worksheet, tracking links through insert/remove operations.
Initializes a new for the specified worksheet.
The worksheet.
Adds a hyperlink to the specified cell and returns the created hyperlink instance.
Index of the cell.
The hyperlink info.
The new hyperlink.
Adds a hyperlink to the specified cell range, replacing any existing hyperlink in that exact range, and applies hyperlink styling.
The cell range.
The hyperlink info.
The new hyperlink.
Removes the specified hyperlink and reverts its cells to default styling.
The hyperlink.
The value indicating whether the remove was successful.
Checks whether the specified hyperlink exists in the collection by range equality.
The hyperlink.
A value indicating whether the collection contains the specified hyperlink.
Finds all hyperlinks whose ranges overlap with the specified cell range.
The cell range.
The collection of intersecting hyperlinks.
Finds all hyperlinks whose ranges are fully contained within the specified cell range.
The cell range.
The collection of contained hyperlinks.
Finds all hyperlinks whose ranges are fully contained within any of the specified cell ranges.
The cell ranges.
The collection of contained hyperlinks.
Attempts to find any hyperlink intersecting the specified cell range, returning the last one if multiple exist.
The cell range.
The hyperlink.
The value indicating whether a hyperlink was found.
Attempts to find any hyperlink intersecting the specified cell, returning the last one if multiple exist.
Index of the cell.
The hyperlink.
The value indicating whether a hyperlink was found.
Attempts to find a hyperlink with a range that exactly matches the specified cell range.
The cell range.
The hyperlink.
The value indicating whether a hyperlink was found.
Adds the specified element when cellRange is inserted.
The cell range.
The element.
Removes elements when cellRange is removed.
The cell range.
Raised after a hyperlink is added or removed from the collection.
Called when the collection is changed.
Immutable descriptor for hyperlink targets, including URL, email, and in-document addresses with optional screen tips.
Gets the primary target address (URL, email address, or empty for in-document links).
The address.
Gets the email subject line used when Type is Mailto.
The email subject.
Gets the tooltip text displayed when hovering over the hyperlink.
The screen tip.
Gets the in-document target (sheet name and range) used when Type is InDocument.
The sub address.
Gets the hyperlink category (Url, Mailto, or InDocument).
The type.
Creates a URL hyperlink with the specified web or file address and optional screen tip.
The address.
The screen tip.
The hyperlink information.
Creates an email hyperlink for the specified address.
The email address.
The hyperlink information.
Creates an email hyperlink with the specified address and subject line.
The email address.
The email subject.
The hyperlink information.
Creates an email hyperlink with the specified address, subject line, and screen tip.
The email address.
The email subject.
The screen tip.
The hyperlink information.
Creates a hyperlink navigating to a worksheet location within the same workbook (e.g., "Sheet1!A1:B5").
The sub address.
The screen tip.
The hyperlink information.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Defines categories of hyperlink targets (web/file URLs, email addresses, or in-document locations).
Links to a web page or file path.
Links to an email address, opening the default mail client.
Links to a cell range or named location within the same workbook.
Binds a hyperlink target to a cell range, combining location with navigation information.
Gets the cell range where this hyperlink is applied.
The cell range.
Gets the target address, type, and display settings for this hyperlink.
The hyperlink information.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Contract for all cell value implementations providing access to content, type, and formatted display.
Unformatted value as it was originally entered or stored.
The raw value.
Category of the cell's content (Empty, Number, Text, Formula, Boolean, RichText, or Error).
The type of the value.
Type of the evaluated result; for formulas, this is the type of the calculated result rather than Formula.
The type of the result value.
Converts the raw value to a formatted string for display or editing.
The format.
Converts the evaluated result to a formatted string; for formulas, this evaluates the expression first.
The format.
Marker interface for cell background fill types (PatternFill, GradientFill, or no fill).
Defines font styling properties for cell text including family, size, weight, style, color, and underline.
Gets the typeface family applied to the text.
The font family.
Gets the font size in points.
The size of the font.
Gets whether the text uses bold weight rendering.
The value indicating whether the font is bold.
Gets whether the text uses italic slant styling.
The value indicating whether the font is italic.
Gets whether the text has strikethrough decoration applied.
The value indicating whether the font is strikethrough.
Gets the vertical text alignment (none, superscript, or subscript) applied to the text.
The vertical text alignment.
Gets the underline style applied to the text.
The underline.
Gets the text color, supporting theme colors or explicit RGB values.
The font color.
Gets the numeric weight of the font, controlling thickness from light to heavy.
The font weight.
Gets the style variant of the font, such as normal or italic.
The font style.
Gets whether the font uses fixed-width character spacing.
The value indicating whether the text is monospaced.
Represents the string type.
Holds the text content for a single section (left, center, or right) within a header or footer.
Gets or sets the formatted text content, which may include formatting codes for page numbers, dates, and other dynamic values.
The text content.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Thrown when an error occurs during worksheet printing operations, such as invalid page setup or margin configuration.
Initializes a new instance of the class with a default message.
Initializes a new instance of the class with a specified error message.
The message.
Initializes a new instance of the class with a specified error message and localization key.
The message.
The key.
Initializes a new instance of the class with a specified error message and a reference to the inner exception.
The message.
The inner exception.
Initializes a new instance of the class with a specified error message, a reference to the inner exception, and localization key.
The message.
The inner exception.
The key.
Configures rows and columns to be repeated on each printed page, ensuring consistent headers or labels across multi-page prints.
Gets or sets the contiguous columns to be repeated on the left of each printed page, typically used for row labels.
Gets or sets the contiguous rows to be repeated at the top of each printed page, typically used for column headers.
Gets the value indicating whether there are print titles set.
Gets the collection of the repeated rows and columns of the printed titles.
Translates the ranges of the print titles when a change has been made in the worksheet which affects the ranges.
The range which was part of the print titles before the change.
The range which resulted after the change.
Manages the collection of horizontal and vertical page breaks for a worksheet, controlling pagination during printing.
Gets all horizontal page breaks, which split pages at specific row boundaries.
The horizontal page breaks.
Gets all vertical page breaks, which split pages at specific column boundaries.
The vertical page breaks.
Attempts to insert both horizontal and vertical page breaks at the specified cell, and returns whether at least one break was added.
Index of the row.
Index of the column.
True if succeeded.
Attempts to insert a horizontal page break at the specified row, and returns whether the operation succeeded.
Index of the row.
Index of the column.
True if succeeded.
Attempts to insert a vertical page break at the specified column, and returns whether the operation succeeded.
Index of the row.
Index of the column.
True if succeeded.
Attempts to remove both horizontal and vertical page breaks at the specified cell, and returns whether at least one break was removed.
Index of the row.
Index of the column.
True if succeeded.
Attempts to remove the horizontal page break at the specified row, and returns whether the operation succeeded.
Index of the row.
Index of the column.
True if succeeded.
Attempts to remove the vertical page break at the specified column, and returns whether the operation succeeded.
Index of the row.
Index of the column.
True if succeeded.
Removes all horizontal and vertical page breaks from the worksheet.
Manages the collection of cell ranges to be printed, allowing multiple non-contiguous areas to be specified for printing.
Gets the cell ranges currently configured for printing.
The ranges to print.
Gets whether any print area ranges have been defined, indicating that only specific areas will be printed.
The value indicating whether there are print ranges.
Replaces all existing print ranges with a single specified range.
The range.
Replaces all existing print ranges with the specified collection of ranges.
The ranges.
Attempts to add a range to the print area if it does not intersect with existing ranges, and returns whether the operation succeeded.
The range.
Attempts to add multiple ranges to the print area if they do not intersect with existing ranges, and returns whether the operation succeeded.
The ranges.
Determines whether the specified range can be added without intersecting with existing print ranges.
The range.
The value indicating wheter the specified range can be added.
Determines whether the specified ranges can be added without intersecting with existing print ranges.
The ranges.
The value indicating wheter the specified ranges can be added.
Removes all print area ranges, reverting to printing the entire used worksheet area.
Inserts the specified index.
The index.
The range.
Removes the cell range at.
The index.
Called before translation.
The old and new translated ranges positions.
The range to insert or remove.
Type of the shift.
Called after translation.
The old and new translated ranges positions.
The range to insert or remove.
Type of the shift.
Abstract base for sheet page setup, managing paper type, orientation, margins, and header/footer settings.
Gets or sets the paper type that determines the physical page dimensions for printing.
The type of the paper.
Gets or sets the page orientation (portrait or landscape) used when printing or exporting.
The page orientation.
Gets the page size in device-independent units, derived from the current paper type.
The size of the page.
Gets or sets the page margins that control spacing around the printable content.
The margins.
Gets the header and footer settings that define repeated content on each printed page.
The header footer settings.
Invalidates the sheet layout.
Suspends the sheet layout update.
Resumes the sheet layout update.
Configures page setup for worksheet printing and export, including scaling, page breaks, print area, and print titles.
Gets or sets the page order that determines whether multi-page content is printed down then across or across then down.
The page order.
Gets or sets whether the printed content is centered horizontally on the page.
The value indicating whether the print content should be centered horizontally.
Gets or sets whether the printed content is centered vertically on the page.
The value indicating whether the print content should be centered vertically.
Gets the print area that defines which cell ranges are printed when exporting or printing.
The print area.
Gets the page breaks that control where manual horizontal and vertical page boundaries are inserted.
The page breaks.
Gets or sets the scale factor as percentages for width and height, used when FitToPages is false.
The scale factor.
Gets or sets the number of pages tall the worksheet content will scale to fit when FitToPages is enabled.
Gets or sets the number of pages wide the worksheet content will scale to fit when FitToPages is enabled.
Gets or sets whether scaling is determined by FitToPagesWide and FitToPagesTall (when true) or by ScaleFactor (when false).
If true, the worksheet will be scaled according to the FitToPagesWide and FitToPagesTall values. If false, it will be scaled according to the ScaleFactor value.
Gets the print options that control gridline and heading visibility during print or export.
The print options.
Gets the print titles that define rows and columns to repeat on every printed page for improved readability.
Controls worksheet-specific print options including gridline and row/column heading visibility.
Gets or sets whether gridlines are printed with the worksheet content.
The value indicating whether to print gridlines.
Gets or sets whether row numbers and column letters are printed with the worksheet content.
The value indicating whether to print the row and column headings.
Manages the text content of a header or footer, divided into left, center, and right sections.
Gets the left-aligned section of the header or footer for displaying content on the left side.
The left section.
Gets the center-aligned section of the header or footer for displaying content in the middle.
The center section.
Gets the right-aligned section of the header or footer for displaying content on the right side.
The right section.
Gets whether the combined content of all sections is within the 255-character limit required for export.
Value indicating whether the length of the content is valid.
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Configures header and footer presentation for printed worksheets, including content for different page types and alignment behavior.
Gets or sets whether distinct headers and footers are used for odd and even pages during printing.
The value indicating whether there should be different headers and footers for odd and even pages.
Gets or sets whether a distinct header and footer is used for the first printed page.
The value indicating whether there should be different headers and footers on the first page.
Gets or sets whether headers and footers scale proportionally with document content when the print scale changes.
The value indicating whether headers and footers should scale using the document content scale factor.
Gets or sets whether headers and footers align with the page margins rather than the page edges.
The value indicating whether headers and footers should be aligned with the page margins.
Gets the default header content, which is used for odd pages when is true or for all pages otherwise.
The header content.
Gets the default footer content, which is used for odd pages when is true or for all pages otherwise.
The footer content.
Gets the header content for the first page, which is used when is true.
The first header content.
Gets the footer content for the first page, which is used when is true.
The first footer content.
Gets the header content for even-numbered pages, which is used when is true.
The even header content.
Gets the footer content for even-numbered pages, which is used when is true.
The even footer content.
Defines a horizontal or vertical page break at a specific row or column index, controlling where pages split during printing.
Gets the row or column index where the page break occurs.
The index.
Gets whether this is a horizontal (row) or vertical (column) page break.
The type.
Gets the starting column index (for horizontal breaks) or row index (for vertical breaks) where the break applies.
The starting index.
Gets the ending column index (for horizontal breaks) or row index (for vertical breaks) where the break applies.
The ending index.
Returns a that represents the current
.
A that represents the current .
Specifies whether a page break splits pages horizontally (at rows) or vertically (at columns).
Horizontal page break that splits pages at a row boundary.
Vertical page break that splits pages at a column boundary.
Defines the page margins for printed worksheets, including content margins and header/footer offsets.
Provides standard page margins (0.7" left/right, 0.75" top/bottom, 0.3" header/footer).
Provides wide page margins (1" left/right, 1" top/bottom, 0.5" header/footer).
Provides narrow page margins (0.25" left/right, 0.75" top/bottom, 0.3" header/footer).
Gets the left margin in device-independent pixels (1/96 inch).
The left margin.
Gets the bottom margin in device-independent pixels (1/96 inch).
The bottom margin.
Gets the right margin in device-independent pixels (1/96 inch).
The right margin.
Gets the top margin in device-independent pixels (1/96 inch).
The top margin.
Gets the distance from the top edge of the page to the header content, in device-independent pixels (1/96 inch).
The header margin.
Gets the distance from the bottom edge of the page to the footer content, in device-independent pixels (1/96 inch).
The footer margin.
Initializes a new instance of the class with all margins set to zero.
Initializes a new instance of the class with symmetric horizontal and vertical margins.
The left and the right margin.
The top and the bottom margin.
Initializes a new instance of the class with individual content margins.
The left margin.
The top margin.
The right margin.
The bottom margin.
Initializes a new instance of the class with uniform margins on all sides.
All margins.
Initializes a new instance of the class with symmetric content and header/footer margins.
The left and right margins.
The top and bottom margins.
The header and footer margins.
Initializes a new instance of the class with individual content and header/footer margins.
The left margin.
The top margin.
The right margin.
The bottom margin.
The header margin.
The footer margin.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Specifies whether pages are printed column-first (down then over) or row-first (over then down) when content spans multiple pages.
Prints pages vertically down columns before moving right to the next column.
Prints pages horizontally across rows before moving down to the next row.
Generic base for page setup that associates a sheet with strongly-typed print options.
The type of the T.
Gets the print options that control how the sheet is rendered for printing or export.
The print options.
Initializes a new associated with the specified sheet.
The sheet.
Abstract base for sheet print options that control rendering quality and appearance during print or export.
Contains all data requried to set and remove protection.
Gets or sets the enforced.
The enforced.
Gets or sets the name of the algorithm.
The name of the algorithm.
Gets or sets the hash.
The hash.
Gets or sets the salt.
The salt.
Gets or sets the spin count.
The spin count.
Gets or sets the password.
The password.
Indicates whether the data is produced using legacy protection scheme.
The is using legacy protection scheme.
Indicates whether a user password is required to remove protection.
The requires user password.
Tries the remove protection.
The input.
Enforces protection.
The input.
Contains helper methods for generating protection salt and hash values.
Generates the password using OOXML legacy scheme.
The password.
Exception thrown when a worksheet or workbook protection constraint is violated.
Initializes a new with the specified error message.
The message.
Initializes a new with a localizable message key.
The message.
The key.
Initializes a new wrapping an underlying exception.
The message.
The inner exception.
Initializes a new wrapping an inner exception with a localizable message key.
The message.
The inner exception.
The key.
Defines which operations users can perform on a protected worksheet, controlling row, column, cell, and filtering permissions.
Default protection options that disallow all modifications (all permission flags set to false).
Gets whether users can format cells (fonts, colors, borders) when the worksheet is protected.
The allow format cells.
Gets whether users can format columns (width, visibility, styles) when the worksheet is protected.
The allow format columns.
Gets whether users can format rows (height, visibility, styles) when the worksheet is protected.
The allow format rows.
Gets whether users can delete rows when the worksheet is protected.
The allow delete rows.
Gets whether users can insert new rows when the worksheet is protected.
The allow insert rows.
Gets whether users can delete columns when the worksheet is protected.
The allow delete columns.
Gets whether users can insert new columns when the worksheet is protected.
The allow insert columns.
Gets whether users can apply and modify autofilters when the worksheet is protected.
The allow filtering.
Gets whether users can sort cell ranges when the worksheet is protected.
The allow sorting.
Initializes a new with specific permission flags for each operation type.
The allow delete rows.
The allow insert rows.
The allow delete columns.
The allow insert columns.
The allow format cells.
The allow format columns.
The allow format rows.
The allow use autofilter.
The allow sorting.
Compares all permission flags and returns true if all match the specified object.
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Computes a hash code from all permission flags.
A hash code for the current .
Creates a copy of this protection options instance with identical permission flags.
The cloned instance.
Base class for ranges of rows or columns, tracking start and end indices for selection and operations.
Initializes a new instance of the class.
The start index of the range.
The end index of the range.
Initializes a new instance of the class.
The index of the range.
Gets the start index of the row or column range.
Gets the end index of the row or column range.
Serves as a hash function for a particular type.
A hash code for the current .
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Defines a continuous range of worksheet rows by start and end indices.
Initializes a new instance of the class.
The start index of the range.
The end index of the range.
Initializes a new instance of the class.
The index of the range.
Collection of chart shapes in a worksheet, providing methods to add and manage data-driven charts.
Initializes a new for the specified worksheet.
The worksheet.
Gets the shape type filtered by this collection, always returning Chart.
Creates a chart at the specified cell position based on the data range, automatically determining series orientation, and returns the chart shape.
The cell index where the top left corner of the shape is positioned.
The range containing the data that the chart will be based on.
The types of chart that will be created. Passing more than one type will create a combo chart.
The result chart shape.
Creates a chart at the specified cell position based on the data range with explicit series orientation control and returns the chart shape.
The cell index where the top left corner of the shape is positioned.
The range containing the data that the chart will be based on.
A value indicating whether the series of the chart will refer to vertical or horizontal ranges or the direction will be determined automatically.
The types of chart that will be created. Passing more than one type will create a combo chart.
The result chart shape.
Base collection for managing typed subsets of worksheet shapes, enabling filtered access and modification to shapes by type.
The type of the shape.
Gets the number of shapes of type T in the collection.
The item count.
Gets the shape at the specified zero-based index within the filtered collection.
Gets the shape type that this collection filters and manages.
Removes the specified shape from the collection and returns whether it was found and removed.
The item.
The value indicating whether the specified shape was found.
Determines whether the collection contains the specified shape.
The note.
A value indicating whether the collection contains the specified shape.
Searches for the specified shape and returns its zero-based index, or -1 if not found.
The item.
The index of the item.
Removes all shapes of type T from the collection.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Gets the layering order (ZIndex) of the specified shape, or -1 if not found.
The zero-based ZIndex. If the item is not found in the collection, -1 is returned.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Adds a shape to the collection and the underlying worksheet.
The item.
Gets the worksheet that owns this shape collection.
The worksheet.
Invoked before adding a shape to the collection, enabling cancellation via the event args.
Invoked before removing a shape from the collection, enabling cancellation via the event args.
Raised before a shape is added or removed, allowing the operation to be canceled.
Raises the event.
The instance containing the event data.
Raised after a shape is added, removed, or the collection is cleared.
Raises the event.
The instance containing the event data.
Floating shape that embeds a chart within a worksheet, supporting visual data representation with positioning and sizing.
Gets the shape type, always Chart for this shape.
Gets or sets the chart displayed by this shape, defining all visual and data series.
Initializes a new instance of the class.
The worksheet that the shape is associated with.
The cell index where the top left corner of the shape is positioned.
The range containing the chart data.
The types of chart that will be created. Passing more than one type will create a combo chart.
Initializes a new instance of the class.
The worksheet that the shape is associated with.
The cell index where the top left corner of the shape is positioned.
The range containing the chart data.
A value indicating whether the series of the chart will refer to vertical or horizontal ranges or the direction will be determined automatically.
The types of chart that will be created. Passing more than one type will create a combo chart.
Gets the border outline styling for the chart shape.
Gets or sets the background fill styling for the chart shape.
Floating shape that displays an image within a worksheet, supporting positioning, sizing, and rotation.
Gets the shape type, always Image for this shape.
Gets or sets the image data source for this shape.
The image source.
Gets or sets whether resizing operations maintain aspect ratio relative to the original image dimensions.
The prefer relative to original resize.
Initializes a new instance of the class.
The worksheet assigned to the image.
The cell index where the top left corner of the shape is positioned.
The left offset of the top left corner of the shape relative to the top left corner of the cell index.
The top offset of the top left corner of the shape relative to the top left corner of the cell index.
Abstract base for floating shapes that expose settable position and size properties, allowing direct manipulation of cell anchoring and dimensions.
Initializes a new floating resizable shape anchored to the specified cell with pixel offsets, wrapping the provided shape element.
The worksheet assigned to the floating resizable shape.
The shape assigned to the floating resizable shape.
The cell index where the top left corner of the floating resizable shape is positioned.
The left offset of the top left corner of the floating resizable shape relative to the top left corner of the cell index.
The top offset of the top left corner of the floating resizable shape relative to the top left corner of the cell index.
Cell where the shape's top-left corner is anchored, defining the primary position reference.
The cell index where the top left corner of the shape is positioned.
Horizontal offset in pixels from the anchor cell's left edge to the shape's left edge, allowing precise sub-cell positioning.
The left offset.
Vertical offset in pixels from the anchor cell's top edge to the shape's top edge, allowing precise sub-cell positioning.
The top offset.
Width of the shape in pixels, settable directly without invoking commands.
The width of the shape.
Height of the shape in pixels, settable directly without invoking commands.
The height of the shape.
Categorizes floating shapes by their primary function (image, chart, note, comment) to route type-specific operations and rendering.
Raster or vector image displayed as a floating visual element.
Chart shape containing data visualizations bound to worksheet cell ranges.
Legacy cell annotation displayed as a floating text box.
Modern threaded comment displayed as a floating callout with reply support.
Abstract base for floating shapes that support rotation and flip transformations, automatically adjusting anchor positions to maintain visual consistency.
Initializes a new transformable shape with rotation support, computing whether the initial rotation angle requires anchor adjustment.
The worksheet assigned to the floating transformable shape.
The shape assigned to the floating transformable shape.
The cell index where the top left corner of the floating transformable shape is positioned.
The left offset of the top left corner of the floating transformable shape relative to the top left corner of the cell index.
The top offset of the top left corner of the floating transformable shape relative to the top left corner of the cell index.
Rotation angle in degrees, clockwise from the upright position; certain ranges (45-135°, 225-315°) trigger automatic anchor repositioning.
The rotation angle of the shape.
Applies a new rotation angle via command, optionally adjusting the anchor cell to maintain the visual top-left corner position.
The rotation angle.
A value indicating whether the top cell index and offset of the image should be adjusted.
Controls whether the shape is mirrored horizontally, flipping content left-to-right around the vertical axis.
The value indicating whether the shape is horizontally flipped.
Controls whether the shape is mirrored vertically, flipping content top-to-bottom around the horizontal axis.
The value indicating whether the shape is vertically flipped.
Recalculates anchor after rotation-aware resize to maintain visual top-left corner, applying rotation offset correction and worksheet boundary constraints.
When the rotation angle of a shape is in the ranges 45 - 135 and 225 - 315, the cell index changes to the cell index where
the top left point of the shape is located when it is rotated at 90 degrees. This method ensures the cell index
is adjusted when the rotation is changed.
Represents the collection containing the shapes included in the sheet.
Represents the offset between the pictures when they are inserted through the InsertPicture command.
Gets the count of the shapes.
The count of the shapes.
Gets the worksheet.
The worksheet.
Initializes a new instance of the class.
The worksheet.
Adds the specified shape to the collection.
The shape.
Adds the specified shapes to the collection.
The shapes.
Removes the specified shape from the collection.
The shape.
True if removed.
Removes the specified shapes from the collection.
The shapes.
Determines whether a shape is in the collection.
The shape.
true if shape is found in the collection; otherwise, false.
Removes all elements from the collection.
Gets or sets the at the specified index.
The at the specified index.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Enumerates the collection in reversed order.
A reversed enumeration of the elements in the collection.
Gets the ZIndex of the specified shape.
The zero-based ZIndex. If the item is not found in the collection, -1 is returned.
Gets the ZIndex of the specified shape by its id.
The shape id.
The zero-based ZIndex. If the item is not found in the collection, -1 is returned.
Occurs when the collection has been changed.
Called when [changed].
Abstract base for all floating shape elements positioned over worksheet cells with anchoring, providing shared identity, naming, and geometry management.
Discriminates the shape category (Image, Chart, Note, Comment) to enable type-specific handling.
Worksheet that owns this shape, establishing the coordinate system and command context.
The worksheet.
Unique identifier within the owning worksheet, assigned at creation and invariant during the shape's lifetime.
The id of the shape.
User-assigned name for the shape, useful for identification and scripting; changes are executed via command for undo support.
The name of the shape.
Text description for accessibility and metadata purposes; changes are executed via command for undo support.
The description of the shape.
Controls whether resizing operations maintain the original width-to-height ratio, preventing distortion when set to true.
The value indicating whether the aspect ratio between the width and height should remain constant.
Resizes the shape to the specified width via command, optionally preserving aspect ratio and adjusting anchor position to maintain visual top-left corner.
A value indicating whether the aspect ratio lock should be respected.
The new width.
A value indicating whether the top cell index and offset of the image should be adjusted.
Resizes the shape to the specified height via command, optionally preserving aspect ratio and adjusting anchor position to maintain visual top-left corner.
A value indicating whether the aspect ratio lock should be respected.
The new height.
A value indicating whether the top cell index and offset of the image should be adjusted.
Recalculates anchor cell and offsets after rotation-aware resize to keep the visual top-left corner fixed, constraining geometry to worksheet bounds.
Raised when any shape property changes, signaling that dependent UI or layout should refresh.
Raises the ShapeChanged event, notifying subscribers of property modifications.
Event arguments for shape collection Changed notifications, providing the change type and affected shape after modification.
Category of modification performed (Add, Remove, Clear) on the shape collection.
The change type.
The shape that was added, removed, or cleared from the collection.
The shape.
Categorizes shape collection modifications (add, remove, clear) for event handling and notification.
A shape was inserted into the collection.
A specific shape was removed from the collection.
All shapes were removed from the collection in a single operation.
Cancelable event arguments for shape collection Changing notifications, providing the change type and affected shape before modification.
Category of modification about to be performed (Add, Remove, Clear) on the shape collection.
The change type.
The shape about to be added, removed, or cleared from the collection.
The shape.
Filtered collection of floating images within a worksheet, providing typed access and creation methods for image shapes.
Initializes a new image collection filtering the worksheet's shape collection to include only image-type shapes.
The worksheet.
Returns FloatingShapeType.Image, defining the filter criterion for this collection.
Creates a new floating image anchored at the specified cell and offset with the provided image source, adds it to the worksheet, and returns the image shape.
The cell index where the top left corner of the shape is positioned.
The left offset of the top left corner of the shape relative to the top left corner of the cell index.
The top offset of the top left corner of the shape relative to the top left corner of the cell index.
The image source.
The result image shape.
Defines the direction that existing cells shift when new cells are inserted.
Shifts existing cells to the right when new cells are inserted.
Shifts existing cells downward when new cells are inserted.
Defines core properties and layout operations for worksheet and chart sheet types within a workbook.
Gets or sets the display name shown on the sheet tab.
The name of the sheet.
Gets the parent workbook containing this sheet.
The workbook.
Gets the visibility state controlling whether the sheet is visible, hidden, or very hidden.
The visibility.
Gets the sheet type, distinguishing between worksheet and chart sheet.
The type of the sheet.
Gets the view-related state including tab color and invalidation status.
The view state of the sheet.
Gets whether layout recalculation is temporarily suspended for batch operations.
The value indicating whether the layout update is suspended.
Marks the layout as needing recalculation and triggers the LayoutInvalidated event.
Suspends automatic layout recalculation to improve performance during batch modifications.
Resumes automatic layout recalculation after suspension, triggering any pending updates.
Raised when the layout is invalidated and requires recalculation.
Defines editor operations and change notifications for switching between sheets in a workbook.
Gets or sets the currently active sheet being edited.
The sheet.
Raised before the active sheet changes, allowing preview or cancellation.
Raised during the active sheet change, after preview but before completion.
Raised just before the sheet change completes, allowing final preview.
Raised after the active sheet has changed to a new sheet.
Defines view-specific state for a sheet including tab color and invalidation status.
Gets or sets the background color of the sheet tab, supporting theme colors or explicit RGB values.
The color of the tab.
Gets or sets whether the view state has been modified and requires refresh.
The is invalidated.
Determines whether this instance can insert or remove the selected range depending on some existing range and a given shift type.
Type of the shift.
The range.
The selected range.
True if the selected range can be inserted or removed.
Determines whether any of the merged ranges within a cell range are intersected
by a hidden row or column in a way which causes it to be split or reduced in size.
If a merged range is entirely hidden, it is not considered split.
The cell range
True if any of the merged ranges within a cell range are split or reduced in size
by hidden rows or columns. False if all merged ranges are entirely visible or entirely hidden.
The changing process has finished, but the merged cells have not necessarily changed.
Event arguments providing the cell range affected by a merged cell change operation.
Gets the cell range that was merged or unmerged.
The cell range.
Initializes a new instance of the class with the affected cell range.
The cell range.
Manages a collection of defined names within a workbook or worksheet scope, providing add, remove, and lookup operations.
Gets the matching the specified name, using case-insensitive lookup.
The defined name.
Adds a new defined name with the specified formula reference at the given cell location.
The name.
The refers to.
Index of the row.
Index of the column.
The comment.
The is visible.
Adds a new defined name with the specified formula reference at the given cell index.
The name.
The refers to.
Index of the cell.
The comment.
The is visible.
Removes the defined name matching the specified identifier from the collection.
The name.
Checks whether a defined name with the specified identifier exists in the collection.
The name.
The value indicating whether the collection contains the specified name.
Attempts to retrieve the defined name matching the specified identifier.
The name.
The resulting name.
The value indicating whether the name was successfully found.
Returns an enumerator that iterates through the defined names in the collection.
An object that can be
used to iterate through the collection.
Returns a strongly typed enumerator that iterates through the defined names in the collection.
A that can
be used to iterate through the collection.
Defines the scope of a name collection, indicating whether names apply to a specific worksheet or the entire workbook.
Gets whether this scope is workbook-global, making names accessible from all worksheets.
The value indicating whether the owner is a workbook.
Thrown when named range operations fail due to invalid names, duplicate definitions, or scope conflicts.
Initializes a new with the specified error message.
The message.
Initializes a new with the specified error message and localization key.
The message.
The key.
Initializes a new with the specified error message and inner exception.
The message.
The inner exception.
Initializes a new with the specified error message, inner exception, and localization key.
The message.
The inner exception.
The key.
Cell value for numeric data stored as double-precision floating-point; use for numbers, dates, times, and percentages.
Returns CellValueType.Number.
The type of the value.
Numeric value converted to string using the current culture.
The raw value.
Gets the value as string override.
The format.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Defines a viewport pane configuration for worksheets with frozen or split rows and columns.
Gets the horizontal split position, representing the number of columns visible in the frozen or split pane.
The X split.
Gets the vertical split position, representing the number of rows visible in the frozen or split pane.
The Y split.
Gets the cell index that appears at the top-left corner of the scrollable pane when rows or columns are frozen.
The index of the top left cell of the scrollable pane.
Gets which viewport pane has focus and receives user input.
The active pane.
Gets whether the pane is frozen or split, controlling scrolling behavior.
The state.
Initializes a new with specified split positions, active viewport, and freeze state.
Index of the top left cell.
The x split.
The y split.
The active pane.
The state.
Creates a deep copy of this pane configuration with identical split and state settings.
The result pane.
Determines whether the specified is equal
to the current .
The object to compare with the current object.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Specifies whether worksheet panes are frozen in place or allow independent scrolling.
Frozen pane state.
Thrown when a string value cannot be parsed as a valid cell value due to format or type mismatch.
Initializes a new with the specified error message.
The message.
Initializes a new with the specified error message and inner exception.
The message.
The inner exception.
Initializes a new with the specified error message, inner exception, localization key, and format arguments.
The message.
The inner exception.
The key.
The format string arguments.
Configures what content to paste into a range, controlling which cell properties are copied.
Pastes all cell content including values, formulas, formatting, and column widths.
Gets which content elements are pasted, such as all, values only, or formatting only.
The type of the paste.
Gets whether blank cells in the source range are ignored during paste, preserving existing target cell values.
The value indicating whether blanks should be skipped.
Gets a value indicating whether merged cells should be skipped.
The value indicating whether merged cells should be skipped.
Initializes a new with the specified paste type and blank-skipping behavior.
Type of the paste.
The value indicating whether blanks should be skipped.
Provides the outcome of a paste operation, indicating success or failure with an optional error message.
Initializes a new with the specified success status and optional error message.
The success.
The error message.
Specifies which cell content elements to paste, such as values, formulas, or formatting.
All paste type.
Formulas paste type.
Values paste type.
Formats paste type.
ColumnWidths paste type.
FormulasAndNumberFormats paste type.
ValuesAndNumberFormats paste type.
Defines a cell background fill using pattern types, foreground colors, and background colors.
Provides a transparent solid fill used as the default for cells with no background.
Gets the pattern style applied to the fill, such as solid, striped, or crosshatch.
The type of the pattern.
Gets the foreground color used for the pattern elements, such as stripes or dots.
The color of the pattern.
Gets the background color visible between pattern elements.
The color of the background.
Initializes a new with the specified pattern type, foreground color, and background color.
Type of the pattern.
Color of the pattern.
Color of the background.
Initializes a new with the specified pattern type and themable colors.
Type of the pattern.
Color of the pattern.
Color of the background.
Creates a solid fill with the specified color, commonly used for cell backgrounds.
The color.
The fill.
Creates a solid fill with the specified themable color, allowing theme-based color changes.
The themable color.
The fill.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Returns a that represents the current
.
A that represents the current .
Specifies fill pattern styles for cell backgrounds, such as solid, striped, or crosshatch designs.
Solid pattern type.
Gray75Percent pattern type.
Gray50Percent pattern type.
Gray25Percent pattern type.
Gray12Percent pattern type.
Gray6Percent pattern type.
Horizontal stripes pattern with alternating foreground and background colors.
Vertical stripes pattern with alternating foreground and background colors.
Diagonal stripes pattern running from top-right to bottom-left.
Diagonal stripes pattern running from top-left to bottom-right.
Crosshatch pattern with diagonal lines intersecting in both directions.
Thick crosshatch pattern with wider diagonal lines intersecting.
Thin horizontal stripes pattern with narrow lines.
Thin vertical stripes pattern with narrow lines.
Thin diagonal stripes pattern running from top-right to bottom-left.
Thin diagonal stripes pattern running from top-left to bottom-right.
Thin crosshatch pattern with horizontal and vertical lines intersecting.
Thin crosshatch pattern with diagonal lines intersecting in both directions.
Horizontal text alignment options for cell content within a worksheet.
Automatic alignment based on cell content type: numbers align right, booleans center, and text aligns left.
Aligns content to the left edge of the cell.
Centers content horizontally within the cell.
Aligns content to the right edge of the cell.
Justifies multi-line text by distributing words evenly across the cell width.
Repeats cell content to fill the entire cell width.
Centers content across multiple selected cells without merging them.
Distributes content evenly with equal spacing between characters across the cell width.
Vertical text alignment options for cell content within a worksheet.
Aligns content to the bottom edge of the cell.
Centers content vertically within the cell.
Aligns content to the top edge of the cell.
Justifies multi-line text by distributing lines evenly across the cell height.
Distributes content evenly with equal spacing between lines across the cell height.
Indicates that vertical alignment has not been explicitly set or is mixed across a selection.
Property value queried from a cell range, indicating whether the value is uniform or mixed (indeterminate) across the range.
The type of the property value.
Gets whether the property has different values across the range (true if mixed, false if uniform).
The value indicating whether the property value is indeterminate.
Gets the property value when IsIndeterminate is false, or a default/representative value when true.
The value.
Compares the value and indeterminate flag, returning true if both match the specified object.
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Computes a hash code from the value and indeterminate flag.
A hash code for the current .
Specifies how cells shift to fill the space after removing cells from a range.
Shifts remaining cells to the left to fill removed cell positions.
Shifts remaining cells upward to fill removed cell positions.
Encapsulates a reference to a row or column with support for absolute and relative positioning in formulas.
Gets the resolved index, calculated by applying any offset to the base index for relative references or returning the fixed index for absolute references.
The actual index.
Gets whether this reference uses absolute positioning (fixed index) rather than relative positioning (offset-based).
The value indicating whether the reference is absolute.
Initializes a new instance of the class.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Abstract base for row and column selections, providing property management, outlining, and range-based operations on entire rows or columns.
Gets the property value across the selected row or column ranges, resolving to a single value or indeterminate state if values differ.
The type of the T.
The property.
Extracts the start and end row or column indices from the specified cell range.
The cell range.
From index.
To index.
Increases the outline level of rows or columns in the current selection to group them for collapsing; the selection must be a single continuous range.
A value indicating whether at least part of the selection was grouped successfully.
Decreases the outline level of rows or columns in the current selection to ungroup them; the selection must be a single continuous range.
A value indicating whether at least part of the selection was ungrouped successfully.
Sets the outline level for the selected rows or columns, determining grouping depth for collapse and expand operations.
The outline level.
Gets the outline level for the selected rows or columns, indicating the current grouping depth.
The outline level.
Removes the outline level from the selected rows or columns, ungrouping them completely.
Encapsulates a row height value with custom or auto-fit sizing, measured in device-independent pixels.
Provides the default auto-fit row height that automatically adjusts to content size.
Initializes a new instance of the class.
The value.
The value indicating whether the row height is custom.
Provides data for the RowHeightChanged event, indicating which rows had their heights modified.
Gets the starting row index of the range where height changed.
The start index.
Gets the ending row index of the range where height changed.
The end index.
Initializes a new instance of the class.
From index.
To index.
Manages the collection of rows in a worksheet, providing access to row properties, heights, and operations like insert and remove.
Gets the total number of rows in the worksheet.
The row / column count.
Gets a for the row at the specified index.
The row selection.
Gets a for the continuous range of rows between the specified start and end indices.
The row selection.
Gets a for the row containing the specified cell index.
The row selection.
Gets a for the rows intersecting the specified cell range.
The row selection.
Gets a for the rows intersecting the specified collection of cell ranges.
The row selection.
Checks whether the specified number of rows can be inserted at the given index without exceeding worksheet limits.
The index.
The item count.
The value indicating whether this instance can be inserted at the specified index
Executes the row insertion command at the specified index, shifting existing rows downward.
The index.
The item count.
Executes the row removal command at the specified index, shifting remaining rows upward.
The index.
The item count.
Creates a row selection for the single row at the specified index.
The index.
The row selection
Creates a row selection for the continuous range of rows between the specified start and end indices.
From index.
To index.
The row selection
Creates a row selection for the row containing the specified cell index.
Index of the cell.
The row selection
Creates a row selection for the rows intersecting the specified cell range.
The cell range.
The row selection
Creates a row selection for the rows intersecting the specified collection of cell ranges.
The cell ranges.
The row selection
Gets the default height applied to rows without custom height settings.
The row height
Sets the default height for all rows that do not have a custom height assigned.
The height.
Raised when row heights are modified, providing the range of affected rows.
Abstract base class for row and column collections, providing shared insertion, removal, and property management functionality.
Gets the worksheet's cell collection for coordinating row/column operations with cell data.
The cells.
Gets the total number of rows or columns in the worksheet.
The row / column count.
Inserts a single row or column at the specified index, shifting subsequent items.
The index.
The value indicating whether the insert command was successfully executed.
Inserts the specified number of rows or columns at the given index, shifting subsequent items.
The index.
The item count.
The value indicating whether the insert command was successfully executed.
Removes a single row or column at the specified index, shifting remaining items.
The index.
Removes the specified number of rows or columns starting at the given index, shifting remaining items.
The index.
The item count.
Checks whether the specified number of rows or columns can be inserted at the given index without exceeding worksheet capacity.
The index.
The item count.
The value indicating whether this instance can be inserted at the specified index
Executes the derived class-specific insertion logic at the specified index.
The index.
The item count.
Executes the derived class-specific removal logic at the specified index.
The index.
The item count.
Manages a selection of entire rows, providing access to row-specific properties like height, hidden state, and outline level for formatting and manipulation.
Applies border styling to all cells within the selected rows.
The value.
Extracts the starting and ending row indices from the specified cell range.
The cell range.
From index.
To index.
Gets the height value for the selected rows, or an indeterminate state if heights differ across the selection.
The height for the selection.
Applies the specified height to all rows in the selection.
The value.
Removes custom height settings from the selected rows, reverting them to the default height.
Adjusts the height of selected rows to automatically fit their content.
Gets the outline level of the selected rows, indicating their grouping depth for collapse and expand.
The outline level.
Shows or hides the selected rows in the worksheet.
The value indicating whether the selected rows are hidden.
Gets whether the selected rows are hidden, or an indeterminate state if visibility differs across the selection.
The value of the hidden property
Removes the hidden state from the selected rows, making them visible.
Inserts new rows at the positions of the selected rows, shifting existing rows downward.
The value indicating whether the insert was successful.
Deletes the selected rows from the worksheet, shifting remaining rows upward.
Abstract base for range-based selections in worksheets, providing property access and modification methods for formatting, borders, and values across one or more cell ranges.
The collection of cell ranges included in this selection.
The cell ranges.
The worksheet containing this selection.
The worksheet.
Suspends layout recalculation and starts an undo group, enabling efficient batch modifications across the selection.
Resumes layout recalculation and closes the undo group, completing the batch modification initiated by BeginUpdate.
Executes the specified action on each range in the selection within a suspended-update context.
The action.
Executes the specified action on each provided range within a suspended-update context, optionally checking a predicate before proceeding, and returns whether all ranges passed the predicate.
The cell ranges.
The action.
The can execute.
Executes the specified action on each range in the selection without suspending updates.
The action.
Executes the specified action on each provided range, optionally checking a predicate before proceeding, and returns whether all ranges passed the predicate.
The cell ranges.
The action.
The can execute.
Retrieves a property value from the specified ranges, returning either a consistent value or an indeterminate state if values differ across ranges.
The type of the T.
The get range property value.
The cell ranges.
The default value.
Finds and returns the top-left cell index across all ranges in the selection.
Clears content, formatting, or both from the selection based on the specified clear type.
The type of clear.
Retrieves the number format pattern applied to the selection, or an indeterminate state if formats differ.
The format for the selection.
Applies the specified number format pattern to the selection and updates cell values to respect the new format.
The value.
Removes the number format from the selection, reverting to the default format.
Retrieves the named cell style applied to the selection, or an indeterminate state if styles differ.
The name of the style for the selection.
Applies the specified named cell style to the selection, clearing locally-set properties that conflict with the style definition.
The value.
Removes the named style reference from the selection, reverting to the default style.
Retrieves the background fill applied to the selection, or an indeterminate state if fills differ.
The fill value for the selection.
Applies the specified background fill (solid, pattern, or gradient) to the selection.
The value.
Removes the background fill from the selection, reverting to no fill.
Retrieves the font family applied to the selection, which may reference a theme font or explicit typeface.
The font family for the selection.
Applies the specified font family to the selection, supporting both theme-based and explicit font references.
The value.
Removes the font family from the selection, reverting to the default font.
Retrieves the font size in device-independent units from the selection.
The font size for the selection.
Applies the specified font size to the selection, which must be between 1 and 409 points.
The value.
Removes the font size from the selection, reverting to the default size.
Checks whether bold formatting is applied to the selection.
The value indicating whether the font is bold for the selection.
Applies or removes bold formatting on the selection.
The value.
Removes the bold formatting from the selection, reverting to the default weight.
Checks whether italic formatting is applied to the selection.
The value indicating whether the font is italic for the selection.
Applies or removes italic formatting on the selection.
The value.
Removes the italic formatting from the selection, reverting to the default style.
Checks whether strikethrough formatting is applied to the selection.
The value indicating whether the font is strikethrough for the selection.
Applies or removes strikethrough formatting on the selection.
The value.
Removes the strikethrough formatting from the selection, reverting to no strikethrough.
Checks the vertical text alignment (none, superscript, or subscript) applied to the selection.
The vertical text alignment for the selection.
Applies vertical text alignment (none, superscript, or subscript) to the selection.
The value.
Removes the vertical text alignment from the selection, reverting to baseline.
Retrieves the underline style applied to the selection.
The underline property for the selection.
Applies the specified underline style to the selection.
The value.
Removes the underline style from the selection, reverting to no underline.
Retrieves the text color applied to the selection, which may reference a theme color or explicit RGB value.
The font color for the selection.
Applies the specified text color to the selection, supporting both theme-based and explicit color references.
The value.
Removes the text color from the selection, reverting to the default color.
Retrieves the horizontal text alignment applied to the selection.
The horizontal alignment for the selection.
Applies the specified horizontal alignment to the selection, clearing indent if the alignment is incompatible.
The value.
Removes the horizontal alignment from the selection, reverting to the default alignment.
Retrieves the vertical text alignment applied to the selection.
The vertical alignment for the selection.
Applies the specified vertical alignment to the selection.
The value.
Removes the vertical alignment from the selection, reverting to the default alignment.
Retrieves the text indentation level applied to the selection, measured in indent units.
The indent for the selection.
Applies the specified indentation level to the selection, which must be between 0 and 250, and ensures compatible horizontal alignment.
The value.
Removes the indentation from the selection, reverting to zero indent.
Increases the indentation level by one for the selection, ensuring compatible horizontal alignment and respecting the maximum indent limit.
Decreases the indentation level by one for the selection, ensuring compatible horizontal alignment and stopping at zero.
Checks whether text wrapping is enabled for the selection.
The value indicating whether text wrapping is used.
Enables or disables text wrapping for the selection.
The value.
Removes the text wrapping setting from the selection, reverting to the default behavior.
Retrieves the text rotation angle applied to the selection, measured in degrees from -90 to 90.
The text rotation degree for the selection in range -90 to 90.
Applies the specified rotation angle to the selection, which must be between -90 and 90 degrees.
The rotation degree in the range -90 to 90.
Removes the text rotation from the selection, reverting to zero degrees.
Retrieves the left border style and color applied to the selection.
The left border for the selection.
Retrieves the right border style and color applied to the selection.
The right border for the selection.
Retrieves the top border style and color applied to the selection.
The top border for the selection.
Retrieves all border styles applied to the selection, including outer, inner, and diagonal borders, resolving conflicts by priority.
The cell borders.
Applies the specified border configuration to the selection, supporting outer, inner, and diagonal borders.
The value.
Removes all borders from the selection, including outer, inner, and diagonal borders.
Checks whether the selection is locked for editing when worksheet protection is enabled.
The value indicating whether the selection is locked.
Locks or unlocks the selection for editing when worksheet protection is enabled.
The value.
Removes the lock setting from the selection, reverting to the default locked state.
Captures the current selection state in a worksheet, including selected cell ranges, active cell, viewport pane, and selected shapes.
Gets the collection of cell ranges currently selected in the worksheet.
The selected ranges.
Gets the index of the active cell, which receives keyboard input and is the focus point for selection operations.
The index of the active cell.
Gets the viewport pane where the selection is located, relevant when the worksheet has frozen panes.
The pane.
Initializes a new with the specified selected ranges, active cell, and viewport pane.
The selected ranges.
Index of the active cell.
The pane.
Creates a deep copy of this selection state.
The cloned selection state.
Returns a string representation of this selection state, including pane, active cell, and selected ranges.
A that represents the current .
Abstract base for all sheet types in a workbook, providing naming, visibility, protection, and layout coordination for derived sheet implementations (Worksheet, future chart sheets).
User-visible sheet name displayed on tabs, validated for uniqueness and Excel naming constraints (length, forbidden characters).
The name of the sheet.
Workbook that owns this sheet, assigned once when the sheet is added to a workbook's sheet collection.
The workbook.
Controls whether the sheet is visible, hidden, or very hidden (hidden from UI visibility toggles).
The visibility.
Discriminates the sheet category (Worksheet, future chart sheets) to route type-specific operations.
The type of the sheet.
Indicates whether layout invalidation events are deferred, typically during batch operations to avoid redundant recalculations.
The value indicating whether the layout update is suspended.
Indicates whether sheet protection is currently enforced, restricting user modifications based on protection options.
The is protected.
Gets the sheet page setup.
The sheet page setup.
Creates the view state object that tracks panes, selection, and scroll position for this sheet type.
Defers layout invalidation notifications until ResumeLayoutUpdate is called, improving performance during batch modifications.
Re-enables layout invalidation notifications and raises any deferred LayoutInvalidated event if changes occurred.
Begins a logical undo group so that subsequent commands are undone or redone together as a single user action.
Closes the current logical undo group, allowing the grouped commands to be undone or redone as a unit.
Releases resources held by the sheet, primarily clearing the workbook reference; call when removing the sheet from a workbook.
Releases managed resources when disposing is true, clearing the workbook reference and preventing reuse.
The disposing.
Raised when sheet content changes require layout recalculation, unless layout updates are suspended.
Raises the LayoutInvalidated event, signaling that UI should recalculate positions and sizes.
Raised when the sheet's name changes, allowing UI to refresh tab labels.
Raised when sheet protection is applied or removed, signaling that UI should update editing controls.
Raises the IsProtectedChanged event, notifying subscribers that protection status has toggled.
Ordered collection of sheets in a workbook, managing sheet creation, insertion, removal, visibility, and active sheet tracking with validation and event notifications.
Workbook that owns this collection, providing the context for sheet operations.
The workbook.
Currently selected sheet displayed to the user; must be a sheet from this collection.
The active sheet.
Zero-based index of the active sheet, or -1 if no sheets exist; setting updates both index and ActiveSheet.
The index of the active sheet.
Total number of sheets in the collection, including hidden and very hidden sheets.
The count of the sheets.
Gets the count of the visible sheets.
The count of the visible sheets.
Retrieves the sheet at the specified zero-based index.
The sheet.
Retrieves the sheet with the specified name, using case-insensitive comparison.
The sheet.
Creates a new sheet of the specified type with a generated unique name and appends it to the collection.
The type of sheet.
The newly created sheet.
Creates a new sheet of the specified type with a generated unique name and inserts it at the active sheet's index.
The type.
The newly created sheet.
Creates a new sheet of the specified type with a generated unique name and inserts it at the specified index.
The index.
The type.
The newly created sheet.
Searches for the specified sheet and returns its zero-based index, or -1 if not found.
The sheet.
The index of the sheet.
Searches for a sheet with the specified name using case-insensitive comparison and returns its zero-based index, or -1 if not found.
The name of the sheet.
The index of the sheet.
Checks whether a sheet with the specified name exists in the collection, using case-insensitive comparison.
The name of the sheet.
The value indicating whether a sheet with the specified name is contained in the collection.
Checks whether the specified sheet exists in this collection.
The sheet.
The value indicating whether the sheet is contained in the collection.
Retrieves the sheet with the specified name using case-insensitive comparison, or null if not found.
The name of the sheet.
The sheet.
Removes the currently active sheet from the collection, ensuring at least one visible sheet remains.
Removes the sheet with the specified name and returns true if found, false otherwise.
The name of the sheet.
The value indicating whether a sheet with a specified name was found.
Removes the specified sheet from the collection and returns true if found, false otherwise.
The sheet.
The value indicating whether the specified sheet was found.
Removes the sheet at the specified index, ensuring at least one visible sheet remains.
The index.
Relocates a contiguous range of sheets from the source index to the destination index, shifting other sheets as needed.
From index.
The item count.
To index.
Hides the currently active sheet, ensuring at least one visible sheet remains.
Hides the sheet at the specified index, ensuring at least one visible sheet remains.
The index.
Hides the specified sheet, ensuring at least one visible sheet remains.
The sheet.
Makes the sheet at the specified index visible and sets it as the active sheet.
The index.
Makes the specified sheet visible and sets it as the active sheet.
The sheet.
Returns an enumerator for iterating through all sheets in order.
A that can
be used to iterate through the collection.
Returns a non-generic enumerator for iterating through all sheets in order.
An object that can be
used to iterate through the collection.
Raised when the active sheet's index changes, allowing UI to update tab selection.
Raises the ActiveSheetIndexChanged event, notifying subscribers of index change.
Raised when the active sheet reference changes, allowing UI to switch displayed content.
Raises the ActiveSheetChanged event, notifying subscribers of sheet change.
Occurs when the collection has changed.
Raises the event.
The instance containing the event data.
Raised after a sheet operation completes (add, remove, hide, unhide, move, clear), providing change details.
Raises the Changed event, notifying subscribers of completed collection modification.
The instance containing the event data.
Specifies the type of modification operation performed on a workbook's sheet collection.
Sheet was added to the collection.
Sheet was moved to a different position in the collection.
Sheet was removed from the collection.
Sheet visibility changed to hidden.
Sheet visibility changed to visible.
Provides data for the SheetCollection.Changed event, indicating which modification occurred and the affected sheet.
Gets the type of modification that was performed on the sheet collection.
The change type.
Initializes a new instance of the class with the specified change type.
Type of the change.
Specifies the type of sheet in a workbook, determining its content and layout behavior.
Standard data worksheet containing a two-dimensional grid of cells with formulas and formatting.
Base class for managing worksheet view state properties including tab color and invalidation tracking.
Gets or sets the color displayed on the sheet's tab in the workbook navigation area.
The color of the tab.
Gets or sets whether the view state requires recalculation or re-rendering due to changes.
The is invalidated.
Initializes a new instance of the class with default tab color.
Specifies the display mode for a worksheet, controlling how content is rendered and laid out.
Standard editing view without page boundaries or breaks.
View mode showing page boundaries and allowing manual page break adjustment for printing.
View mode displaying the worksheet as it will appear when printed, with margins and headers.
Specifies the visibility level of a sheet in the workbook, controlling user access and tab display.
Sheet is visible and accessible to users with its tab displayed.
Sheet is hidden but can be unhidden by users through the application interface.
Sheet is strongly hidden and can only be made visible programmatically, not through user interface.
Specifies the direction cells shift when inserting or removing content in a worksheet.
Cells shift leftward, typically used when removing columns or clearing content.
Cells shift upward, typically used when removing rows or clearing content.
Cells shift rightward, typically used when inserting columns or adding content.
Cells shift downward, typically used when inserting rows or adding content.
Represents a two-dimensional size with integer width and height values for worksheet elements.
Gets a special empty size instance used to indicate an uninitialized or invalid size.
The empty size value.
Gets whether this size represents an empty or uninitialized state.
The value indicating whether the size is empty.
Gets or sets the vertical dimension in integer units, must be non-negative.
The height.
Gets or sets the horizontal dimension in integer units, must be non-negative.
The width.
Initializes a new instance of the class with specified width and height, both must be non-negative.
The width.
The height.
Creates an empty size value.
The empty size value.
Determines whether the specified object is a SizeI with the same width and height values.
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Determines whether the specified size has the same width and height as this instance.
The other size.
The value indicating whether the specified size is equal to this instance.
Computes a hash code based on the width and height values for dictionary and hash table usage.
A hash code for the current .
Determines whether two sizes have equal width and height values.
The size1 value.
The size2 value.
The result of the operator.
Determines whether two sizes have different width or height values.
The size1 value.
The size2 value.
The result of the operator.
Returns a string representation of the size in "width,height" format or "Empty" for empty sizes.
A that represents the current .
Sort condition that orders cells by their background fill color, grouping matching fills together.
Gets the target fill color used to identify matching cells for priority sorting.
The fill.
Gets the cell fill property definition used for color comparison.
The property definition of the property which is used for sorting.
Gets the comparer that prioritizes cells matching the target fill color.
The comparer used for sorting.
Initializes a new instance of the class with a target fill color for sorting.
Gets the index of the row or column that is key for sorting relative to the sorted range.
The fill.
The sort order.
Extracts the fill color from the specified cell, resolving theme colors to local RGB values.
The cells.
The row index.
The column index.
The value of the specified cell.
Determines whether the specified object is a FillColorSortCondition with the same fill color and settings.
The obj.
Computes a hash code combining the fill color and base sort condition hash.
Abstract base for sort conditions that apply ascending or descending order to cell properties.
The type of the T.
Gets whether this condition sorts in ascending or descending order.
The sort order.
Initializes a new sort condition with a specified relative index and sort order.
Gets the index of the row or column that is key for sorting relative to the sorted range..
The sort order.
Determines whether the specified sort condition has the same sort order and base properties.
The object to compare with the current object.
true if the specified is equal to the
current ; otherwise, false.
Computes a hash code combining the sort order and base sort condition properties.
A hash code for the current .
Sort condition that orders cell values according to a custom list sequence, placing matching items first.
Gets the cell value property definition used for custom list comparison.
The property definition of the property which is used for sorting.
Gets the comparer that ranks values by their position in the custom list.
The comparer used for sorting.
Gets the ordered array of strings defining the custom sort sequence.
The custom list.
Initializes a new instance of the class with a custom list defining the sort order.
Gets the index of the row or column that is key for sorting relative to the sorted range.
The custom list.
The sort order.
Determines whether the specified object is a CustomValuesSortCondition with the same custom list and settings.
The object to compare with the current object.
true if the specified is equal to the
current ; otherwise, false.
Computes a hash code combining the base sort condition hash and the custom list content.
A hash code for the current .
Sort condition that orders rows or columns by cell text foreground color, placing cells with a specified color first or last.
Gets the target text foreground color used to identify cells during sorting.
The color.
Gets the cell property definition that identifies the text foreground color used for sorting.
The property definition of the property which is used for sorting.
Gets the comparer that determines sort order by matching cell text foreground colors against the target color.
The comparer used for sorting.
Initializes a new sort condition that orders by cell text foreground color, targeting a specific color.
Gets the index of the row or column that is key for sorting relative to the sorted range.
The color.
The sort order.
Gets the resolved text foreground color from the specified cell, with theme colors expanded to their local RGB values.
The cells.
The row index.
The column index.
The value of the specified cell.
Determines whether the specified sort condition has the same color, relative index, and sort order.
The object to compare with the current object.
true if the specified is equal to the
current ; otherwise, false.
Computes a hash code combining the target color and base sort condition properties.
A hash code for the current .
Defines a condition for sorting rows or columns in a worksheet range, specifying which cell property to compare and how to order the results.
Gets the zero-based offset within the sort range that identifies the row or column containing values to compare.
The index of the row or column that is key for sorting relative to the sorted range.
Gets the comparer that defines the ordering logic for this sort condition.
The comparer used for sorting.
Extracts the sort-relevant value from the specified cell for comparison during sorting.
The cells.
The row index.
The column index.
The value of the specified cell.
Abstract base for sort conditions that compare typed cell properties to determine row or column order.
The type of the T.
Gets the zero-based offset within the sort range that identifies the row or column containing values to compare.
The index of the row or column that it key for sorting relative to the sorted range.
Gets the cell property definition that determines which cell attribute is compared during sorting.
The property definition of the property which is used for sorting.
Gets the comparer that defines the ordering logic for this sort condition.
The comparer used for sorting.
Initializes a new sort condition with the specified relative index within the sort range.
Gets the index of the row or column that is key for sorting relative to the sorted range.
Extracts the cell property value used for comparison, respecting cell styles and property inheritance.
The cells.
The row index.
The column index.
The value of the specified cell.
Determines whether the specified sort condition has the same relative index.
The object to compare with the current object.
true if the specified is equal to the
current ; otherwise, false.
Computes a hash code based on the relative index property.
A hash code for the current .
Thrown when an error occurs during sorting operations on worksheet cells.
Initializes a new with default values.
Initializes a new with the specified error message.
The message.
Initializes a new with the specified error message and localization key.
The message.
The key.
Initializes a new with the specified error message and inner exception.
The message.
The inner exception.
Initializes a new with the specified error message, inner exception, and localization key.
The message.
The inner exception.
The key.
Manages the active sort configuration for a worksheet, including the sorted range and applied sort conditions.
Gets the number of sort conditions currently applied to the worksheet.
The count.
Gets the collection of sort conditions that define how the range is sorted.
The sort conditions.
Gets the cell range to which the sort conditions are applied.
The sort range.
Applies the specified sort conditions to the given cell range and sorts the data.
The sort range.
The sort conditions.
Removes all sort conditions and clears the sorted range.
Pairs a cell value with its original row or column index before sorting, enabling position tracking during sort operations.
Gets the original position of this value before the sort was applied.
The index of the value before sorting.
Gets the cell content being sorted.
The value.
Sort condition that orders rows or columns by cell values, comparing numbers, text, dates, and other data types.
Gets the cell property definition that identifies the cell value used for sorting.
The property definition of the property which is used for sorting.
Gets the comparer that orders cell values in ascending or descending sequence.
The comparer used for sorting.
Initializes a new sort condition that orders by cell values in the specified direction.
Gets the index of the row or column that is key for sorting relative to the sorted range.
The sort order.
Specifies the direction in which to sort cell values: ascending or descending.
Sorts values from lowest to highest.
Sorts values from highest to lowest.
Base comparer for sorting cell values, comparing ICellValue instances during sort operations.
Initializes a new instance of the ValuesSortConditionComparerBase class for cell value comparison.
Compares two cell values and returns their relative ordering for sorting.
The x.
The y.
Less than zero if x is less y, zero if x is equal y, greated than zero if x is greater y.
Provides constants defining default dimensions, limits, and styling for spreadsheet elements.
The default width of columns in device-independent pixels.
The default height of rows in device-independent pixels.
The minimum allowed column width in device-independent pixels.
The maximum allowed column width in device-independent pixels.
The minimum allowed row height in device-independent pixels.
The maximum allowed row height in device-independent pixels.
The maximum number of rows in a worksheet (1,048,576).
The maximum number of columns in a worksheet (16,384).
The total number of cells in a worksheet (rows × columns).
The maximum number of cells a dynamic array formula is allowed to spill.
Exceeding this limit causes a #SPILL! error. Defaults to one full column (1,048,576 cells).
The maximum allowed indent level for cell content.
The pixel width added per indent level in device-independent pixels.
The spacing between the left cell border and content in device-independent pixels.
The spacing between the right cell border and content in device-independent pixels.
The total horizontal spacing reserved for cell margins on both sides.
A cell range spanning all rows and columns in the worksheet.
The default color for cell text content, referencing the theme's Text1 color.
The default font family for cell text, referencing the theme's minor font.
The default font size in typographic points.
The default font size in device-independent pixels.
The name of the default cell style applied to new cells.
The name of the built-in style applied to hyperlink cells.
The minimum allowed zoom level for worksheet display (50%).
The maximum allowed zoom level for worksheet display (400%).
The default zoom level for worksheet display (100%).
The default zoom scale as width and height multipliers (1×1).
The minimum allowed page scale factor for printing and PDF export (10%).
The maximum allowed page scale factor for printing and PDF export (400%).
The minimum value for fit-to-pages options (0 means automatic).
The maximum value for fit-to-pages options.
The minimum allowed value for the first page number in printing.
The maximum allowed value for the first page number in printing.
The default background color for worksheet tabs.
Cell value for plain text content without formatting; use for strings that should not be parsed as numbers or formulas.
Returns CellValueType.Text.
The type of the value.
Text content stored in the cell.
The raw value.
Gets the value as string override.
The format.
Represents string types.
Specifies the vertical text alignment (baseline, superscript, or subscript) applied to cell font formatting.
No vertical offset; text is rendered at the normal baseline.
Text is raised above the baseline and rendered at a smaller size.
Text is lowered below the baseline and rendered at a smaller size.
Thrown when an operation requires at least one worksheet but the workbook has none.
Initializes a new with the specified error message.
The message.
Initializes a new with the specified error message and localization key.
The message.
The key.
Initializes a new with the specified error message and inner exception.
The message.
The inner exception.
Initializes a new with the specified error message, inner exception, and localization key.
The message.
The inner exception.
The key.
Thrown when an operation is attempted on a workbook that has not been properly initialized.
Initializes a new with the specified error message.
The message.
Initializes a new with the specified error message and localization key.
The message.
The key.
Initializes a new with the specified error message and inner exception.
The message.
The inner exception.
Initializes a new with the specified error message, inner exception, and localization key.
The message.
The inner exception.
The key.
Abstract base for worksheet entities (cells, rows, columns) that share a common property system for formatting and styling.
Returns the worksheet that owns this entity.
The worksheet.
Initializes a new instance of the class.
The worksheet.
Specifies the style of underline applied to cell text.
No underline is applied.
A single line beneath the text.
Two parallel lines beneath the text.
A single line spanning the cell width, positioned below the text baseline.
Two parallel lines spanning the cell width, positioned below the text baseline.
Represents a named formula or range reference that can be scoped to a workbook or worksheet, providing reusable expressions for cells.
Gets the unique identifier for this defined name within its scope.
The name.
Gets the scope defining whether this name is workbook-global or worksheet-specific.
The scope.
Gets the optional descriptive comment explaining the purpose of this name.
The comment.
Gets the formula expression this name references, formatted as a string.
The string representation of the object the name refers to.
Gets the evaluated result of the formula as a string representation.
The value.
Gets whether this name appears in the user interface name lists.
The value indicating whether the name is visible to the user.
Defines core properties for a named formula or range reference within a spreadsheet.
Gets the unique identifier for this named reference within its scope.
The name.
Gets the scope defining whether this name applies workbook-wide or to a specific worksheet.
The scope.
Gets the descriptive comment explaining the purpose of this name.
The comment.
Gets the formula or range reference this name points to, formatted as a string.
The string representation of the object the name refers to.
Gets the evaluated result of the formula as a string representation.
The value.
Gets whether this name appears in the user interface name lists.
The value indicating whether the name is visible to the user.
Base class for row height and column width specifications, storing the dimension value and custom-size flag.
Gets the width or height dimension in device-independent pixels.
The value.
Gets whether the dimension was explicitly set by the user rather than using the default size.
The value indicating whether the width / height is custom.
Initializes a new with the specified dimension and custom-size flag.
The value.
The is custom.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Returns a that represents the current
.
A that represents the current .
The top-level container for an Excel-compatible spreadsheet document, managing sheets, styles, history, and document-wide settings.
Gets or sets the document name, typically displayed in the application title bar.
The name of the workbook.
Gets or sets the zero-based index of the currently selected sheet tab.
The index of the active tab.
Gets the workbook-scoped named ranges and formulas accessible across all sheets.
The collection of defined names of the workbook.
Gets all sheets in the workbook, including worksheets and chart sheets.
The sheets of the workbook.
Gets the data worksheets, excluding chart sheets and other sheet types.
The worksheets of the workbook.
Gets or sets the sheet currently selected for viewing and editing.
The active sheet.
Gets or sets the data worksheet currently selected, returning null if the active sheet is not a worksheet.
The active worksheet.
Gets the named cell styles that can be applied to cells throughout the workbook.
The collection of styles for this workbook.
Gets the undo/redo history for tracking and reversing user modifications.
The history for this workbook.
Gets or sets the color scheme and font theme applied to themable elements throughout the workbook.
The workbook theme.
Gets or sets the document metadata such as title, author, subject, and keywords.
The document information.
Gets whether layout recalculation is temporarily disabled for batch modifications.
The value indicating whether the layout update is suspended.
Gets or sets the throttling interval for WorkbookContentChanged event notifications to reduce event frequency during rapid edits.
The interval on which the workbook content changes.
Gets the collection of authors associated with a collection of threaded comments and mentions.
The collection of defined authors.
Gets whether the workbook structure is password-protected, preventing sheet additions, deletions, or reordering.
The is protected.
Initializes a new with default settings and an empty sheet collection.
Temporarily disables layout recalculation to improve performance during batch modifications; call ResumeLayoutUpdate when complete.
Re-enables layout recalculation and triggers an update if modifications occurred while suspended.
Searches for the next occurrence matching the specified criteria and returns its location, or null if not found.
The find options.
The find results.
Searches for all occurrences matching the specified criteria and returns their locations.
The find options.
The find results.
Replaces the next occurrence in the active worksheet matching the specified criteria and returns whether a replacement was made.
The replace options.
The value indicating whether a value was found to replace.
Replaces all occurrences matching the specified criteria and returns the count of replacements made.
The replace options.
The number of replacements made.
Protects the workbook structure with a password, preventing sheet additions, deletions, and reordering.
The password.
Removes workbook structure protection using the specified password and returns whether the password was correct.
The password.
Releases all resources used by the workbook.
Releases resources, optionally disposing managed objects.
The clean up managed resources.
Raised before a command executes, allowing cancellation via the event args.
Raises the event, iterating handlers until one sets Canceled.
The instance containing the event data.
Raised after a command successfully completes execution.
Raises the event, recording the command in history if undoable.
The instance containing the event data.
Raised when a command encounters an error during execution.
Raises the event.
The instance containing the event data.
Raised when the workbook's theme is changed.
Called when [theme changed].
Raised when the user selects a different sheet.
Called when the active sheet is changed.
Raised when any content changes, throttled according to WorkbookContentChangedInterval.
Called when [workbook content changed].
Schedules the WorkbookContentChanged event to fire after the throttling interval.
Raised when the workbook's protection state changes between protected and unprotected.
Called when [is protected changed].
Raised when the workbook's name property changes.
Two-dimensional grid organizing cells into rows and columns with filtering, sorting, formulas, and styling. Use to manage worksheet content, properties, and layout within a workbook.
Provides access to the cell collection for reading and modifying cell content, formulas, and formatting.
The cells of the worksheet.
Provides access to the row collection for managing row heights, visibility, and row-level formatting.
The rows of the worksheet.
Provides access to the column collection for managing column widths, visibility, and column-level formatting.
The columns of the worksheet.
Returns the sheet type identifier, always SheetType.Worksheet for worksheet instances.
The type of the sheet.
Controls the default column width applied to columns without explicit width settings.
The default width of the column.
Controls the default row height applied to rows without explicit height settings.
The default height of the row.
Returns the bounding range encompassing all cells with content or formatting, indicating the worksheet's active data area.
The used cell range.
Provides access to the collection of hyperlinks defined in the worksheet for navigation and external references.
The hyperlinks.
Provides access to worksheet-scoped named ranges and constants that can be referenced in formulas.
The collection of defined names of the worksheet.
Provides access to the spill state of the worksheet, indicating the status of dynamic array formulas.
The worksheet spill state.
Provides access to all floating shapes (images, charts, notes, comments) inserted in the worksheet.
The shapes.
Provides access to cell notes (legacy comments) attached to cells in the worksheet.
The notes.
Provides access to modern threaded comments attached to cells in the worksheet.
The comments.
Provides access to floating images positioned on the worksheet.
The images.
Provides access to charts visualizing data from the worksheet or other sources.
The charts.
Provides access to page layout settings for printing and PDF export, including margins, orientation, and paper size.
The worksheet page setup.
Returns the base page setup implementation for this sheet type.
The sheet page setup.
Provides access to the current sort configuration applied to the worksheet data.
The sort state.
Controls which operations users can perform on a protected worksheet, such as inserting rows or formatting cells.
The protection options.
Provides access to the auto-filter configuration for hiding rows based on column criteria.
The filtering of the worksheet.
Provides access to display settings including zoom, frozen panes, selection, and gridline visibility.
The view state of the worksheet.
Provides access to row and column grouping settings for outlining and collapsing data sections.
The grouping properties.
Controls how row and column headers are rendered, enabling custom labeling schemes beyond default A-Z and 1-N.
The header name rendering converter.
Creates a new WorksheetViewState instance initialized with default display settings.
A new worksheet view state.
Searches for the first occurrence of text in the worksheet matching the specified criteria and returns its location.
The find options.
The first matching result, or null if not found.
Searches for all occurrences of text in the worksheet matching the specified criteria and returns their locations.
The find options.
All matching results in the worksheet.
Executes replace action according to the specified replace options.
The replace options.
The value indicating whether a value was found to replace.
Executes replace all action according to the specified replace options.
The replace options.
The number of replacements made.
Caches the expand to fit ranges.
The cell ranges.
Protects the worksheet.
The password.
The protection options of the worksheet.
Unprotects the worksheet.
The password.
Copies contents from a source into this instance.
This instance contents are overridden from the source contents.
The worksheet to copy from.
Gets the used cell range for a specific cell property definition.
The cell property definition from
The used cell range for specific cell property definitions.
Gets the used cell range for specific cell property definitions.
The cell property definitions from
The used cell range for specific cell property definitions.
Disposes the specified disposing.
The disposing.
Associates a cell index with its containing worksheet, linking row and column coordinates to a specific sheet.
Provides the row and column coordinates of the cell within the worksheet.
The index of the cell.
Returns the worksheet containing this cell.
The worksheet.
Initializes a new instance of the class.
The worksheet.
Index of the row.
Index of the column.
Initializes a new instance of the class.
The worksheet.
Index of the cell.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Typed collection providing filtered access to worksheets within a workbook, excluding other sheet types.
Encapsulates a copied range of cells and shapes for clipboard operations and paste actions with format options.
Returns the bounding range of cells included in this fragment.
The cell range of the fragment.
Gets the shapes included in the fragment.
The shapes.
Returns the temporary workbook holding the fragment's data during copy/paste operations.
The workbook.
Returns the temporary worksheet holding the fragment's cell data and properties.
The worksheet.
Performs application-defined tasks associated with freeing, releasing,
or resetting unmanaged resources.
Disposes the specified clean up managed resources.
The clean up managed resources.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Manages the visible portion and display settings of a worksheet, including zoom, frozen panes, selection, and gridline visibility.
Controls the zoom level for the worksheet view, affecting how content is displayed without changing cell data.
The scale factor.
Identifies the cell displayed at the top-left corner of the scrollable viewport, determining the visible area.
The index of the top left cell of the screen.
Tracks the active cell and selected ranges within the worksheet.
The state of the selection.
Indicates whether this worksheet is the currently active sheet in the workbook.
The value indicating if the sheet is selected.
Controls the visibility of cell gridlines in the worksheet view.
The value indicating if the gridlines should be shown.
Controls the visibility of row numbers and column letters in the worksheet view.
The value indicating if the row and column headings should be shown.
Defines the frozen pane configuration for locking rows and columns during scrolling.
The pane.
Gets or sets a value indicating whether to circle the invalid data.
The value indicating whether to circle the invalid data.
Gets or sets a value indicating how the worksheet should be displayed.
The desired view type.
Initializes a new instance of the class.
Freezes the sheet panes.
The number of rows which will be frozen.
The number of columns which will be frozen.
Freezes the sheet panes.
The top left cell index of the fixed pane.
The number of rows which will be frozen.
The number of columns which will be frozen.
Freezes the sheet panes.
The top left cell index of the fixed pane.
The number of rows which will be frozen.
The number of columns which will be frozen.
The top left cell index of the scrollable pane.
Returns a that represents the current
.
A that represents the current .
Provides data for events raised when cell properties are modified, including the affected range and property definition.
Returns the property definition that was changed.
The property.
Returns the range of cells affected by the property change.
The cell range.
Initializes a new instance of the class.
The property.
The cell range.
Declares all available cell property definitions for formatting, styling, and data validation used in the property system.
Gets format property definition.
Gets value property definition.
Gets style name property definition.
Gets left border property definition.
Gets top border property definition.
Gets right border property definition.
Gets bottom border property definition.
Gets diagonal up border property definition.
Gets diagonal down border property definition.
Gets ConditionalFormatting property definition.
Gets fill property definition.
Gets font family property definition.
Gets fonts size property definition.
Gets is bold property definition.
Gets is italic property definition.
Gets is strikethrough property definition.
Gets the vertical text alignment property definition for superscript and subscript.
Gets underline property definition.
Gets fore color property definition.
Gets horizontal alignment property definition.
Gets vertical alignment property definition.
Gets indent property definition.
Gets is wrapped property definition.
Gets text rotation property definition.
Gets is locked property definition.
Gets data validation property definition.
Gets all property definitions.
This method raises PropertyChanged for the entire used cell range for each property that
has been changed. It is used upon Import and cell references update. Use with caution!
This method raises PropertyChanged for the entire used cell range for each property that
has been changed. It is used upon Import and cell references update. Use with caution!
This method raises PropertyChanged for the entire used cell range for each property that
has been changed. It is used upon Import and cell references update. Use with caution!
Named collection of formatting properties applied to cells, enabling consistent appearance across cell ranges through style inheritance.
Returns the workbook that owns this style.
The workbook.
Returns the unique name identifying this style within the workbook.
The name of the style.
Returns the classification of this style for organizational purposes.
The category.
Indicates whether this style can be deleted from the workbook; built-in styles cannot be removed.
The value indicating whether the style is removable.
Gets a value indicating whether the style is removed.
The value indicating whether the style is removed.
Gets the built in id.
The built in id.
Gets a value indicating whether an update is in progress.
The value indicating whether an update is in progress.
Gets or sets the left border.
The left border.
Gets or sets the top border.
The top border.
Gets or sets the right border.
The right border.
Gets or sets the bottom border.
The bottom border.
Gets or sets the diagonal up border.
The diagonal up border.
Gets or sets the diagonal down border.
The diagonal down border.
Gets or sets the fill.
The fill value.
Gets or sets the font family.
The font family.
Gets or sets the size of the font.
The size of the font.
Gets or sets a value indicating whether the text affected by the style is bold.
The value indicating whether the text affected by the style is bold..
Gets or sets a value indicating whether the text affected by the style is italic.
The value indicating whether the text affected by the style is italic.
Gets or sets a value indicating whether the text affected by the style has strikethrough decoration.
The value indicating whether the text affected by the style is strikethrough.
Gets or sets the vertical text alignment (none, superscript, or subscript) for the text affected by the style.
The vertical text alignment.
Gets or sets the underline.
The underline.
Gets or sets the fore color.
The fore color.
Gets or sets the horizontal alignment.
The horizontal alignment.
Gets or sets the vertical alignment.
The vertical alignment.
Gets or sets the indent.
The indent.
Gets or sets a value indicating whether the text affected by the style is wrapped.
The value indicating whether the text affected by the style is wrapped.
Gets or sets the text rotation degree in the range -90 to 90.
Gets or sets the format.
The format.
Gets or sets a value indicating whether the cell affected by the style is locked.
The value indicating whether the cell affected by the style is locked.
Gets or sets a value indicating whether the number property group is included.
The value indicating whether the number property group is included.
Gets or sets a value indicating whether the alignment property group is included.
The value indicating whether the alignment property group is included.
Gets or sets a value indicating whether the font property group is included.
The value indicating whether the font property group is included.
Gets or sets a value indicating whether the border property group is included.
The value indicating whether the border property group is included.
Gets or sets a value indicating whether the fill property group is included.
The value indicating whether the fill property group is included.
Gets or sets a value indicating whether the protection property group is included.
The value indicating whether the protection property group is included.
Creates temporary style.
The temporary style.
Copies the style properties from another style.
From style.
Determines whether the specified other style has same properties.
The other style.
True if has same properties.
Gets all properties.
All properties.
Begins the update.
Ends the update.
Determines whether the specified property definition is supported by the style.
The property definition.
True if supported.
Determines whether a value has been set for the specified property.
The type of the T.
The property definition.
True if has been set.
Gets a value indicating if the property is included in the style.
The property definition.
The value indicating if the property is included in the style.
Gets a value indicating whether the property group is included in cell style.
The style property group.
The value indicating whether the property group is included in cell style.
Sets a value indicating whether the property group is included in cell style.
The style property group.
The value indicating whether the property group is included in cell style.
Gets the property value.
The type of the T.
The property definition.
The property value.
Determines whether the specified is equal
to the current .
The object to compare with the current object.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Occurs when the style is changed.
Called when the style is changed.
Classifies cell styles into organizational groups for style management and discovery.
User-defined styles created by the application or user.
Styles indicating positive, negative, or neutral values with color-coded formatting.
Styles for data tables, calculations, and modeling with structured formatting.
Styles for section headers, titles, and hierarchical labels.
Styles that reference workbook theme colors and fonts for consistent branding.
Styles focused on number formatting patterns such as currency, percentage, and scientific notation.
Represents cell style collection.
Gets the workbook.
The workbook.
Gets the count of the styles.
The count of the styles.
Gets the with the specified style name.
The name of the desired style.
The style.
Determines whether the style with the specified name is contained.
Name of the style.
True if is contained.
Determines whether the specified style is contained.
The style.
True if is contained.
Gets the style by name.
Name of the style.
The style.
Adds the specified style.
Name of the style.
The category.
A value indicating if the style can be removed later.
The style.
Removes the specified style by name.
Name of the style.
True if succeed.
Removes the specified style.
The style.
True if succeed.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Occurs when the collection is changed.
Called when the collection is changed.
Sets the default value as local value.
The cell range.
Defines metadata for a cell property, including its name, default value, layout impact, and behavior during cell insertion operations.
Indicates whether newly inserted cells inherit this property value from the preceding cell.
The value indicating whether to use same value as previous on insert.
The unique identifier for this property definition.
The name of the property.
Indicates whether changes to this property require recalculating cell positions and sizes in the layout.
The value indicating whether the property affects layout.
The category to which this property belongs (Number, Alignment, Font, Border, Fill, Protection), used for selective style application.
The style property group.
Defines strongly-typed metadata for a cell property, providing compile-time type safety and a default value of type .
The type of T.
The default value returned when this property is not explicitly set on a cell, row, or column.
The default value.
Defines strongly-typed metadata for a cell property, including its name, default value, layout impact, and style category.
The type of the T.
The unique identifier for this property definition.
The name of the property.
The default value returned when this property is not explicitly set on a cell, row, or column.
The default value.
Indicates whether changes to this property require recalculating cell positions and sizes in the layout.
The value indicating whether the property affects layout.
Indicates whether newly inserted cells inherit this property value from the preceding cell.
The value indicating whether to use same value as previous on insert.
The category to which this property belongs (Number, Alignment, Font, Border, Fill, Protection), used for selective style application.
The style property group.
Initializes a new instance of the class.
The name of the property.
The affects layout.
The style property group.
The default value.
The use same value as previous on insert.
Provides data for events raised when a property changes across a range of rows or columns.
The property that changed within the specified range of rows or columns.
The changed property.
The starting row or column index of the range affected by the property change.
The first index of the changed range.
The ending row or column index (inclusive) of the range affected by the property change.
The last index of the changed range.
Initializes a new instance of the class.
The property.
The first index of the changed range.
The last index of the changed range.
Provides data for events raised when one or more properties of a cell style are modified.
The collection of property definitions that were modified in the style.
The changed properties.
Initializes a new instance of the class.
The changed properties.
Categorizes cell properties into functional groups, enabling selective application of style attributes (e.g., applying only font properties without affecting borders).
Properties that do not belong to any specific style category.
Number format properties that control how cell values are displayed (e.g., currency, percentage, date formats).
Alignment properties that control text positioning, orientation, indentation, and wrapping within cells.
Font properties including family, size, color, weight, style, and underline attributes.
Border properties defining the style, color, and thickness of cell borders on all four edges and diagonals.
Fill properties that control cell background color, pattern, and gradient effects.
Protection properties that determine whether cells are locked or formulas are hidden when worksheet protection is enabled.
Performs a case sensitive comparison of two strings. It ignores the different types of space separators that may be included in the string.
The string.
The string the string is compared to.
The value indicating whether the strings are the same.
Provides methods for checking whether the parameters of methods fall within the expected conditions.
Asserts the specified condition.
The condition.
The message to throw in case the condition is not met.
Throws an exception if the parameter is less than the lower bound.
The type of the parameter.
The lower bound.
The parameter.
Name of the parameter.
Throws an exception if the parameters is greater than the upper bound.
The type of the parameter.
The upper bound.
The parameter.
Name of the parameter.
Throws an exception if out of range.
The type of the parameters.
The lower bound.
The upper bound.
The parameter.
Name of the parameter.
Throws an exception if the parameter is not equal to a value.
The type of the parameters.
The expected value.
The parameters.
Name of the parameter.
Throws an exception if the parameter is null.
The type of the parameter.
The parameter.
Name of the parameter.
Throws an exception if the parameter is not null.
The type of the parameter.
The parameter.
Name of the parameter.
Throws an exception if the parameter contains null or empty values.
The parameter.
Name of the parameter.
Throws an exception if the parameter is null or empty.
The type of the parameter.
The parameter.
Name of the parameter.
Throws an exception if the parameter contains null values.
The type of the parameter.
The parameter.
Name of the parameter.
Throws the exception if the parameter is null or empty.
The parameter.
Name of the parameter.
Throws an exception if the row index is invalid.
Index of the row.
Throws an exception if the column index is invalid.
Index of the column.
Exception that carries a localization key and format arguments, enabling display of error messages in the user's preferred language.
The key used to retrieve the localized error message from a resource dictionary.
The localization key.
Arguments used to format the localized error message template, providing contextual values like parameter names or values.
The format string arguments.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
The message.
The key.
The format string arguments.
Initializes a new instance of the class.
The message.
The inner exception.
Initializes a new instance of the class.
The message.
The inner exception.
The key.
The format string arguments.
Converts between zero-based cell indices and Excel A1-style names (e.g., row 0 / column 1 to "B1") for use in formulas and display.
Converts a zero-based row index to its 1-based Excel row name (e.g., 0 to "1", 999 to "1000").
Index of the row.
The name.
Parses a 1-based Excel row name (e.g., "1", "1000") to a zero-based row index, throwing on invalid input.
Name of the row.
The index.
Tries to parse a 1-based Excel row name to a zero-based index, returning false if invalid or out of range.
Name of the row.
Index of the row.
Boolean value indicating whether the convertion is successful.
Converts a zero-based column index to its Excel alphabetic column name (e.g., 0 to "A", 25 to "Z", 26 to "AA").
Index of the column.
The name.
Parses an Excel alphabetic column name (e.g., "A", "Z", "AA") to a zero-based column index, throwing on invalid input.
Name of the column.
The index.
Parses a cell range name string (e.g., "A1:B10") into a CellReferenceRangeExpression relative to the specified cell position, returning false if invalid.
The cell ranges names.
The worksheet.
The row index of the cell for which the expression is created.
The column index of the cell for which the expression is created.
The expression.
True if converter successfuly, else false.
Tries to parse an alphabetic column name to a zero-based index, validating against the maximum column count.
Name of the column.
Index of the column.
The index.
Combines a zero-based row and column index into an A1-style cell name (e.g., row 0, column 1 to "B1").
Index of the row.
Index of the column.
The name.
Formats a CellReference into an A1-style name, preserving absolute reference markers (e.g., $A$1).
The cell reference.
The name.
Formats a cell range into an A1-style name (e.g., "A1:B10"), detecting full-row or full-column ranges.
From index.
To index.
The name.
Formats a CellRange into an A1-style name (e.g., "A1:B10"), detecting full-row or full-column ranges.
The range.
The name.
Formats a range defined by two CellReferences into an A1-style name, preserving absolute markers (e.g., "$A$1:$B$10").
The start cell reference.
The end cell reference.
The name.
Formats zero-based row and column indices into an A1-style range name (e.g., "A1:B10").
The start row index.
The start column index.
The end row index.
The end column index.
The name.
Formats a CellIndex into an A1-style cell name (e.g., row 0, column 1 to "B1").
The cell index.
The name.
Parses an A1-style cell name (e.g., "B1") into zero-based row and column indices, throwing on invalid input.
Name of the cell.
Index of the row.
Index of the column.
Tries to parse an A1-style cell name (e.g., "B1") into zero-based indices, returning false if invalid or out of range.
Name of the cell.
Index of the row.
Index of the column.
The value indicating whether the conversion was successful.
Tries to parse an A1-style range name (e.g., "A1:B10", "1:5", "A:C") into a CellRange, returning false if invalid.
The cell range name.
The CellRange instance.
True if successful, otherwise False.
Parses an A1-style cell name into zero-based indices and detects absolute reference markers (e.g., "$A$1" sets both flags true).
Name of the cell.
The value indicating whether the row is absolute.
Index of the row.
The value indicating whether the column is absolute.
Index of the column.
Tries to parse an A1-style cell name into indices and absolute flags, returning false if invalid.
Name of the cell.
The is row absolute.
Index of the row.
The is column absolute.
Index of the column.
Validates whether a string is a valid A1-style cell name (e.g., "A1", "$B$10") within worksheet bounds.
Name of the cell.
The value indicating whether the name of the cell is valid.
Base class for converters that transform row and column indices into display names for spreadsheet headers, enabling custom numbering schemes.
Initializes a new instance of the HeaderNameRenderingConverterBase class. This is a base class for header name rendering converters.
Converts the name of the row index to.
The context.
Index of the row.
The row name.
Converts the name of the column index to.
The context.
Index of the column.
The column name.
Provides contextual information to header name converters, including the target worksheet and visible range, to enable context-aware header rendering.
The worksheet for which header names are being rendered.
The worksheet.
The range of cells currently visible in the viewport, used to optimize header rendering for large worksheets.
The visible range.
Initializes a new instance of the class.
The worksheet.
The visible range.
Measures execution time and hit count for code snippets during performance testing, optionally logging start and end events.
Number of times Start was called since the last Reset, incremented on each measurement.
The hit counter.
Cumulative milliseconds elapsed between all Start/Stop pairs since the last Reset.
The total milliseconds.
Initializes a new performance counter with the specified snippet name, optionally enabling debug logging for start and end events.
Name of the snippet.
The value indicating whether logging should be used.
Starts a measurement interval, recording the current time and incrementing the hit counter; logs on first call.
Stops the current measurement interval and accumulates its elapsed time into TotalMilliseconds.
Stops the current interval if running and logs the final accumulated time and hit count.
Resets all accumulated time, hit count, and state flags to prepare for a new measurement session.
Determines the new top left of an adorner or shape when the adorner or shape are resized. When the shape or
its adorner are resized while there is rotation angle applied, the top left corner must be changed.
This is done in order to maintain the visual top left to remain in place.
The shape current rectangle.
The rotation angle.
The new width. Negative value if the resizing causes the shape to flip horizontally. Otherwise positive.
The new height. Negative value if the resizing causes the shape to flip vertically. Otherwise positive.
Boolean value indicating whether the left side of the shape is being resized.
Boolean value indicating whether the top side of the shape is being resized.
The new top left coordinate.
Gets the lock aspect ratio scale factor which should be applied to the proposed width and height.
The width:height aspect ratio.
The proposed new width.
The proposed new height.
The scale factor.
Exposes the current culture's separators for numbers, currency, lists, arrays, dates, and times used in spreadsheet operations.
The current culture's decimal separator used in number formatting and parsing (e.g., "." or ",").
The number decimal separator.
The current culture's thousands grouping separator used in number formatting (e.g., "," in "1,000").
The number group separator.
The current culture's decimal separator used in currency formatting and parsing.
The currency decimal separator.
The current culture's thousands grouping separator used in currency formatting.
The currency group separator.
The current culture's list separator used for function arguments in formulas (e.g., "," or ";").
The list separator.
The current culture's separator used for array columns in array formulas.
The array list separator.
The current culture's separator used for array rows in array formulas.
The array row separator.
The current culture's text qualifier used to delimit string literals in formulas and CSV data.
The text qualifier.
The current culture's separator used between hours, minutes, and seconds in time formatting.
The time separator.
The current culture's separator used between day, month, and year components in date formatting.
The date separator.
Transforms the specified value using current general transform.
The general transform.
The value.
The transformed value.
Transforms the specified value using current general transform.
The general transform.
The value.
The transformed value.
Provides culture-specific separators, parsing, and formatting rules for cell values, formulas, numbers, dates, and currency in spreadsheet operations.
Initializes a new culture helper bound to the specified culture, which determines separators and number formats.
The culture for the new instance.
The culture used by this helper to determine separators, number formats, and parsing rules.
Extensions for the class.
Reads number of bytes from the current stream and advances the position within the stream.
The stream to read from.
An array of bytes. When this method returns, the buffer contains the specified byte array with the values
between and ( + - 1) replaced
by the bytes read from the current stream.
The byte offset in at which to begin storing the data read from the current stream.
The number of bytes to be read from the current stream.
is .
is outside the bounds of .
-or-
is negative.
-or-
The range specified by the combination of and exceeds the
length of .
The end of the stream is reached before reading number of bytes.
When is 0 (zero), this read operation will be completed without waiting for available data in the stream.
Asynchronously reads the bytes from the current stream and writes them to another stream. Both streams positions are advanced by the number of bytes copied.
The stream to which the contents of the current stream will be copied.
The token to monitor for cancellation requests.
A task that represents the asynchronous copy operation.
Converts between device-independent pixels (dips) and various measurement units (points, picas, inches, centimeters, twips, EMUs) for layout and sizing.
Converts dips to points using the 96 DPI standard (1 inch = 72 points).
Pixels.
Points.
Converts dips to points and rounds to the nearest integer.
Pixels.
Points.
Converts dips to picas using the 96 DPI standard (1 pica = 1/6 inch = 12 points).
Pixels.
Picas.
Converts dips to centimeters using the 96 DPI standard (1 inch = 2.54 cm).
Pixels.
Centimeters.
Converts dips to millimeters using the 96 DPI standard (1 cm = 10 mm).
Pixels.
Millimeters.
Converts dips to inches using the 96 DPI standard (96 dips = 1 inch).
Pixels.
Inches.
Converts dips to twips using the 96 DPI standard (1 twip = 1/1440 inch = 1/20 point).
Pixels.
Twips.
Converts dips to English Metric Units (EMUs) used in Office Open XML (1 EMU = 1/914400 inch).
Dips.
EMUs.
Converts dips to twips and rounds to the nearest integer.
Pixels.
Twips.
Converts dips to twips and returns as a single-precision float.
Pixels.
Twips.
Converts twips to dips and returns as a single-precision float.
Twips.
Dips.
Converts twips to dips and truncates to an integer.
Twips.
Dips.
Converts dips to the specified unit type, dispatching to the appropriate conversion method.
Pixels.
Unit type.
Units.
Converts points to dips using the 96 DPI standard (1 inch = 72 points).
Points.
Pixels.
Converts picas to dips using the 96 DPI standard (1 pica = 1/6 inch = 12 points).
Picas.
Pixels.
Converts English Metric Units (EMUs) to dips using the 96 DPI standard (1 EMU = 1/914400 inch).
EMUs.
Pixels.
Converts centimeters to dips using the 96 DPI standard (1 inch = 2.54 cm).
Centimeters.
Pixels.
Converts millimeters to dips using the 96 DPI standard (1 cm = 10 mm).
Millimeteres.
Pixels.
Converts inches to dips using the 96 DPI standard (96 dips = 1 inch).
Inches.
Pixels.
Converts twips to dips using the 96 DPI standard (1 twip = 1/1440 inch = 1/20 point).
Twips.
Pixels.
Converts the specified unit type to dips, dispatching to the appropriate conversion method.
Units.
Unit type.
Pixels.
Converts pixel width to Excel's character-based column width units, based on the Normal style's maximum digit width.
The workbook.
The pixels.
Converts Excel's character-based column width units to pixel width, based on the Normal style's maximum digit width.
The workbook.
The width.
Defines the measurement units supported for layout and conversion operations in spreadsheet documents.
Device-independent pixels (96 DPI standard).
Points (1/72 inch).
Picas (1/6 inch or 12 points).
Inches (imperial measurement).
Millimeters (metric measurement).
Centimeters (metric measurement).
Twips (1/1440 inch or 1/20 point).