Skip to Content
ClassesFSelection

Class: FSelection

Represents the active selection in the sheet.

Example

const fWorkbook = univerAPI.getActiveWorkbook() const fWorksheet = fWorkbook.getActiveSheet() const fSelection = fWorksheet.getSelection(); const activeRange = fSelection.getActiveRange(); console.log(activeRange);

Methods

getActiveRange()

getActiveRange(): FRange

Represents the active selection in the sheet. Which means the selection contains the active cell.

Returns

FRange

The active selection.

Example

const fWorkbook = univerAPI.getActiveWorkbook(); const fWorksheet = fWorkbook.getActiveSheet(); const fRange = fWorksheet.getRange('A10:B11'); fRange.activate(); const fSelection = fWorksheet.getSelection(); console.log(fSelection.getActiveRange().getA1Notation()); // A10:B11

getActiveRangeList()

getActiveRangeList(): FRange[]

Represents the active selection list in the sheet.

Returns

FRange[]

The active selection list.

Example

const fWorkbook = univerAPI.getActiveWorkbook(); const fWorksheet = fWorkbook.getActiveSheet(); const fSelection = fWorksheet.getSelection(); const activeRangeList = fSelection.getActiveRangeList(); activeRangeList.forEach((range) => { console.log(range.getA1Notation()); });

getActiveSheet()

getActiveSheet(): FWorksheet

Returns the active sheet in the spreadsheet.

Returns

FWorksheet

The active sheet in the spreadsheet.

Example

const fWorkbook = univerAPI.getActiveWorkbook(); const fWorksheet = fWorkbook.getActiveSheet(); const fSelection = fWorksheet.getSelection(); const activeSheet = fSelection.getActiveSheet(); console.log(activeSheet.equalTo(fWorksheet)); // true

getCurrentCell()

getCurrentCell(): any

Represents the current select cell in the sheet.

Returns

any

The current select cell info.Pay attention to the type of the return value.

Example

const fWorkbook = univerAPI.getActiveWorkbook(); const fWorksheet = fWorkbook.getActiveSheet(); const fRange = fWorksheet.getRange('A10:B11'); fRange.activate(); const fSelection = fWorksheet.getSelection(); const currentCell = fSelection.getCurrentCell(); const { actualRow, actualColumn } = currentCell; console.log(currentCell); console.log(`actualRow: ${actualRow}, actualColumn: ${actualColumn}`); // actualRow: 9, actualColumn: 0

getNextDataRange()

getNextDataRange(direction): FRange

Get the next primary cell in the specified direction. If the primary cell not exists in selections, return null. The next primary cell in the specified direction is the next cell only within the current selection range. For example, if the current selection is A1:B2, and the primary cell is B1, the next cell in the right direction is A2 instead of C1.

Parameters

ParameterTypeDescription
directionDirectionThe direction to move the primary cell.The enum value is maybe one of the following: UP(0),RIGHT(1), DOWN(2), LEFT(3).

Returns

FRange

The next primary cell in the specified direction.

Example

const fWorkbook = univerAPI.getActiveWorkbook(); const fWorksheet = fWorkbook.getActiveSheet(); // make sure the active cell is A1 and selection is A1:B2 const fRange = fWorksheet.getRange('A1:B2'); fRange.activate(); // get the next cell in the right direction, and update the primary cell to the next cell, now the active cell is B1 let fSelection = fWorksheet.getSelection(); const nextCell = fSelection.getNextDataRange(univerAPI.Enum.Direction.RIGHT); console.log(nextCell?.getA1Notation()); // B1 fSelection = fSelection.updatePrimaryCell(nextCell); // get the next cell in the right direction, the next cell is A2 const nextCell2 = fSelection.getNextDataRange(univerAPI.Enum.Direction.RIGHT); console.log(nextCell2?.getA1Notation()); // A2

updatePrimaryCell()

updatePrimaryCell(cell): FSelection

Update the primary cell in the selection. if the primary cell not exists in selections, add it to the selections and clear the old selections.

Parameters

ParameterTypeDescription
cellFRangeThe new primary cell to update.

Returns

FSelection

The new selection after updating the primary cell.Because the selection is immutable, the return value is a new selection.

Example

const fWorkbook = univerAPI.getActiveWorkbook(); const fWorksheet = fWorkbook.getActiveSheet(); const fRange = fWorksheet.getRange('A10:B11'); fRange.activate(); const cell = fWorksheet.getRange('B11'); let fSelection = fWorksheet.getSelection(); fSelection.updatePrimaryCell(cell); fSelection = fWorksheet.getSelection(); const currentCell = fSelection.getCurrentCell(); const { actualRow, actualColumn } = currentCell; console.log(currentCell); console.log(`actualRow: ${actualRow}, actualColumn: ${actualColumn}`); // actualRow: 10, actualColumn: 1