WBS Core, Dodeca 8.3

Functions

ActiveCell

Returns the address of the active cell.

@ACell()

ActiveSheetName

Returns the name of the active sheet.

@ASheet()

ActiveSheetNumber

Returns the number of the active sheet.

@ASheetNumber()

AddressOfRange

Returns the address of the specified range.

@AddrOfRng(<address>, [<Absolute>]) || @AddrOfRng(<StartRow>, <StartColumn>, <EndRow>, <EndColumn>, [<Absolute>])
Argument Name Description

Absolute

Optional (default value: 1); See the Excel Address() function for an explanation of the Absolute argument.

Address

This would typically be a range name that you want the address of.

EndColumn

The column that ends the range.

EndRow

The row that ends the range.

StartColumn

The column that starts the range.

StartRow

The row that starts the range.

ApplicationID

Returns the Dodeca Application's ID.

@AppID()

AttachmentCount

Returns the number of items attached to comments in the specified range.

Since version 8.3

@AttachmentCount([<Address>])
Argument Name Description

Address

Optional (defaults to the selected range); The adddress of the cell or range that contains the comments.

AuthenticatedUserName

Returns the authenticated user ID.

@AuthenticatedUserName()

AuthenticatedUserRoles

Returns a delimited list of roles, based on the roles of the authenticated user.

@AuthenticatedUserRoles(<Delimiter>)
Argument Name Description

Delimiter

The delimiter of the returned list.

Base64Decode

Returns a decoded representation of a given Base64-encoded string.

Since version 8.0

@Base64Decode(<EncodedString>)
Argument Name Description

EncodedString

The base64 encoded string to decode.

Base64Encode

Returns a Base64-encoded representation of a given string.

Since version 8.0

@Base64Encode(<String>)
Argument Name Description

String

The string to base64-encode.

BinaryArtifactExistsFunction

Determines whether the specified binary artifact exists.

Since version 7.7

@BinaryArtifactExists(<BinaryArtifactID>, [<VersionNumber>])
Argument Name Description

BinaryArtifactID

(Required) The ID of the binary artifact.

VersionNumber

(Optional) Indicates a version number for the binary artifact. The default value is 1.

CascadeSheetCount

Returns the number of worksheets that will be created based on the current selections in selectors designated as CascadeSources.

@CascadeSheetCount()

CellFillColor

Returns the background color of a cell.

@CellFillColor([<Address>])
Argument Name Description

Cell

Optional (defaults to the selected cell); The address of the cell.

CellIsHidden

Returns True or False based on whether the cells in the specified range are hidden.

@CellIsHidden([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the cell to test.

CellIsLocked

Returns True or False based on whether the cells in the specified range are locked.

@CellIsLocked([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the cell to test.

CellsAddress

Returns the address of the range of all the cells on the current worksheet.

@CellsAddress()

Checksum

Returns an SHA-1 hash of the values in the given range. This function can be used to compute changes within a range, which can be specified as a defined name or an address. This function can work with discontiguous ranges.

@Checksum(<Range>)
Argument Name Description

Range

The range name or address.

ColumnLetter

Returns the Alphabetic respresentation of the specified column number.

@ColL(<ColumnNumber>)
Argument Name Description

ColumnNumber

The number of the column. 1=A, 2=B, 3=C, etc.

ColumnWidth

Returns the column width of a cell.

@ColWidth([<Address>])
Argument Name Description

Cell

Optional (defaults to the selected cell); The address of the cell.

CommandLineArg

Returns the value of the specified standard or custom command-line argument. The standard command-line arguments include tenant, servletPath, userDomain, username, machineName, appID, defaultViewID, and savedViewID.

@CommandLineArg(<argument>)
Argument Name Description

Argument

The name of the argument.

CommentProperty

Returns the value of the specified comment property from the comment that triggered a comment-related event. This function only works when used within the context of a comment-related event that exposes the comment as an event arguments.

@CmtProp(<PropertyName>)
Argument Name Description

PropertyName

The name of the comment property. Valid property names include the following: CommentId, CommentText, Context, CreatedBy, CreatedDate, KeyHash, Subject, UpdatedBy, UpdatedDate

CommentPropertyForCell

Returns the value of the specified comment property from the most recent comment associated with the specified cell.

Since version 7.1

@CmtPropForCell(<PropertyName>, [<CellAddress>])
Argument Name Description

CellAddress

Optional (default is the active/current cell). The address of the cell.

PropertyName

The name of the comment property. Valid property names include the following: CommentId, CommentText, Context, CreatedBy, CreatedDate, KeyHash, Subject, UpdatedBy, UpdatedDate

Contains

Returns True or False, based on whether the first specified string contains the second specified string.

Since version 7.2

@Contains(<Substring>, <WithinString>, [<IgnoreCase>], [<HonorWildcards>])
Argument Name Description

HonorWildcards

Optional (default is FALSE). Whether to honor wildcards (* or ?).

IgnoreCase

Optional (default is TRUE). Whether to ignore case.

Substring

The substring to find in the WithinString.

WithinString

The string to search for the Substring.

CurrentColumn

Returns the number of the current column.

@CCol()

CurrentRow

Returns the number of the current row.

@CRow()

CurrentSelection

Returns the address of the current selection.

@Selection()

DataCacheContents

Returns the contents of a specified DataCache.

@DCC(<DataCacheName>, [SortOrder])
Argument Name Description

DataCacheName

The name of the data-cache.

SortOrder

Comma delimited list of columns to sort the DataCache by. When specifying more than one column SortOrder must be in quotes. Example: Col1 Example: Col1, Col3 Example: "Col2 DESC, Col1 ASC"

DataCacheCount

Returns the number of rows in the specified DataCache.

@DCCount(<DataCacheName>)
Argument Name Description

DataCacheName

The name of the data-cache.

DataCacheToString

Returns a string of values from the a column of specified DataCache.

Since version 7.7

@DCString(<DataCacheName>, [ColumnIndex], [StringDelimiter], [StringDelimiterEscapeChar], [ValueDelimiter], [SortOrder])
Argument Name Description

ColumnIndex

Optional (default is "1"); The column number to build the string from.

DataCacheName

The name of the DataCache.

SortOrder

Comma delimited list of columns to sort the DataCache by. When specifying more than one column SortOrder must be in quotes. Example: Col1 Example: Col1, Col3 Example: "Col2 DESC, Col1 ASC"

StringDelimiter

Optional (default is none); The character to use to wrap each value in the resulting string, typically a single-quote or double-quote.

StringDelimiterEscapeChar

Optional (default is StringDelimiter); Each occurrence of StringDelimiter within a string will be prepended with the StringDelimiterEscapeChar.

ValueDelimiter

Optional (default is ","); The character (or string) to use to separate each value.

DataSetRangeIndex

Returns the zero-based index representing the relative position of the specified SQLPassthroughDataSet range within the view's DataSetRanges collection.

@DataSetRangeIndex(<SQLPassthroughDataSetID>)
Argument Name Description

SQLPassthroughDataSetID

The ID of the SQLPassthroughDataSet whose zero-based index within the DataSetRanges collection is returned.

DataTableRangeColumnInfo

Returns the name or data type of a data table range column. The data must be retrieved before calling this function.

Since version 8.0

@DataTableRangeColumnInfo(<Type>,[<Address>])
Argument Name Description

Address

Optional (default is the active cell). The address that identifies the data column.

Type

The type of column information. Valid values are Name and DataType. When DataType is specified, the function returns the .NET equivalent of the database data type.

DataTableRangeColumnInfoByIndex

Returns the name or data type of a data table range column. The data must be retrieved before calling this function.

Since version 8.0

@DataTableRangeColumnInfoByIndex(<Type>,<SQLPassthroughDataSetID>,<DataTableName>,<Index>)
Argument Name Description

DataTableName

The name of the DataTable that contains the column.

Index

The one-based index that identifies the column within the data table range.

SQLPassthroughDataSetID

The ID of the SQLPassthroughDataSet that contains the data table.

Type

The type of column information. Valid values are Name and DataType. When DataType is specified, the function returns the .NET equivalent of the database data type.

DataTableRangeHasChanges

Returns whether a specific range within a DataTableRange's sheet range has any unsaved changes. Any named range or address within the DataTableRange's sheet range may be used. If an address is not specified, the current cell address is used.

Since version 8.3

@DataTableRangeHasChanges([<Address>])
Argument Name Description

Address

Optional (default is the active cell). A range name or address within a datatable range.

DataTableRangeRowHasChanges

Returns whether a specific data row within a DataTableRange's sheet range has any unsaved changes. The address of any cell within the data row or the address of the sheet row may be used to identify the data row. If an address is not specified, the current cell address is used.

@DataTableRangeRowHasChanges([<Address>])
Argument Name Description

Address

Optional (default is the active cell). The address that identifies the data row.

DataTableRangeRowState

Returns whether a specific data row within a DataTableRange's sheet range was Added, Modified, or is Unchanged. The address of any cell within the data row or the address of the sheet row may be used to identify the data row. If an address is not specified, the current cell address is used.

@DataTableRangeRowState([<Address>])
Argument Name Description

Address

Optional (default is the active cell). The address that identifies the data row.

DataTableSheetRangeName

Returns the name of the DataTableRange's sheet range that contains the specified cell. If a cell address is not specified, the current cell is used.

@DataTableSheetRangeName([<Address>])
Argument Name Description

Address

Optional (default is the active cell). The address of the cell.

DefinedNameExists

Returns TRUE if the specified DefinedName exists.

@DefinedNameExists(<DefinedName>)
Argument Name Description

DefinedName

The defined-name to test.

DefinedNames

Returns a list of defined names based on a specified scope.

Since version 7.7

@DefinedNames([<MatchPattern>], [<Scope>], [<ReturnFormat>])
Argument Name Description

MatchPattern

Enter a regex pattern to match or leave blank for all defined names. https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference

ReturnFormat

"S[imple]", a comma delimited unique list of defined names. "D[etailed]", a row-and-column delimited list of: Unique-Key: If Scope is Workbook or CurrentWorksheet then the key will be the range name, otherwise it will be <sheet-name>!<range-name>. DefinedName: The actual defined name. Scope: If Scope is Workbook then "Workbook", otherwise the sheet-name of the sheet that the range refers to. Refers-To: What the defined name refers to. Default = Simple. (case insensitive)

Scope

"W[orkbook]", "A[llWorksheets]", or "C[urrentWorksheet]". Default = "CurrentWorksheet". (case insensitive)

DelimitedStringFromRangeValues

Returns a delimited string containing the values of a worksheet range.

@StringFromRange(Range, [ColumnDelimiter], [RowDelimiter], [Transpose])
Argument Name Description

ColumnDelimiter

Optional (default is ";"); The character to use to delimit columns.

Range

The address of the range to build the string from.

RowDelimiter

Optional (default is "|"); The character to use to delimit rows.

Transpose

Optional (default is false); If true row and column positions will be swapped.

Evaluate

Evaluates a string as a Dodeca formula.

Since version 8.0

Hidden in 8.0.0 - Added for internal testing purposes.

@Evaluate(<Formula>)
Argument Name Description

Formula

A string containing a formula to be evaluated by Dodeca.

EventPropertyValue

Returns the value of the specified property of the event that triggered the method. A null string is returned without error if the property does not exist.

@EPVal(<PropertyName>)
Argument Name Description

PropertyName

The name of the event property.

ExcelComment

Returns the Excel comment text, if any, for the specified cell. If the cell does not have a comment, returns an empty string.

@ExcelComment([<Address>])
Argument Name Description

Address

Optional (defaults to the active cell); The address of the cell.

ExpandEnvironmentVariables

Replaces the name of each environment variable embedded in the specified string with the value of the variable.

Since version 8.3

@EEV(<Value>)
Argument Name Description

Value

A string containing the names of zero or more environment variables. Each environment variable is quoted with the percent sign character (%).

FileExists

Returns True or False, based on whether the file exists on the client filesystem.

Since version 7.2

@FileExists(<FileName>, [<SpecialFolder>])
Argument Name Description

FileName

The file name or path of the file to be checked. If a SpecialFolder is specified, the FileName will be appended to the folder path.

SpecialFolder

Optional; The special folder in which to check for the file. Valid values are "desktop", "documents", "appdata", "favorites", and "personal".

FirstCell

Returns the address of the first cell of a range.

Since version 7.4

@FCell([<Address>])
Argument Name Description

Address

If an address is not specified the first cell of the sheet's used range is returned.

FirstColumn

Returns the index of the first column of a range.

@FCol([<Address>])
Argument Name Description

Address

If an address is not specified the first-used column on the sheet is returned.

FirstColumnLetter

Returns the letter value of the first column of a range.

Since version 7.3

@FColL([<Address>], [<AdjustBy>])
Argument Name Description

Address

If an address is not specified the first-used column on the sheet is returned.

AdjustBy

If specified, will be added to the result. A negative value can be used. Integer. Optional.

FirstRow

Returns the index of the first row of a range.

@FRow([<Address>])
Argument Name Description

Address

If an address is not specified the first-used row on the sheet is returned.

FormulaBarIsVisible

Returns True/False indicating whether the Formula Bar is visible.

@FormulaBarIsVisible()

Guid

Returns a string representation of a globally unique identifier, GUID, that can be used wherever a unique identifier is required.

@Guid()

HasExcelComment

Returns True or False based on whether the specified cell has a comment.

@HasExcelComment([<Address>])
Argument Name Description

Address

Optional (defaults to the active cell); The address of the cell to test.

IntersectionOfRanges

Returns the address of the intersection of the two specified ranges.

@Intersection(<Range1>, <Range2>)
Argument Name Description

Range1

The first range.

Range2

The second range.

IsEven

Returns True/False indicating whether the specified number is even.

@IsEven(<Number>)
Argument Name Description

Number

The number to test.

IsInCharacterRange

Returns True/False indicating whether the specified string is limited to the specified character range.

@IsInCharacterRange(<Character Range>, <String>)
Argument Name Description

Character Range

The character range. Valid values include ASCII, Single-Byte, Double-Byte, and Multi-Byte.

String

The string to test.

IsInRole

Returns True or False, based on whether the authenticated user ID has the specified role.

@IsInRole(<Role>)
Argument Name Description

Role

The role to test.

IsOdd

Returns True/False indicating whether the specified number is odd.

@IsOdd(<Number>)
Argument Name Description

Number

The number to test.

IsProtectedSheet

Returns True/False indicating whether the active (or specified) sheet is protected.

Since version 7.2

@IsProtectedSheet([<SheetNameOrIndex>])
Argument Name Description

SheetNameOrIndex

The name or sheet for which to check the protection status. If a sheet is not specified, the active sheet is checked.

IsSavedView

Returns True/False indicating whether the view is a SavedView.

@IsSavedView()

IsSharedView

Returns True/False indicating whether the view was shared by another user.

Since version 7.3

@IsSharedView()

IsValidRange

Returns True/False indicating whether the specified value can be resolved to a valid range address.

Since version 8.0

@IsValidRange(<NameOrAddress>)
Argument Name Description

NameOrAddress

A defined range name or an address to be evaluated.

KeyItems

Returns the Comment KeyItems of a specific cell. If the cell is not in a CommentRange nothing will be returned.

Since version 8.3

@KeyItems([<Address>])
Argument Name Description

Address

Optional (defaults to the active cell); The address of the cell to get the KeyItems from. This requires the specified cell to be in a CommentsRange.

LastCell

Returns the address of the last cell of a range.

Since version 7.4

@LCell([<Address>])
Argument Name Description

Address

If an address is not specified the last cell of the sheet's used range is returned.

LastColumn

Returns the index of the last column of a range.

@LCol([<Address>])
Argument Name Description

Address

WARNING: If an address is not specified, then the column count of the used range is returned. If the origin of the used range is not in column A, the returned value must be adjusted by the number of columns to the left of the first column of the used range in order to compute the actual last column.

LastColumnLetter

Returns the letter value of the last column of a range.

Since version 7.3

@LColL([<Address>], [<AdjustBy>])
Argument Name Description

Address

If an address is not specified the last-used column on the sheet is returned.

AdjustBy

If specified, will be added to the result. A negative value can be used. Integer. Optional.

LastRow

Returns the index of the last row of a range.

@LRow([<Address>])
Argument Name Description

Address

If an address is not specified the last-used row on the sheet is returned.

LookupValue

Returns the first value of a specified column from the row specified by a row key, from a DataCache specified by the DataCacheName.

@LookupValue(<DataCacheName>, <Value>, <ColumnNumber>, [<KeyColumnNumber>], [<MatchType>], [<Trim>], [<IgnoreCase>])
Argument Name Description

ColumnNumber

The number of the column in the dataset to return if there is a match.

DataCacheName

The name of the data-cache to search.

IgnoreCase

Optional (default is FALSE); Only applies when MatchType="Exact". If TRUE case will be ignored when looking up the value.

KeyColumnNumber

Optional (default is 1); The column to inspect for the match.

MatchType

Optional (default is Exact); Valid values are Exact, Contains, StartsWith, and EndsWith.

Trim

Optional (default is TRUE); If TRUE the result will have trailing spaces removed.

Value

The value to search for.

MachineName

Returns the name of the workstation the user is on.

@MachineName()

MetadataInstanceExists

Returns True/False, indicating whether the specified metadata instance exists.

Since version 7.6

@MetadataInstanceExists(<MetadataInstanceID>, <MetadataCategory>, [<VersionNumber>])
Argument Name Description

MetadataCategory

(Required) The category of the metadata instance. Valid categories are: ESSBASE_CONNECTION MODULE SQL_CONNECTION VIEW_PROPERTY_SET ESSBASE_SCRIPT SELECTOR SQL_PASSTHROUGH_DATASET WORKBOOKSCRIPT GENERAL SELECTOR_LIST TOOLBARS_CONFIGURATION HIERARCHY SMART_CLIENT_APPLICATION VIEW

MetadataInstanceID

(Required) The ID of the metadata instance.

VersionNumber

(Optional) Indicates a version number for the metadata instance. The default value is 1.

Path

Returns results of Path related operations.

Since version 7.7

@Path(<Operation>, [<Argument1>], [<Argument2>])
Argument Name Description

Argument1

Depends on whether the Operation requires an argument.

Argument2

Depends on whether the Operation requires a second argument.

Operation

The path operation (case insensitive): @Path(CanRead, <path>) Returns True or False depending on whether the specified path exists and can be read by the current user. @Path(CleanFileName, <file-name>, <replace-with-character>) Replace characters that are not valid in file names with the specified character. @Path(CleanPath, <path>, <replace-with-character>) Replace characters that are not valid in file paths with the specified character. @Path(Combine, <path1>, <path2>) Combines two strings into a path. @Path(ChangeExtension, <path>, <extension>) Changes the extension of the specified path. @Path(Exists, <path>) Returns True or False depending on whether the specified path exists. @Path(GetDirectoryName, <path>) Returns the directory name from the specified path. @Path(GetExtension, <path>) Returns the extension of the specified path. @Path(GetFileName, <path>) Returns the filename with the extension of the specified path. @Path(GetFullPath, <path>) Returns the absolute path of the specified path. @Path(GetPathRoot, <path>) Returns the root directory information of the specified path. @Path(GetRandomFileName) Returns a random folder or filename. @Path(GetTempFileName) Creates a uniquely named, zero-byte temporary file on disk and returns the full path of that file. @Path(GetTempPath) Returns the path of the temporary folder of the current user. @Path(HasExtension, <path>) Determines whether a path includes a file name extension. @Path(IsPathRooted, <path>) Gets a value indicating whether the specified path string contains a root. @Path(RemoveExtension, <path>) Returns the filename without the extension of the specified path.

PropertyExists

Returns True/False indicating whether a Property with the specified name exists.

@PropertyExists(<PropertyName>)
Argument Name Description

PropertyName

The name of the script property.

PropertyIsNullOrEmpty

Returns True/False indicating whether a Property has a null value or, if the data type is string, whether the value is an empty string. If the property does not exist, returns True.

@PropertyIsNullOrEmpty(<PropertyName>)
Argument Name Description

PropertyName

The name of the script property.

PropertyValue

Returns the value of the specified script property.

@PVal(<PropertyName>)
Argument Name Description

PropertyName

The name of the script property.

RangeContainsRange

Returns TRUE or FALSE depending on whether the first range contains all of the second range.

@RangeContainsRange(<Range1>, <Range2>)
Argument Name Description

Range1

The first range.

Range2

The second range.

Replace

Replaces existing text with new text in a text string. Unlike the Excel Substitute function, this function does not limit the text argument values to 255 characters, and also allows for specifying whether a match is based on a case-sensitive or a case-insensitive comparison.

Since version 8.0

@Replace(<Text>, <OldText>, <NewText>, [<CaseSensitive>], [<InstanceNumber>])
Argument Name Description

CaseSensitive

Optional (default is true); Controls whether a case-sensitive comparison is used to detect a match.

InstanceNumber

Optional (default is 0, which indicates that all occurrences are replaced); The occurrence of OldText to replace with NewText, starting at 1 to indicate the first occurrence, 2 for the second, etc.

NewText

The text to replace the OldText with.

OldText

The text to replace.

Text

The text in which the occurrence(s) of OldText are replaced with NewText.

ReplaceTokens

Does token replacement on the specified string.

@ReplTokens(<Text>)
Argument Name Description

Text

The text to do token replacement on.

RowHeight

Returns the row height of a cell.

@RowHeight([<Address>])
Argument Name Description

Cell

Optional (defaults to the selected cell); The address of the cell.

SavedViewID

Returns the value of the SavedViewID property.

@SavedViewID()

SectionBreakRowOrColumnCount

Returns the number of rows or columns in a section. This function can be used to compute the address of a section to enable dynamic formulas to calculate a given view section. This function starts at the bottom or right of a given range and counts each row or column as it processes upward or leftward until it finds the next section break value. If the value is not found, this function returns the number of cells from the starting cell range to the start of the SectionValuesRange.

@SectionBreakRowOrColumnCount(<SectionValuesRange>, <StartCell>, <SectionValue>, <RowOrColumn>)
Argument Name Description

RowOrColumn

A string that specifies whether rows or columns are counted.

SectionValue

The cell that contains a value to find within the SectionValuesRange that determines the end of the section.

SectionValuesRange

The range containing values to be evaluated to find the SectionValue.

StartCell

The cell within the SectionValuesRange in which to start the evaluation.

SelectorDisplayedValue

Returns the displayed value of the specified Selector.

@SDVal(<SelectorID>, [<Delimiter>])
Argument Name Description

Delimiter

Optional (default is ;); The delimiter to use when there are multiple selections.

SelectorID

The ID of the selector.

SelectorValue

Returns the value of the specified Selector.

@SVal(<SelectorID>, [<Delimiter>])
Argument Name Description

Delimiter

Optional (default is ;); The delimiter to use when there are multiple selections.

SelectorID

The ID of the selector.

SelectorValueCount

Returns the number of selected items in the specified Selector.

@SValCount(<SelectorID>)
Argument Name Description

SelectorID

The ID of the selector.

ServerTime

Returns the current date/time from the Dodeca server as an Excel date/time value.

Since version 7.7

@ServerTime([<TimeZone>])
Argument Name Description

TimeZome

(Optional) The time zone to adjust the date/time for. The default return value is the server's date/time. America/Adak Australia/ACT Asia/Aden Europe/Amsterdam America/Anchorage Australia/Adelaide Asia/Almaty Europe/Andorra America/Anguilla Australia/Brisbane Asia/Amman Europe/Astrakhan America/Antigua Australia/Broken_Hill Asia/Anadyr Europe/Athens America/Araguaina Australia/Canberra Asia/Aqtau Europe/Belfast America/Argentina/Buenos_Aires Australia/Currie Asia/Aqtobe Europe/Belgrade America/Argentina/Catamarca Australia/Darwin Asia/Ashgabat Europe/Berlin America/Argentina/ComodRivadavia Australia/Eucla Asia/Ashkhabad Europe/Bratislava America/Argentina/Cordoba Australia/Hobart Asia/Atyrau Europe/Brussels America/Argentina/Jujuy Australia/LHI Asia/Baghdad Europe/Bucharest America/Argentina/La_Rioja Australia/Lindeman Asia/Bahrain Europe/Budapest America/Argentina/Mendoza Australia/Lord_Howe Asia/Baku Europe/Busingen America/Argentina/Rio_Gallegos Australia/Melbourne Asia/Bangkok Europe/Chisinau America/Argentina/Salta Australia/NSW Asia/Barnaul Europe/Copenhagen America/Argentina/San_Juan Australia/North Asia/Beirut Europe/Dublin America/Argentina/San_Luis Australia/Perth Asia/Bishkek Europe/Gibraltar America/Argentina/Tucuman Australia/Queensland Asia/Brunei Europe/Guernsey America/Argentina/Ushuaia Australia/South Asia/Calcutta Europe/Helsinki America/Aruba Australia/Sydney Asia/Chita Europe/Isle_of_Man America/Asuncion Australia/Tasmania Asia/Choibalsan Europe/Istanbul America/Atikokan Australia/Victoria Asia/Chongqing Europe/Jersey America/Atka Australia/West Asia/Chungking Europe/Kaliningrad America/Bahia Australia/Yancowinna Asia/Colombo Europe/Kiev America/Bahia_Banderas Pacific/Apia Asia/Dacca Europe/Kirov America/Barbados Pacific/Auckland Asia/Damascus Europe/Lisbon America/Belem Pacific/Bougainville Asia/Dhaka Europe/Ljubljana America/Belize Pacific/Chatham Asia/Dili Europe/London America/Blanc-Sablon Pacific/Chuuk Asia/Dubai Europe/Luxembourg America/Boa_Vista Pacific/Easter Asia/Dushanbe Europe/Madrid America/Bogota Pacific/Efate Asia/Famagusta Europe/Malta America/Boise Pacific/Enderbury Asia/Gaza Europe/Mariehamn America/Buenos_Aires Pacific/Fakaofo Asia/Harbin Europe/Minsk America/Cambridge_Bay Pacific/Fiji Asia/Hebron Europe/Monaco America/Campo_Grande Pacific/Funafuti Asia/Ho_Chi_Minh Europe/Moscow America/Cancun Pacific/Galapagos Asia/Hong_Kong Europe/Nicosia America/Caracas Pacific/Gambier Asia/Hovd Europe/Oslo America/Catamarca Pacific/Guadalcanal Asia/Irkutsk Europe/Paris America/Cayenne Pacific/Guam Asia/Istanbul Europe/Podgorica America/Cayman Pacific/Honolulu Asia/Jakarta Europe/Prague America/Chicago Pacific/Johnston Asia/Jayapura Europe/Riga America/Chihuahua Pacific/Kiritimati Asia/Jerusalem Europe/Rome America/Coral_Harbour Pacific/Kosrae Asia/Kabul Europe/Samara America/Cordoba Pacific/Kwajalein Asia/Kamchatka Europe/San_Marino America/Costa_Rica Pacific/Majuro Asia/Karachi Europe/Sarajevo America/Creston Pacific/Marquesas Asia/Kashgar Europe/Saratov America/Cuiaba Pacific/Midway Asia/Kathmandu Europe/Simferopol America/Curacao Pacific/Nauru Asia/Katmandu Europe/Skopje America/Danmarkshavn Pacific/Niue Asia/Khandyga Europe/Sofia America/Dawson Pacific/Norfolk Asia/Kolkata Europe/Stockholm America/Dawson_Creek Pacific/Noumea Asia/Krasnoyarsk Europe/Tallinn America/Denver Pacific/Pago_Pago Asia/Kuala_Lumpur Europe/Tirane America/Detroit Pacific/Palau Asia/Kuching Europe/Tiraspol America/Dominica Pacific/Pitcairn Asia/Kuwait Europe/Ulyanovsk America/Edmonton Pacific/Pohnpei Asia/Macao Europe/Uzhgorod America/Eirunepe Pacific/Ponape Asia/Macau Europe/Vaduz America/El_Salvador Pacific/Port_Moresby Asia/Magadan Europe/Vatican America/Ensenada Pacific/Rarotonga Asia/Makassar Europe/Vienna America/Fort_Nelson Pacific/Saipan Asia/Manila Europe/Vilnius America/Fort_Wayne Pacific/Samoa Asia/Muscat Europe/Volgograd America/Fortaleza Pacific/Tahiti Asia/Nicosia Europe/Warsaw America/Glace_Bay Pacific/Tarawa Asia/Novokuznetsk Europe/Zagreb America/Godthab Pacific/Tongatapu Asia/Novosibirsk Europe/Zaporozhye America/Goose_Bay Pacific/Truk Asia/Omsk Europe/Zurich America/Grand_Turk Pacific/Wake Asia/Oral Etc/GMT America/Grenada Pacific/Wallis Asia/Phnom_Penh Etc/GMT+0 America/Guadeloupe Pacific/Yap Asia/Pontianak Etc/GMT+1 America/Guatemala US/Alaska Asia/Pyongyang Etc/GMT+10 America/Guayaquil US/Aleutian Asia/Qatar Etc/GMT+11 America/Guyana US/Arizona Asia/Qyzylorda Etc/GMT+12 America/Halifax US/Central Asia/Rangoon Etc/GMT+2 America/Havana US/East-Indiana Asia/Riyadh Etc/GMT+3 America/Hermosillo US/Eastern Asia/Saigon Etc/GMT+4 America/Indiana/Indianapolis US/Hawaii Asia/Sakhalin Etc/GMT+5 America/Indiana/Knox US/Indiana-Starke Asia/Samarkand Etc/GMT+6 America/Indiana/Marengo US/Michigan Asia/Seoul Etc/GMT+7 America/Indiana/Petersburg US/Mountain Asia/Shanghai Etc/GMT+8 America/Indiana/Tell_City US/Pacific Asia/Singapore Etc/GMT+9 America/Indiana/Vevay US/Pacific-New Asia/Srednekolymsk Etc/GMT-0 America/Indiana/Vincennes US/Samoa Asia/Taipei Etc/GMT-1 America/Indiana/Winamac Africa/Abidjan Asia/Tashkent Etc/GMT-10 America/Indianapolis Africa/Accra Asia/Tbilisi Etc/GMT-11 America/Inuvik Africa/Addis_Ababa Asia/Tehran Etc/GMT-12 America/Iqaluit Africa/Algiers Asia/Tel_Aviv Etc/GMT-13 America/Jamaica Africa/Asmara Asia/Thimbu Etc/GMT-14 America/Jujuy Africa/Asmera Asia/Thimphu Etc/GMT-2 America/Juneau Africa/Bamako Asia/Tokyo Etc/GMT-3 America/Kentucky/Louisville Africa/Bangui Asia/Tomsk Etc/GMT-4 America/Kentucky/Monticello Africa/Banjul Asia/Ujung_Pandang Etc/GMT-5 America/Knox_IN Africa/Bissau Asia/Ulaanbaatar Etc/GMT-6 America/Kralendijk Africa/Blantyre Asia/Ulan_Bator Etc/GMT-7 America/La_Paz Africa/Brazzaville Asia/Urumqi Etc/GMT-8 America/Lima Africa/Bujumbura Asia/Ust-Nera Etc/GMT-9 America/Los_Angeles Africa/Cairo Asia/Vientiane Etc/GMT0 America/Louisville Africa/Casablanca Asia/Vladivostok Etc/UCT America/Lower_Princes Africa/Ceuta Asia/Yakutsk Etc/UTC America/Maceio Africa/Conakry Asia/Yangon Etc/Universal America/Managua Africa/Dakar Asia/Yekaterinburg Etc/Zulu America/Manaus Africa/Dar_es_Salaam Asia/Yerevan America/Marigot Africa/Djibouti America/Martinique Africa/Douala America/Matamoros Africa/El_Aaiun America/Mazatlan Africa/Freetown America/Mendoza Africa/Gaborone America/Menominee Africa/Harare America/Merida Africa/Johannesburg America/Metlakatla Africa/Juba America/Mexico_City Africa/Kampala America/Miquelon Africa/Khartoum America/Moncton Africa/Kigali America/Monterrey Africa/Kinshasa America/Montevideo Africa/Lagos America/Montreal Africa/Libreville America/Montserrat Africa/Lome America/Nassau Africa/Luanda America/New_York Africa/Lubumbashi America/Nipigon Africa/Lusaka America/Nome Africa/Malabo America/Noronha Africa/Maputo America/North_Dakota/Beulah Africa/Maseru America/North_Dakota/Center Africa/Mbabane America/North_Dakota/New_Salem Africa/Mogadishu America/Ojinaga Africa/Monrovia America/Panama Africa/Nairobi America/Pangnirtung Africa/Ndjamena America/Paramaribo Africa/Niamey America/Phoenix Africa/Nouakchott America/Port-au-Prince Africa/Ouagadougou America/Port_of_Spain Africa/Porto-Novo America/Porto_Acre Africa/Sao_Tome America/Porto_Velho Africa/Timbuktu America/Puerto_Rico Africa/Tripoli America/Punta_Arenas Africa/Tunis America/Rainy_River Africa/Windhoek America/Rankin_Inlet America/Recife America/Regina America/Resolute America/Rio_Branco America/Rosario America/Santa_Isabel America/Santarem America/Santiago America/Santo_Domingo America/Sao_Paulo America/Scoresbysund America/Shiprock America/Sitka America/St_Barthelemy America/St_Johns America/St_Kitts America/St_Lucia America/St_Thomas America/St_Vincent America/Swift_Current America/Tegucigalpa America/Thule America/Thunder_Bay America/Tijuana America/Toronto America/Tortola America/Vancouver America/Virgin America/Whitehorse America/Winnipeg America/Yakutat America/Yellowknife

SheetCount

Returns the number of sheets in the active workbook.

@SheetCount([<IncludeHiddenSheets>])
Argument Name Description

IncludeHiddenSheets

Optional (default value: true); Controls whether the returned count includes both visible and hidden sheets OR only visible sheets.

SheetExists

Returns TRUE if the specified Worksheet exists.

Since version 7.7

@SheetExists(<SheetName>)
Argument Name Description

SheetName

The name of the worksheet.

SheetName

Returns the name of sheet specified by SheetIndex.

Since version 7.4

@SheetName([<SheetIndex>])
Argument Name Description

SheetIndex

Optional (default value: current sheet); Specifies the sheet number to get the name of.

SheetProperty

Returns the value of the specified sheet property.

Since version 7.6

@SheetProp(<PropertyName>, [<SheetNameOrIndex>])
Argument Name Description

PropertyName

The name of the property. Not case sensitive. Only enough characters to uniquely identify the propery need be specified. Valid property names: - AutoFilterMode: true, false - DefaultColumnWidth: - Index: the sheet number - Name: the sheet name - Protected: true, false - Visible: true, false - Type: worksheet, chart, other

SheetNameOrIndex

The name or sheet number. Sheet number is zero-based. If a sheet is not specified, the active sheet is checked.

SourceViewID

Returns the value of the SourceViewID property.

@SourceViewID()

SpecialFolder

Returns the directory path to a system special folder on the client.

@SpecialFolder(<FolderID>)
Argument Name Description

FolderID

The string identifier for the special folder, such as ApplicationData, Desktop, Favorites, Personal, and MyDocuments.

Substitute

Replaces existing text with new text in a text string. Unlike the Excel SUBSTITUTE function, this function does not limit the text argument values to 255 characters, and also allows for specifying whether a match is based on a case-sensitive or a case-insensitive comparison.

Hidden in 8.0.0 - Deprecated to eliminate ambiguity between the Excel Substitute function and the Dodeca Substitute function. Use the Dodeca Replace function is place of the Dodeca Substitute function.

@Substitute(<Text>, <OldText>, <NewText>, [<CaseSensitive>], [<InstanceNumber>])
Argument Name Description

CaseSensitive

Optional (default is true); Controls whether a case-sensitive comparison is used to detect a match.

InstanceNumber

Optional (default is 0, which indicates that all occurrences are replaced); The occurrence of OldText to replace with NewText, starting at 1 to indicate the first occurrence, 2 for the second, etc.

NewText

The text to replace the OldText with.

OldText

The text to replace.

Text

The text in which the occurrence(s) of OldText are replaced with NewText.

TempFolder

Returns the directory path to the client system's temporary folder.

@TempFolder()

Tenant

Returns the tenant key for the current application.

@Tenant()

TextBoxValue

Returns the text value of a textbox.

@TextBoxValue(<Name>)
Argument Name Description

Name

The textbox name, which is set by the SetTextBox.Name argument.

TimeZoneInfo

Returns the value of the specified property of the local timezone.

Since version 8.0

@TimeZoneInfo(<PropertyName>, [<TimeFormat>])
Argument Name Description

PropertyName

The name of the time-zone property. S[tandardName] The standard name of the local time-zone. UtcOffsetH[ours] The UTC offset in hours for the local time-zone. UtcOffsetM[inutes] The UTC offset in minutes for the local time-zone. T[oUniversalTime] The local time converted to UTC. I[sDaylightSavingTime] Whether DaylightSavingTime is in effect at the current time. DaylightN[ame] The standard name for DaylightSavingTime in the local time-zone. DaylightS[tart] The start date/time of DaylightSavingTime in the local time-zone. DaylightE[nd] The end date/time of DaylightSavingTime in the local time-zone. DaylightD[elta] The adjustment in hours for DaylightSavingTime in the local time-zone.

TimeFormat

A custom format string or a standard format code. (default is G) Examples of custom format strings: (https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings) h:mm:ss.ff t 2019-06-30T15:29:58.26 -> 3:29:58.26 P d MMM yyyy 2019-06-30T15:29:58.26 -> 30 May 2019 HH:mm:ss.f 2019-06-30T15:29:58.26 -> 15:29:58.2 dd MMM HH:mm:ss 2019-06-30T15:29:58.26 -> 30 May 15:29:58 HH:mm:ss.ffff 2019-06-30T15:29:58.26 -> 15:29:58.2650 Standard format codes (examples are for en-US): (https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings) d Short date pattern. 2019-06-15T13:45:30 -> 6/15/2019 D Long date pattern. 2019-06-15T13:45:30 -> Monday, June 15, 2019 f Full date/time pattern (short time). 2019-06-15T13:45:30 -> Monday, June 15, 2019 1:45 PM F Full date/time pattern (long time). 2019-06-15T13:45:30 -> Monday, June 15, 2019 1:45:30 PM g General date/time pattern (short time). 2019-06-15T13:45:30 -> 6/15/2019 1:45 PM G General date/time pattern (long time). 2019-06-15T13:45:30 -> 6/15/2019 1:45:30 PM M, m Month/day pattern. 2019-06-15T13:45:30 -> June 15 O, o Round-trip date/time pattern. 2019-06-15T13:45:30 -> 2019-06-15T13:45:30.0000000-07:00 (Local) 2019-06-15T13:45:30 -> 2019-06-15T13:45:30.0000000Z (Utc) R, r RFC1123 pattern. 2019-06-15T13:45:30 -> Mon, 15 Jun 2019 20:45:30 GMT s Sortable date/time pattern. 2019-06-15T13:45:30 -> 2019-06-15T13:45:30 (Local) 2019-06-15T13:45:30 -> 2019-06-15T13:45:30 (Utc) t Short time pattern. 2019-06-15T13:45:30 -> 1:45 PM T Long time pattern. 2019-06-15T13:45:30 -> 1:45:30 PM u Universal sortable date/time pattern. 2019-06-15T13:45:30 -> 2019-06-15 13:45:30Z U Universal full date/time pattern. 2019-06-15T13:45:30 -> Monday, June 15, 2019 8:45:30 PM Y, y Year month pattern. 2019-06-15T13:45:30 -> June, 2019

TokenExists

Returns True/False indicating whether a Token with the specified name exists.

@TokenExists(<TokenName>, [<UseTargetView>])
Argument Name Description

TokenName

The token name.

UseTargetView

Optional (default is false); Use true for this argument to determine whether the token exists in the target view.

TokenIsNullOrEmpty

Returns True/False indicating whether a Token has a null value or the value is an empty string. If the Token does not exist, returns True.

@TokenIsNullOrEmpty(<TokenName>, [<UseTargetView>])
Argument Name Description

TokenName

The token name.

UseTargetView

Optional (default is false); Use true for this argument to get the token value from the target view.

TokenValue

Returns the value of the specified Token.

@TVal(<TokenName>, [<UseTargetView>], [<DefaultValue>])
Argument Name Description

DefaultValue

Optional; Specifies a value to return if the specified token does not exist. If DefaultValue is not specified and the specified token does not exist an exception will occur.

TokenName

The token name.

UseTargetView

Optional (default is false); Use true for this argument to get the token value from the target view.

ToolValue

Returns the value of a toolbar tool.

Since version 7.7

@ToolValue(<ToolKey>, [<DefaultValue>])
Argument Name Description

DefaultValue

The default value returned if the tool has no value.

ToolKey

The key of the tool.

UniqueValues

Returns delimited list of the unique values found in the List.

Since version 7.7

@UniqueValues(<List>, [<ListDelimiter>], [<ResultDelimiter>])
Argument Name Description

List

A delimited list of values.

ListDelimiter

The delimiter of the list. If omitted "," is used.

ResultDelimiter

The delimiter to use to build the result. If omitted then ListDelimiter is used.

UrlDecode

Returns a decoded representation of a given URL-encoded string.

Since version 7.7

@UrlDecode(<EncodedString>)
Argument Name Description

EncodedString

The URL-encoded string to decode.

UrlEncode

Returns a URL-encoded representation of a given string.

Since version 7.7

@UrlEncode(<String>)
Argument Name Description

String

The string to URL-encode.

UsedRange

Returns the address of the used range.

@UsedRange()

UserDomainName

Returns the user domain name.

@UserDomainName()

ValueError

Returns the error-value of a cell. If a range is not specified the current cell is used.

@ValueError([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the range to test.

ValueFormat

Returns the number format of a cell. If a range is not specified the current cell is used.

Since version 7.6

@ValueFormat([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the range to test.

ValueFormula

Returns the formula of a cell. If a range is not specified the current cell is used.

@ValueFormula([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the range to test.

ValueLogical

Returns the logical-value of a cell. If a range is not specified the current cell is used.

@ValueLogical([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the range to test.

ValueNumber

Returns the number-value of a cell. If a range is not specified the current cell is used.

@ValueNumber([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the range to test.

ValueText

Returns the text-value of a cell. If a range is not specified the current cell is used.

@ValueText([<Address>])
Argument Name Description

Address

Optional (defaults to the selected cell); The address of the range to test.

ViewCultureCurrencyDecimal

Returns the decimal separator used in currency values as defined by the view's culture.

@CDec()

ViewCultureCurrencyGroupSeparator

Returns the string that separates groups of digits to the left of the decimal in currency values as defined by the view's culture.

@CSep()

ViewCultureCurrencySymbol

Returns the currency symbol defined by the view's culture.

@CSym()

ViewCultureDateSeparator

Returns the string that separates the components of a date (year, month, and day) as defined by the view's culture.

@DSep()

ViewCultureListSeparator

Returns the list separator defined by the view's culture.

@Sep()

ViewCultureNegativeSign

Returns the string that denotes that a number is negative as defined by the view's culture.

@Neg()

ViewCultureNumberDecimal

Returns the decimal separator used in numeric values as defined by the view's culture.

@NDec()

ViewCultureNumberGroupSeparator

Returns the string that separates groups of digits to the left of the decimal in numeric values as defined by the view's culture.

@NSep()

ViewCulturePercentDecimal

Returns the decimal separator used in percent values as defined by the view's culture.

@PDec()

ViewCultureTimeSeparator

Returns the string that separates the components of time (hours, minutes, and seconds) as defined by the view's culture.

@TSep()

ViewPropertyValue

Returns the value of the specified view property.

@ViewPVal(<PropertyName>, [<UseTargetView>])
Argument Name Description

PropertyName

The script property name.

UseTargetView

Optional (default is false); Use true for this argument to get the property value from the target-view.

WindowsCultureName

Returns the abbreviated name of the Regional Options setting, such as en-US.

@WindowsCultureName()

WindowsUserName

Returns the Windows user ID.

@WindowsUserName()

WorkbookName

Returns the name of the workbook.

@WorkbookName([<Index>])
Argument Name Description

Index

Optional (default is the index of the active workbook); Specify the index to return the name of the workbook at that index.

WorksheetEvaluate

Evaluates the specified formula via the worksheet and returns the result.

@WSEval(<Formula>)
Argument Name Description

Formula

The formula to evaluate.