FRange

GitHubEdit on GitHub
packages@univerjs/sheets

Represents a range of cells in a sheet. You can call methods on this Facade API object to read contents or manipulate the range.

APIs

activate

Sets the specified range as the active range, with the top left cell in the range as the current cell.

Signature

activate(): FRange

Returns

  • (FRange) — This range, for chaining.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.activate() // the active cell will be A1

activateAsCurrentCell

Sets the specified cell as the current cell. If the specified cell is present in an existing range, then that range becomes the active range with the cell as the current cell. If the specified cell is not part of an existing range, then a new range is created with the cell as the active range and the current cell.

Signature

activateAsCurrentCell(): FRange

Returns

  • (FRange) — This range, for chaining.

Tags

  • @description — If the range is not a single cell, an error will be thrown.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()

// Set the range A1:B2 as the active range, default active cell is A1
const fRange = fWorksheet.getRange('A1:B2')
fRange.activate()
console.log(fWorksheet.getActiveRange().getA1Notation()) // A1:B2
console.log(fWorksheet.getActiveCell().getA1Notation()) // A1

// Set the cell B2 as the active cell
// Because B2 is in the active range A1:B2, the active range will not change, and the active cell will be changed to B2
const cell = fWorksheet.getRange('B2')
cell.activateAsCurrentCell()
console.log(fWorksheet.getActiveRange().getA1Notation()) // A1:B2
console.log(fWorksheet.getActiveCell().getA1Notation()) // B2

// Set the cell C3 as the active cell
// Because C3 is not in the active range A1:B2, a new active range C3:C3 will be created, and the active cell will be changed to C3
const cell2 = fWorksheet.getRange('C3')
cell2.activateAsCurrentCell()
console.log(fWorksheet.getActiveRange().getA1Notation()) // C3:C3
console.log(fWorksheet.getActiveCell().getA1Notation()) // C3

breakApart

Break all horizontally- or vertically-merged cells contained within the range list into individual cells again.

Signature

breakApart(): FRange

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.merge()
const anchor = fWorksheet.getRange('A1')
console.log(anchor.isPartOfMerge()) // true
fRange.breakApart()
console.log(anchor.isPartOfMerge()) // false

clear

Clears content and formatting information of the range. Or Optionally clears only the contents or only the formatting.

Signature

clear(options?: IFacadeClearOptions): FRange

Parameters

  • options (IFacadeClearOptions) — - Options for clearing the range. If not provided, the contents and formatting are cleared both.
  • options.contentsOnly — - If true, the contents of the range are cleared. If false, the contents and formatting are cleared. Default is false.
  • options.formatOnly — - If true, the formatting of the range is cleared. If false, the contents and formatting are cleared. Default is false.

Returns

  • (FRange) — Returns the current worksheet instance for method chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorkSheet = fWorkbook.getActiveSheet()
const fRange = fWorkSheet.getRange('A1:D10')

// clear the content and format of the range A1:D10
fRange.clear()

// clear the content only of the range A1:D10
fRange.clear({ contentsOnly: true })

clearContent

Clears content of the range, while preserving formatting information.

Signature

clearContent(): FRange

Returns

  • (FRange) — Returns the current worksheet instance for method chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorkSheet = fWorkbook.getActiveSheet()
const fRange = fWorkSheet.getRange('A1:D10')

// clear the content only of the range A1:D10
fRange.clearContent()

clearFormat

Clears formatting information of the range, while preserving contents.

Signature

clearFormat(): FRange

Returns

  • (FRange) — Returns the current worksheet instance for method chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorkSheet = fWorkbook.getActiveSheet()
const fRange = fWorkSheet.getRange('A1:D10')
// clear the format only of the range A1:D10
fRange.clearFormat()

deleteCells

Deletes this range of cells. Existing data in the sheet along the provided dimension is shifted towards the deleted range.

Signature

deleteCells(shiftDimension: Dimension): void

Parameters

  • shiftDimension (Dimension) — - The dimension along which to shift existing data.

Examples

// Assume the active sheet empty sheet.
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const values = [
  [1, 2, 3, 4],
  [2, 3, 4, 5],
  [3, 4, 5, 6],
  [4, 5, 6, 7],
  [5, 6, 7, 8],
]

// Set the range A1:D5 with some values, the range A1:D5 will be:
// 1 | 2 | 3 | 4
// 2 | 3 | 4 | 5
// 3 | 4 | 5 | 6
// 4 | 5 | 6 | 7
// 5 | 6 | 7 | 8
const fRange = fWorksheet.getRange('A1:D5')
fRange.setValues(values)
console.log(fWorksheet.getRange('A1:D5').getValues()) // [[1, 2, 3, 4], [2, 3, 4, 5], [3, 4, 5, 6], [4, 5, 6, 7], [5, 6, 7, 8]]

// Delete the range A1:B2 along the columns dimension, the range A1:D5 will be:
// 3 | 4 |   |
// 4 | 5 |   |
// 3 | 4 | 5 | 6
// 4 | 5 | 6 | 7
// 5 | 6 | 7 | 8
const fRange2 = fWorksheet.getRange('A1:B2')
fRange2.deleteCells(univerAPI.Enum.Dimension.COLUMNS)
console.log(fWorksheet.getRange('A1:D5').getValues()) // [[3, 4, null, null], [4, 5, null, null], [3, 4, 5, 6], [4, 5, 6, 7], [5, 6, 7, 8]]

// Set the range A1:D5 values again, the range A1:D5 will be:
// 1 | 2 | 3 | 4
// 2 | 3 | 4 | 5
// 3 | 4 | 5 | 6
// 4 | 5 | 6 | 7
// 5 | 6 | 7 | 8
fRange.setValues(values)

// Delete the range A1:B2 along the rows dimension, the range A1:D5 will be:
// 3 | 4 | 3 | 4
// 4 | 5 | 4 | 5
// 5 | 6 | 5 | 6
//   |   | 6 | 7
//   |   | 7 | 8
const fRange3 = fWorksheet.getRange('A1:B2')
fRange3.deleteCells(univerAPI.Enum.Dimension.ROWS)
console.log(fWorksheet.getRange('A1:D5').getValues()) // [[3, 4, 3, 4], [4, 5, 4, 5], [5, 6, 5, 6], [null, null, 6, 7], [null, null, 7, 8]]

forEach

Iterate cells in this range. Merged cells will be respected.

Signature

forEach(callback: (row: number, col: number, cell: ICellData) => void): void

Parameters

  • callback ((row: number, col: number, cell: ICellData) => void) — the callback function to be called for each cell in the range
  • callback.row — the row number of the cell
  • callback.col — the column number of the cell
  • callback.cell — the cell data

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.forEach((row, col, cell) => {
  console.log(row, col, cell)
})

getA1Notation

Returns a string description of the range, in A1 notation.

Signature

getA1Notation(withSheet?: boolean, startAbsoluteRefType?: AbsoluteRefType, endAbsoluteRefType?: AbsoluteRefType): string

Parameters

  • withSheet (boolean) — - If true, the sheet name is included in the A1 notation.
  • startAbsoluteRefType (AbsoluteRefType) — - The absolute reference type for the start cell.
  • endAbsoluteRefType (AbsoluteRefType) — - The absolute reference type for the end cell.

Returns

  • (string) — The A1 notation of the range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()

// By default, the A1 notation is returned without the sheet name and without absolute reference types.
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getA1Notation()) // A1:B2

// By setting withSheet to true, the sheet name is included in the A1 notation.
fWorksheet.setName('Sheet1')
console.log(fRange.getA1Notation(true)) // Sheet1!A1:B2

// By setting startAbsoluteRefType, the absolute reference type for the start cell is included in the A1 notation.
console.log(fRange.getA1Notation(false, univerAPI.Enum.AbsoluteRefType.ROW)) // A$1:B2
console.log(fRange.getA1Notation(false, univerAPI.Enum.AbsoluteRefType.COLUMN)) // $A1:B2
console.log(fRange.getA1Notation(false, univerAPI.Enum.AbsoluteRefType.ALL)) // $A$1:B2

// By setting endAbsoluteRefType, the absolute reference type for the end cell is included in the A1 notation.
console.log(fRange.getA1Notation(false, null, univerAPI.Enum.AbsoluteRefType.ROW)) // A1:B$2
console.log(fRange.getA1Notation(false, null, univerAPI.Enum.AbsoluteRefType.COLUMN)) // A1:$B2
console.log(fRange.getA1Notation(false, null, univerAPI.Enum.AbsoluteRefType.ALL)) // A1:$B$2

// By setting all parameters example
console.log(fRange.getA1Notation(true, univerAPI.Enum.AbsoluteRefType.ALL, univerAPI.Enum.AbsoluteRefType.ALL)) // Sheet1!$A$1:$B$2

getBackground

Returns the background color of the top-left cell in the range.

Signature

getBackground(): string

Returns

  • (string) — The color code of the background.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getBackground())

getBackgrounds

Returns the background colors of the cells in the range.

Signature

getBackgrounds(): string[][]

Returns

  • (string[][]) — A two-dimensional array of color codes of the backgrounds.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getBackgrounds())

getCellData

Return first cell model data in this range

Signature

getCellData(): ICellData | null

Returns

  • (ICellData | null) — The cell model data

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getCellData())

getCellDataGrid

Returns the cell data for the cells in the range.

Signature

getCellDataGrid(): Nullable<ICellData>[][]

Returns

  • (Nullable<ICellData>[][]) — A two-dimensional array of cell data.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getCellDataGrid())

getCellDatas

Alias for getCellDataGrid.

Signature

getCellDatas(): Nullable<ICellData>[][]

Returns

  • (Nullable<ICellData>[][]) — A two-dimensional array of cell data.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getCellDatas())

getCellStyle

Return first cell style in this range.

Signature

getCellStyle(type?: GetStyleType = 'row'): TextStyleValue | null

Parameters

  • type (GetStyleType) — - The type of the style to get. 'row' means get the composed style of row, col and default worksheet style. 'col' means get the composed style of col, row and default worksheet style. 'cell' means get the style of cell without merging row style, col style and default worksheet style. Default is 'row'.

Returns

  • (TextStyleValue | null) — The cell style

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getCellStyle())

getCellStyleData

Return first cell style data in this range. Please note that if there are row styles, col styles and (or) worksheet style, they will be merged into the cell style. You can use type to specify the type of the style to get.

Signature

getCellStyleData(type?: GetStyleType = 'row'): IStyleData | null

Parameters

  • type (GetStyleType) — - The type of the style to get. 'row' means get the composed style of row, col and default worksheet style. 'col' means get the composed style of col, row and default worksheet style. 'cell' means get the style of cell without merging row style, col style and default worksheet style. Default is 'row'.

Returns

  • (IStyleData | null) — The cell style data

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getCellStyleData())

getCellStyles

Returns the cell styles for the cells in the range.

Signature

getCellStyles(type?: GetStyleType = 'row'): Array<Array<TextStyleValue | null>>

Parameters

  • type (GetStyleType) — - The type of the style to get. 'row' means get the composed style of row, col and default worksheet style. 'col' means get the composed style of col, row and default worksheet style. 'cell' means get the style of cell without merging row style, col style and default worksheet style. Default is 'row'.

Returns

  • (Array<Array<TextStyleValue | null>>) — A two-dimensional array of cell styles.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getCellStyles())

getColumn

Gets the starting column index of the range. index starts at 0.

Signature

getColumn(): number

Returns

  • (number) — The starting column index of the range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getColumn()) // 0

getCustomMetaData

Returns the custom meta data for the cell at the start of this range.

Signature

getCustomMetaData(): CustomData | null

Returns

  • (CustomData | null) — The custom meta data

Examples

const fWorkbook = univerAPI.getActiveWorkbook();
const fWorksheet = fWorkbook.getActiveSheet();
const fRange = fWorksheet.getRange('A1:B2');
console.log(fRange.getCustomMetaData());

getCustomMetaDatas

Returns the custom meta data for the cells in the range.

Signature

getCustomMetaDatas(): Nullable<CustomData>[][]

Returns

  • (Nullable<CustomData>[][]) — A two-dimensional array of custom meta data

Examples

const fWorkbook = univerAPI.getActiveWorkbook();
const fWorksheet = fWorkbook.getActiveSheet();
const fRange = fWorksheet.getRange('A1:B2');
console.log(fRange.getCustomMetaDatas());

getDataRegion

Returns a copy of the range expanded Direction.UP and Direction.DOWN if the specified dimension is Dimension.ROWS, or Direction.NEXT and Direction.PREVIOUS if the dimension is Dimension.COLUMNS. The expansion of the range is based on detecting data next to the range that is organized like a table. The expanded range covers all adjacent cells with data in them along the specified dimension including the table boundaries. If the original range is surrounded by empty cells along the specified dimension, the range itself is returned.

Signature

getDataRegion(dimension?: Dimension): FRange

Parameters

  • dimension (Dimension) — - The dimension along which to expand the range. If not provided, the range will be expanded in both dimensions.

Returns

  • (FRange) — The range's data region or a range covering each column or each row spanned by the original range.

Examples

// Assume the active sheet is a new sheet with no data.
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()

// Set the range A1:D4 with some values, the range A1:D4 will be:
//  |     |     |
//  |     | 100 |
//  | 100 |     | 100
//  |     | 100 |
fWorksheet.getRange('C2').setValue(100)
fWorksheet.getRange('B3').setValue(100)
fWorksheet.getRange('D3').setValue(100)
fWorksheet.getRange('C4').setValue(100)

// Get C3 data region along the rows dimension, the range will be C2:D4
const range = fWorksheet.getRange('C3').getDataRegion(univerAPI.Enum.Dimension.ROWS)
console.log(range.getA1Notation()) // C2:C4

// Get C3 data region along the columns dimension, the range will be B3:D3
const range2 = fWorksheet.getRange('C3').getDataRegion(univerAPI.Enum.Dimension.COLUMNS)
console.log(range2.getA1Notation()) // B3:D3

// Get C3 data region along the both dimension, the range will be B2:D4
const range3 = fWorksheet.getRange('C3').getDataRegion()
console.log(range3.getA1Notation()) // B2:D4

getDisplayValue

Returns the displayed value of the top-left cell in the range. The value is a String. Empty cells return an empty string.

Signature

getDisplayValue(): string

Returns

  • (string) — The displayed value of the cell. Returns an empty string if the cell is empty.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setValueForCell({
  v: 0.2,
  s: {
    n: {
      pattern: '0%',
    },
  },
})
console.log(fRange.getDisplayValue()) // 20%

getDisplayValues

Returns a two-dimensional array of the range displayed values. Empty cells return an empty string.

Signature

getDisplayValues(): string[][]

Returns

  • (string[][]) — A two-dimensional array of values.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setValues([
  [
    {
      v: 0.2,
      s: {
        n: {
          pattern: '0%',
        },
      },
    },
    {
      v: 45658,
      s: {
        n: {
          pattern: 'yyyy-mm-dd',
        },
      },
    },
  ],
  [
    {
      v: 1234.567,
      s: {
        n: {
          pattern: '#,##0.00',
        },
      },
    },
    null,
  ],
])
console.log(fRange.getDisplayValues()) // [['20%', '2025-01-01'], ['1,234.57', '']]

getFontFamily

Get the font family of the cell.

Signature

getFontFamily(type?: GetStyleType = 'row'): string | null

Parameters

  • type (GetStyleType) — - The type of the style to get. 'row' means get the composed style of row, col and default worksheet style. 'col' means get the composed style of col, row and default worksheet style. 'cell' means get the style of cell without merging row style, col style and default worksheet style. Default is 'row'.

Returns

  • (string | null) — The font family of the cell

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getFontFamily())

getFontSize

Get the font size of the cell.

Signature

getFontSize(type?: GetStyleType = 'row'): number | null

Parameters

  • type (GetStyleType) — - The type of the style to get. 'row' means get the composed style of row, col and default worksheet style. 'col' means get the composed style of col, row and default worksheet style. 'cell' means get the style of cell without merging row style, col style and default worksheet style. Default is 'row'.

Returns

  • (number | null) — The font size of the cell

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getFontSize())

getFormula

Returns the formula (A1 notation) of the top-left cell in the range, or an empty string if the cell is empty or doesn't contain a formula.

Signature

getFormula(): string

Returns

  • (string) — The formula for the cell.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getFormula())

getFormulas

Returns the formulas (A1 notation) for the cells in the range. Entries in the 2D array are empty strings for cells with no formula.

Signature

getFormulas(): string[][]

Returns

  • (string[][]) — A two-dimensional array of formulas in string format.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getFormulas())

getHeight

Gets the height of the applied area

Signature

getHeight(): number

Returns

  • (number) — The height of the area

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getHeight())

getHorizontalAlignment

Returns the horizontal alignment of the text (left/center/right) of the top-left cell in the range.

Signature

getHorizontalAlignment(): string

Returns

  • (string) — The horizontal alignment of the text in the cell.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getHorizontalAlignment())

getHorizontalAlignments

Returns the horizontal alignments of the cells in the range.

Signature

getHorizontalAlignments(): string[][]

Returns

  • (string[][]) — A two-dimensional array of horizontal alignments of text associated with cells in the range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getHorizontalAlignments())

getLastColumn

Gets the ending column index of the range. index starts at 0.

Signature

getLastColumn(): number

Returns

  • (number) — The ending column index of the range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getLastColumn()) // 1

getLastRow

Gets the ending row index of the range. index starts at 0.

Signature

getLastRow(): number

Returns

  • (number) — The ending row index of the range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getLastRow()) // 1

getRange

Gets the area where the statement is applied

Signature

getRange(): IRange

Returns

  • (IRange) — The area where the statement is applied

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
const range = fRange.getRange()
const { startRow, startColumn, endRow, endColumn } = range
console.log(range)

getRangePermission

Get the RangePermission instance for managing range-level permissions. This is the new permission API that provides range-specific permission control.

Signature

getRangePermission(): FRangePermission

Returns

  • (FRangePermission) — - The RangePermission instance.

Examples

const fWorksheet = univerAPI.getActiveWorkbook().getActiveSheet()
const fRange = fWorksheet.getRange('A1:B10')
const permission = fRange.getRangePermission()

// Protect the range
await permission.protect({ name: 'Protected Area', allowEdit: false })

// Check if range is protected
const isProtected = permission.isProtected()

// Check if current user can edit
const canEdit = permission.canEdit()

// Unprotect the range
await permission.unprotect()

// Subscribe to protection changes
permission.protectionChange$.subscribe((change) => {
  console.log('Protection changed:', change)
})

getRawValue

Returns the raw value of the top-left cell in the range. Empty cells return null.

Signature

getRawValue(): Nullable<CellValue>

Returns

  • (Nullable<CellValue>) — The raw value of the cell. Returns null if the cell is empty.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setValueForCell({
  v: 0.2,
  s: {
    n: {
      pattern: '0%',
    },
  },
})
console.log(fRange.getRawValue()) // 0.2

getRawValues

Returns a two-dimensional array of the range raw values. Empty cells return null.

Signature

getRawValues(): Array<Array<Nullable<CellValue>>>

Returns

  • (Array<Array<Nullable<CellValue>>>) — The raw value of the cell. Returns null if the cell is empty.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setValues([
  [
    {
      v: 0.2,
      s: {
        n: {
          pattern: '0%',
        },
      },
    },
    {
      v: 45658,
      s: {
        n: {
          pattern: 'yyyy-mm-dd',
        },
      },
    },
  ],
  [
    {
      v: 1234.567,
      s: {
        n: {
          pattern: '#,##0.00',
        },
      },
    },
    null,
  ],
])
console.log(fRange.getRawValues()) // [[0.2, 45658], [1234.567, null]]

getRow

Gets the starting row index of the range. index starts at 0.

Signature

getRow(): number

Returns

  • (number) — The starting row index of the range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getRow()) // 0

getSheetId

Gets the ID of the worksheet

Signature

getSheetId(): string

Returns

  • (string) — The ID of the worksheet

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getSheetId())

getSheetName

Gets the name of the worksheet

Signature

getSheetName(): string

Returns

  • (string) — The name of the worksheet

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getSheetName())

getUnitId

Get the unit ID of the current workbook

Signature

getUnitId(): string

Returns

  • (string) — The unit ID of the workbook

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getUnitId())

getUsedThemeStyle

Gets the theme style applied to the range.

Signature

getUsedThemeStyle(): string | undefined

Returns

  • (string | undefined) — The name of the theme style applied to the range or not exist.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:E20')
console.log(fRange.getUsedThemeStyle()) // undefined
fRange.useThemeStyle('default')
console.log(fRange.getUsedThemeStyle()) // 'default'

getValue

Signature

getValue(includeRichText?: boolean): Nullable<CellValue | RichTextValue>

getValueAndRichTextValues

Returns the value and rich text value for the cells in the range.

Signature

getValueAndRichTextValues(): Nullable<CellValue | RichTextValue>[][]

Returns

  • (Nullable<CellValue | RichTextValue>[][]) — A two-dimensional array of value and rich text value

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getValueAndRichTextValues())

getValues

Signature

getValues(includeRichText?: true): (Nullable<RichTextValue | CellValue>)[][]

getVerticalAlignment

Returns the vertical alignment (top/middle/bottom) of the top-left cell in the range.

Signature

getVerticalAlignment(): string

Returns

  • (string) — The vertical alignment of the text in the cell.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getVerticalAlignment())

getVerticalAlignments

Returns the vertical alignments of the cells in the range.

Signature

getVerticalAlignments(): string[][]

Returns

  • (string[][]) — A two-dimensional array of vertical alignments of text associated with cells in the range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getVerticalAlignments())

getWidth

Gets the width of the applied area

Signature

getWidth(): number

Returns

  • (number) — The width of the area

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getWidth())

getWrap

Gets whether text wrapping is enabled for top-left cell in the range.

Signature

getWrap(): boolean

Returns

  • (boolean) — whether text wrapping is enabled for the cell.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getWrap())

getWraps

Gets whether text wrapping is enabled for cells in the range.

Signature

getWraps(): boolean[][]

Returns

  • (boolean[][]) — A two-dimensional array of whether text wrapping is enabled for each cell in the range.

Examples

ts
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getWraps())

getWrapStrategy

Returns the text wrapping strategy for the top left cell of the range.

Signature

getWrapStrategy(): WrapStrategy

Returns

  • (WrapStrategy) — The text wrapping strategy

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getWrapStrategy())

insertCells

Inserts empty cells into this range. Existing data in the sheet along the provided dimension is shifted away from the inserted range.

Signature

insertCells(shiftDimension: Dimension): void

Parameters

  • shiftDimension (Dimension) — - The dimension along which to shift existing data.

Examples

// Assume the active sheet empty sheet.
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const values = [
  [1, 2, 3, 4],
  [2, 3, 4, 5],
  [3, 4, 5, 6],
  [4, 5, 6, 7],
  [5, 6, 7, 8],
]

// Set the range A1:D5 with some values, the range A1:D5 will be:
// 1 | 2 | 3 | 4
// 2 | 3 | 4 | 5
// 3 | 4 | 5 | 6
// 4 | 5 | 6 | 7
// 5 | 6 | 7 | 8
const fRange = fWorksheet.getRange('A1:D5')
fRange.setValues(values)
console.log(fWorksheet.getRange('A1:D5').getValues()) // [[1, 2, 3, 4], [2, 3, 4, 5], [3, 4, 5, 6], [4, 5, 6, 7], [5, 6, 7, 8]]

// Insert the empty cells into the range A1:B2 along the columns dimension, the range A1:D5 will be:
//   |   | 1 | 2
//   |   | 2 | 3
// 3 | 4 | 5 | 6
// 4 | 5 | 6 | 7
// 5 | 6 | 7 | 8
const fRange2 = fWorksheet.getRange('A1:B2')
fRange2.insertCells(univerAPI.Enum.Dimension.COLUMNS)
console.log(fWorksheet.getRange('A1:D5').getValues()) // [[null, null, 1, 2], [null, null, 2, 3], [3, 4, 5, 6], [4, 5, 6, 7], [5, 6, 7, 8]]

// Set the range A1:D5 values again, the range A1:D5 will be:
// 1 | 2 | 3 | 4
// 2 | 3 | 4 | 5
// 3 | 4 | 5 | 6
// 4 | 5 | 6 | 7
// 5 | 6 | 7 | 8
fRange.setValues(values)

// Insert the empty cells into the range A1:B2 along the rows dimension, the range A1:D5 will be:
//   |   | 3 | 4
//   |   | 4 | 5
// 1 | 2 | 5 | 6
// 2 | 3 | 6 | 7
// 3 | 4 | 7 | 8
const fRange3 = fWorksheet.getRange('A1:B2')
fRange3.insertCells(univerAPI.Enum.Dimension.ROWS)
console.log(fWorksheet.getRange('A1:D5').getValues()) // [[null, null, 3, 4], [null, null, 4, 5], [1, 2, 5, 6], [2, 3, 6, 7], [3, 4, 7, 8]]

isBlank

Returns true if the range is totally blank.

Signature

isBlank(): boolean

Returns

  • (boolean) — true if the range is blank; false otherwise.

Examples

// Assume the active sheet is a new sheet with no data.
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.isBlank()) // true

// Set the range A1:B2 with some values
fRange.setValueForCell(123)
console.log(fRange.isBlank()) // false

isMerged

Return range whether this range is merged

Signature

isMerged(): boolean

Returns

  • (boolean) — if true is merged

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.isMerged())
// merge cells A1:B2
fRange.merge()
console.log(fRange.isMerged())

isPartOfMerge

Returns true if cells in the current range overlap a merged cell.

Signature

isPartOfMerge(): boolean

Returns

  • (boolean) — is overlap with a merged cell

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.merge()
const anchor = fWorksheet.getRange('A1')
console.log(anchor.isPartOfMerge()) // true

merge

Merge cells in a range into one merged cell

Signature

merge(options?: IMergeCellsUtilOptions): FRange

Parameters

  • options (IMergeCellsUtilOptions) — - The options for merging cells.
  • options.defaultMerge — - If true, only the value in the upper left cell is retained. If false, a confirm dialog will be shown to the user. Default is true.
  • options.isForceMerge — - If true, the overlapping merged cells will be removed before performing the new merge. Default is false.

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.merge()
console.log(fRange.isMerged())
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('B1:C2')
// Assume A1:B2 is already merged.
fRange.merge({ isForceMerge: true })

mergeAcross

Merges cells in a range horizontally.

Signature

mergeAcross(options?: IMergeCellsUtilOptions): FRange

Parameters

  • options (IMergeCellsUtilOptions) — - The options for merging cells.
  • options.defaultMerge — - If true, only the value in the upper left cell is retained. If false, a confirm dialog will be shown to the user. Default is true.
  • options.isForceMerge — - If true, the overlapping merged cells will be removed before performing the new merge. Default is false.

Returns

  • (FRange) — This range, for chaining

Examples

// Assume the active sheet is a new sheet with no merged cells.
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.mergeAcross()
// There will be two merged cells. A1:B1 and A2:B2.
const mergeData = fWorksheet.getMergeData()
mergeData.forEach((item) => {
  console.log(item.getA1Notation())
})
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('B1:C2')
// Assume A1:B2 is already merged.
fRange.mergeAcross({ isForceMerge: true })

mergeVertically

Merges cells in a range vertically.

Signature

mergeVertically(options?: IMergeCellsUtilOptions): FRange

Parameters

  • options (IMergeCellsUtilOptions) — - The options for merging cells.
  • options.defaultMerge — - If true, only the value in the upper left cell is retained. If false, a confirm dialog will be shown to the user. Default is true.
  • options.isForceMerge — - If true, the overlapping merged cells will be removed before performing the new merge. Default is false.

Returns

  • (FRange) — This range, for chaining

Examples

// Assume the active sheet is a new sheet with no merged cells.
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.mergeVertically()
// There will be two merged cells. A1:A2 and B1:B2.
const mergeData = fWorksheet.getMergeData()
mergeData.forEach((item) => {
  console.log(item.getA1Notation())
})
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('B1:C2')
// Assume A1:B2 is already merged.
fRange.mergeVertically({ isForceMerge: true })

offset

Returns a new range that is relative to the current range, whose upper left point is offset from the current range by the given rows and columns, and with the given height and width in cells.

Signature

offset(rowOffset: number, columnOffset: number, numRows?: number, numColumns?: number): FRange

Parameters

  • rowOffset (number) — - The number of rows down from the range's top-left cell; negative values represent rows up from the range's top-left cell.
  • columnOffset (number) — - The number of columns right from the range's top-left cell; negative values represent columns left from the range's top-left cell.
  • numRows (number) — - The height in rows of the new range.
  • numColumns (number) — - The width in columns of the new range.

Returns

  • (FRange) — The new range.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getA1Notation()) // A1:B2

// Offset the range by 1 row and 1 column, and set the height of the new range to 3 and the width to 3
const newRange = fRange.offset(1, 1, 3, 3)
console.log(newRange.getA1Notation()) // B2:D4

removeThemeStyle

Remove the theme style for the range.

Signature

removeThemeStyle(themeName: string): void

Parameters

  • themeName (string) — The name of the theme style to remove.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:E20')
fRange.removeThemeStyle('default')

setBackground

Set background color for current range.

Signature

setBackground(color: string): FRange

Parameters

  • color (string) — The background color

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setBackground('red')

setBackgroundColor

Set background color for current range.

Signature

setBackgroundColor(color: string): FRange

Parameters

  • color (string) — The background color

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setBackgroundColor('red')

setBorder

Sets basic border properties for the current range.

Signature

setBorder(type: BorderType, style: BorderStyleTypes, color?: string): FRange

Parameters

  • type (BorderType) — The type of border to apply
  • style (BorderStyleTypes) — The border style
  • color (string) — Optional border color in CSS notation

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setBorder(univerAPI.Enum.BorderType.ALL, univerAPI.Enum.BorderStyleTypes.THIN, '#ff0000')

setCustomMetaData

Set custom meta data for first cell in current range.

Signature

setCustomMetaData(data: CustomData): FRange

Parameters

  • data (CustomData) — The custom meta data

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setCustomMetaData({ key: 'value' })
console.log(fRange.getCustomMetaData())

setCustomMetaDatas

Set custom meta data for current range.

Signature

setCustomMetaDatas(datas: CustomData[][]): FRange

Parameters

  • datas (CustomData[][]) — The custom meta data

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setCustomMetaDatas([
  [{ key: 'value' }, { key: 'value2' }],
  [{ key: 'value3' }, { key: 'value4' }],
])
console.log(fRange.getCustomMetaDatas())

setFontColor

Sets the font color in CSS notation (such as '#ffffff' or 'white').

Signature

setFontColor(color: string | null): this

Parameters

  • color (string | null) — The font color in CSS notation (such as '#ffffff' or 'white'); a null value resets the color.

Returns

  • (this) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setFontColor('#ff0000')

setFontFamily

Sets the font family, such as "Arial" or "Helvetica".

Signature

setFontFamily(fontFamily: string | null): this

Parameters

  • fontFamily (string | null) — The font family to set; a null value resets the font family.

Returns

  • (this) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setFontFamily('Arial')

setFontLine

Sets the font line style of the given range ('underline', 'line-through', or 'none').

Signature

setFontLine(fontLine: FontLine | null): this

Parameters

  • fontLine (FontLine | null) — The font line style, either 'underline', 'line-through', or 'none'; a null value resets the font line style.

Returns

  • (this) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setFontLine('underline')

setFontSize

Sets the font size, with the size being the point size to use.

Signature

setFontSize(size: number | null): this

Parameters

  • size (number | null) — A font size in point size. A null value resets the font size.

Returns

  • (this) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setFontSize(24)

setFontStyle

Sets the font style for the given range ('italic' or 'normal').

Signature

setFontStyle(fontStyle: FontStyle | null): this

Parameters

  • fontStyle (FontStyle | null) — The font style, either 'italic' or 'normal'; a null value resets the font style.

Returns

  • (this) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setFontStyle('italic')

setFontWeight

Sets the font weight for the given range (normal/bold),

Signature

setFontWeight(fontWeight: FontWeight | null): this

Parameters

  • fontWeight (FontWeight | null) — The font weight, either 'normal' or 'bold'; a null value resets the font weight.

Returns

  • (this) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setFontWeight('bold')

setFormula

Updates the formula for this range. The given formula must be in A1 notation.

Signature

setFormula(formula: string): FRange

Parameters

  • formula (string) — - A string representing the formula to set for the cell.

Returns

  • (FRange) — This range instance for chaining.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1')
fRange.setFormula('=SUM(A2:A5)')
console.log(fRange.getFormula()) // '=SUM(A2:A5)'

setFormulas

Sets a rectangular grid of formulas (must match dimensions of this range). The given formulas must be in A1 notation.

Signature

setFormulas(formulas: string[][]): FRange

Parameters

  • formulas (string[][]) — - A two-dimensional string array of formulas.

Returns

  • (FRange) — This range instance for chaining.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setFormulas([
  ['=SUM(A2:A5)', '=SUM(B2:B5)'],
  ['=SUM(A6:A9)', '=SUM(B6:B9)'],
])
console.log(fRange.getFormulas()) // [['=SUM(A2:A5)', '=SUM(B2:B5)'], ['=SUM(A6:A9)', '=SUM(B6:B9)']]

setHorizontalAlignment

Set the horizontal (left to right) alignment for the given range (left/center/right).

Signature

setHorizontalAlignment(alignment: FHorizontalAlignment): FRange

Parameters

  • alignment (FHorizontalAlignment) — The horizontal alignment

Returns

  • (FRange) — this range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setHorizontalAlignment('left')

setRichTextValueForCell

Set the rich text value for the cell at the start of this range.

Signature

setRichTextValueForCell(value: RichTextValue | IDocumentData): FRange

Parameters

  • value (RichTextValue | IDocumentData) — The rich text value

Returns

  • (FRange) — The range

Examples

const fWorkbook = univerAPI.getActiveWorkbook();
const fWorksheet = fWorkbook.getActiveSheet();
const fRange = fWorksheet.getRange('A1:B2');
console.log(fRange.getValue(true));

// Set A1 cell value to rich text
const richText = univerAPI.newRichText()
  .insertText('Hello World')
  .setStyle(0, 1, { bl: 1, cl: { rgb: '#c81e1e' } })
  .setStyle(6, 7, { bl: 1, cl: { rgb: '#c81e1e' } });
fRange.setRichTextValueForCell(richText);
console.log(fRange.getValue(true).toPlainText()); // Hello World

setRichTextValues

Set the rich text value for the cells in the range.

Signature

setRichTextValues(values: (RichTextValue | IDocumentData)[][]): FRange

Parameters

  • values ((RichTextValue | IDocumentData)[][]) — The rich text value

Returns

  • (FRange) — The range

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
console.log(fRange.getValue(true))

// Set A1:B2 cell value to rich text
const richText = univerAPI.newRichText()
  .insertText('Hello World')
  .setStyle(0, 1, { bl: 1, cl: { rgb: '#c81e1e' } })
  .setStyle(6, 7, { bl: 1, cl: { rgb: '#c81e1e' } })
fRange.setRichTextValues([
  [richText, richText],
  [null, null],
])
console.log(fRange.getValue(true).toPlainText()) // Hello World

setTextRotation

Set rotation for text in current range.

Signature

setTextRotation(rotation: number): FRange

Parameters

  • rotation (number) — - The rotation angle in degrees

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setTextRotation(45)

setValue

Sets the value of the range.

Signature

setValue(value: CellValue | ICellData): FRange

Parameters

  • value (CellValue | ICellData) — The value can be a number, string, boolean, or standard cell format. If it begins with =, it is interpreted as a formula. The value is tiled to all cells in the range.

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('B2')
fRange.setValue(123)

// or
fRange.setValue({ v: 234, s: { bg: { rgb: '#ff0000' } } })

setValueForCell

Set new value for current cell, first cell in this range.

Signature

setValueForCell(value: CellValue | ICellData): FRange

Parameters

  • value (CellValue | ICellData) — The value can be a number, string, boolean, or standard cell format. If it begins with =, it is interpreted as a formula. The value is tiled to all cells in the range.

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setValueForCell(123)

// or
fRange.setValueForCell({ v: 234, s: { bg: { rgb: '#ff0000' } } })

setValues

Sets a different value for each cell in the range. The value can be a two-dimensional array or a standard range matrix (must match the dimensions of this range), consisting of numbers, strings, Boolean values or Composed of standard cell formats. If a value begins with =, it is interpreted as a formula.

Signature

setValues(value: | CellValue[][]
            | IObjectMatrixPrimitiveType<CellValue>
            | ICellData[][]
            | IObjectMatrixPrimitiveType<ICellData>): FRange

Parameters

  • value (| CellValue[][] | IObjectMatrixPrimitiveType<CellValue> | ICellData[][] | IObjectMatrixPrimitiveType<ICellData>) — The value can be a two-dimensional array or a standard range matrix (must match the dimensions of this range), consisting of numbers, strings, Boolean values or Composed of standard cell formats.

Returns

  • (FRange) — This range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setValues([
  [1, { v: 2, s: { bg: { rgb: '#ff0000' } } }],
  [3, 4],
])

setVerticalAlignment

Set the vertical (top to bottom) alignment for the given range (top/middle/bottom).

Signature

setVerticalAlignment(alignment: FVerticalAlignment): FRange

Parameters

  • alignment (FVerticalAlignment) — The vertical alignment

Returns

  • (FRange) — this range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setVerticalAlignment('top')

setWrap

Set the cell wrap of the given range. Cells with wrap enabled (the default) resize to display their full content. Cells with wrap disabled display as much as possible in the cell without resizing or running to multiple lines.

Signature

setWrap(isWrapEnabled: boolean): FRange

Parameters

  • isWrapEnabled (boolean) — Whether to enable wrap

Returns

  • (FRange) — this range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setWrap(true)
console.log(fRange.getWrap())

setWrapStrategy

Sets the text wrapping strategy for the cells in the range.

Signature

setWrapStrategy(strategy: WrapStrategy): FRange

Parameters

  • strategy (WrapStrategy) — The text wrapping strategy

Returns

  • (FRange) — this range, for chaining

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:B2')
fRange.setWrapStrategy(univerAPI.Enum.WrapStrategy.WRAP)
console.log(fRange.getWrapStrategy())

splitTextToColumns

Splits a column of text into multiple columns based on a custom specified delimiter.

Signature

splitTextToColumns(treatMultipleDelimitersAsOne?: boolean, delimiter?: SplitDelimiterEnum, customDelimiter?: string): void

Parameters

  • treatMultipleDelimitersAsOne (boolean) — Whether to treat multiple continuous delimiters as one. The default value is false.
  • delimiter (SplitDelimiterEnum) — The delimiter to use to split the text. The default delimiter is Tab(1)、Comma(2)、Semicolon(4)、Space(8)、Custom(16).A delimiter like 6 (SplitDelimiterEnum.Comma|SplitDelimiterEnum.Semicolon) means using Comma and Semicolon to split the text.
  • customDelimiter (string) — The custom delimiter to split the text. An error will be thrown if custom delimiter is set but the customDelimiter is not a character.

Examples Show how to split text to columns with custom delimiter

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()

// A1:A3 has following values:
//     A   |
//  1#2#3  |
//  4##5#6 |
const fRange = fWorksheet.getRange('A1:A3')
fRange.setValues([
  ['A'],
  ['1#2#3'],
  ['4##5#6'],
])

// After calling splitTextToColumns(false, univerAPI.Enum.SplitDelimiterType.Custom, '#'), the range will be:
//  A |   |   |
//  1 | 2 | 3 |
//  4 |   | 5 | 6
fRange.splitTextToColumns(false, univerAPI.Enum.SplitDelimiterType.Custom, '#')

// After calling splitTextToColumns(true, univerAPI.Enum.SplitDelimiterType.Custom, '#'), the range will be:
//  A |   |
//  1 | 2 | 3
//  4 | 5 | 6
fRange.splitTextToColumns(true, univerAPI.Enum.SplitDelimiterType.Custom, '#')

useThemeStyle

Set the theme style for the range.

Signature

useThemeStyle(themeName: string | undefined): void

Parameters

  • themeName (string | undefined) — The name of the theme style to apply.If a undefined value is passed, the theme style will be removed if it exist.

Examples

const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const fRange = fWorksheet.getRange('A1:E20')
fRange.useThemeStyle('default')