Univer Sheets API
Univer Sheets provides professional-grade spreadsheet capabilities, with concepts designed to be as consistent as possible with Microsoft Excel.
Workbook
A workbook contains multiple worksheets and can be thought of as an Excel file.
The unitId
can be used as a unique identifier for the workbook.
Create a Workbook
The univerAPI.createWorkbook(data, options)
method creates and returns the FWorkbook
object.
The IWorkbookData
is an object that contains the configuration information of the workbook.
const fWorkbook = univerAPI.createWorkbook({ id: 'Sheet1', name: 'Sheet1' })
console.log(fWorkbook)
Add you can make the workbook not as the active workbook by setting options:
const fWorkbook = univerAPI.createWorkbook({ id: 'Sheet1', name: 'Sheet1' }, { makeCurrent: false })
console.log(fWorkbook)
// If you want to switch to this workbook after 3 seconds
setTimeout(() => {
univerAPI.setCurrent(fWorkbook.getId())
}, 3000)
Get Workbook Data
const fWorkbook = univerAPI.getActiveWorkbook()
const snapshot = fWorkbook.save()
console.log(snapshot)
Unload Workbook
When you no longer need a Workbook
, you can call the disposeUnit
method on the API instance to unload it.
const fWorkbook = univerAPI.getActiveWorkbook()
const unitId = fWorkbook?.getId()
if (unitId) {
univerAPI.disposeUnit(unitId)
}
When the entire page hosting the Univer instance is destroyed or the route is unloaded, make sure to call the univer.dispose()
method for cleanup, rather than using univerAPI.disposeUnit
.
Also, please note that univer
and univerAPI
are different instances. For instructions on how to obtain these instances, refer to the Installation & Basic Usage.
Get Workbook ID
const fWorkbook = univerAPI.getActiveWorkbook()
fWorkbook?.getId()
Worksheet
Worksheets store table data, worksheets belong to the workbook.
A workbook can contain multiple worksheets, and the names of worksheets in the same workbook cannot be duplicated.
The subUnitId
can be used to uniquely identify a sheet in a workbook.
Get Worksheets
Get all sheets in a sheet
const fWorkbook = univerAPI.getActiveWorkbook()
const sheets = fWorkbook.getSheets()
Get Active Worksheet
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
Get Worksheet Data
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
const sheetSnapshot = fWorksheet.getSheet().getSnapshot()
Create a Worksheet
The following example shows how to create a worksheet using the FWorkbook.create
method.
const fWorkbook = univerAPI.getActiveWorkbook()
// Create a worksheet named 'Sheet2' with 10 rows and 10 columns
const newSheet = fWorkbook.create('Sheet2', 10, 10)
Remove Worksheet
Remove Worksheet by passing the worksheet instance or the worksheet Id
// Delete the second worksheet
const fWorkbook = univerAPI.getActiveWorkbook()
const sheet = fWorkbook.getSheets()[1]
fWorkbook.deleteSheet(sheet)
// The code below deletes the specified worksheet by id
// fWorkbook.deleteSheet(sheet.getSheetId());
Activate Worksheet
Activate the worksheet by passing the worksheet instance or the worksheet Id, or use FWorksheet.activate()
method.
// Activate the second worksheet
const fWorkbook = univerAPI.getActiveWorkbook()
const sheet = fWorkbook.getSheets()[1]
fWorkbook.setActiveSheet(sheet)
// Activates the specified worksheet by id
// fWorkbook.setActiveSheet(sheet.getSheetId());
// Activate the worksheet using the FWorksheet.activate() method
// sheet.activate();
Get Worksheet ID
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
fWorksheet?.getSheetId()
Refresh Worksheet
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
fWorksheet.refreshCanvas()
Worksheet Zoom
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
// Set zoom ratio to 200%
fWorksheet.zoom(2)
const zoomRatio = fWorksheet.getZoom()
Scroll to Cell
const fWorkbook = univerAPI.getActiveWorkbook()
const fWorksheet = fWorkbook.getActiveSheet()
// Scroll to cell D10
const fRange = fWorksheet.getRange('D10')
const row = fRange.getRow()
const column = fRange.getColumn()
fWorksheet.scrollToCell(row, column)
// Get scroll state
const scrollState = fWorksheet.getScrollState()
const { offsetX, offsetY, sheetViewStartColumn, sheetViewStartRow } = scrollState
console.log(scrollState) // sheetViewStartRow: 9, sheetViewStartColumn: 3, offsetX: 0, offsetY: 0
Core Features
Permission
Reference: Permission
Formula
Reference: Formula
Row and Column
Reference: Row and Column
Range
Reference: Range
Selection
Reference: Selection
Cell
Reference: Cell
Freeze
Reference: Freeze
Integrating Custom Components into Univer
Reference: Integrating Custom Components into Univer
Reference
Please refer to the following API documentation for more information: