API d’Univer Sheets
Univer Sheets offre des fonctionnalités de tableur de qualité professionnelle, dont les concepts sont conçus pour rester aussi cohérents que possible avec Microsoft Excel.
Importation
import '@univerjs/sheets/facade'import '@univerjs/sheets-ui/facade'Classeur
Un classeur contient plusieurs feuilles de calcul et peut être assimilé à un fichier Excel.
Le unitId peut servir d’identifiant unique au classeur.
Créer un classeur
La méthode univerAPI.createWorkbook(data, options) crée et renvoie l’objet FWorkbook.
IWorkbookData est un objet qui contient les informations de configuration du classeur.
const fWorkbook = univerAPI.createWorkbook({ id: 'Sheet1', name: 'Sheet1' })console.log(fWorkbook)Vous pouvez également empêcher le classeur de devenir le classeur actif en définissant les options suivantes :
const fWorkbook = univerAPI.createWorkbook({ id: 'Sheet1', name: 'Sheet1' }, { makeCurrent: false })console.log(fWorkbook)// If you want to switch to this workbook after 3 secondssetTimeout(() => { univerAPI.setCurrent(fWorkbook.getId())}, 3000)Obtenir les données du classeur
const fWorkbook = univerAPI.getActiveWorkbook()const snapshot = fWorkbook.save()console.log(snapshot)Décharger un classeur
Lorsque vous n’avez plus besoin d’un Workbook, appelez la méthode disposeUnit de l’instance d’API pour le décharger.
const fWorkbook = univerAPI.getActiveWorkbook()const unitId = fWorkbook?.getId()if (unitId) { univerAPI.disposeUnit(unitId)}Lorsque la page entière qui héberge l’instance Univer est détruite ou que la route est déchargée, veillez à appeler la méthode univer.dispose() pour effectuer le nettoyage, plutôt que d’utiliser univerAPI.disposeUnit.
Notez également que univer et univerAPI sont deux instances distinctes. Pour savoir comment les obtenir, consultez la page Installation et utilisation de base.
Obtenir l’ID du classeur
const fWorkbook = univerAPI.getActiveWorkbook()fWorkbook?.getId()Feuille de calcul
Les feuilles de calcul stockent les données tabulaires et appartiennent au classeur.
Un classeur peut contenir plusieurs feuilles de calcul, dont les noms doivent être uniques au sein du classeur.
Le subUnitId permet d’identifier de manière unique une feuille dans un classeur.
Obtenir les feuilles de calcul
Obtenir toutes les feuilles d’un classeur
const fWorkbook = univerAPI.getActiveWorkbook()const sheets = fWorkbook.getSheets()Obtenir la feuille de calcul active
const fWorkbook = univerAPI.getActiveWorkbook()const fWorksheet = fWorkbook.getActiveSheet()Obtenir les données d’une feuille de calcul
const fWorkbook = univerAPI.getActiveWorkbook()const fWorksheet = fWorkbook.getActiveSheet()const sheetSnapshot = fWorksheet.getSheet().getSnapshot()Créer une feuille de calcul
L’exemple suivant montre comment créer une feuille de calcul avec la méthode FWorkbook.create.
const fWorkbook = univerAPI.getActiveWorkbook()// Create a worksheet named 'Sheet2' with 10 rows and 10 columnsconst newSheet = fWorkbook.create('Sheet2', 10, 10)// Create a new sheet named 'MyNewSheetWithData' with 10 rows and 10 columns and some data, and set it as the first sheetconst sheetData = { // ... Omit other properties cellData: { 0: { 0: { v: 'Hello Univer!', }, }, }, // ... Omit other properties}const newSheetWithData = fWorkbook.create('MyNewSheetWithData', 10, 10, { index: 0, sheet: sheetData,})console.log(newSheetWithData)Supprimer une feuille de calcul
Supprimez une feuille de calcul en transmettant son instance ou son ID.
// Delete the second worksheetconst fWorkbook = univerAPI.getActiveWorkbook()const sheet = fWorkbook.getSheets()[1]fWorkbook.deleteSheet(sheet)// The code below deletes the specified worksheet by id// fWorkbook.deleteSheet(sheet.getSheetId());Activer une feuille de calcul
Activez une feuille de calcul en transmettant son instance ou son ID, ou utilisez la méthode FWorksheet.activate().
// Activate the second worksheetconst 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();Copier une feuille de calcul
// The code below duplicates the given worksheetconst fWorkbook = univerAPI.getActiveWorkbook()const activeSheet = fWorkbook.getActiveSheet()const duplicatedSheet = fWorkbook.duplicateSheet(activeSheet)console.log(duplicatedSheet)Obtenir l’ID de la feuille de calcul
const fWorkbook = univerAPI.getActiveWorkbook()const fWorksheet = fWorkbook.getActiveSheet()fWorksheet?.getSheetId()Définir le nombre de lignes et de colonnes
const fWorkbook = univerAPI.getActiveWorkbook()const fWorksheet = fWorkbook.getActiveSheet()// Set row count to 100000fWorksheet.setRowCount(100000)// Set column count to 30fWorksheet.setColumnCount(30)Actualiser une feuille de calcul
const fWorkbook = univerAPI.getActiveWorkbook()const fWorksheet = fWorkbook.getActiveSheet()fWorksheet.refreshCanvas()Zoom de la feuille de calcul
const fWorkbook = univerAPI.getActiveWorkbook()const fWorksheet = fWorkbook.getActiveSheet()// Set zoom ratio to 200%fWorksheet.zoom(2)const zoomRatio = fWorksheet.getZoom()Faire défiler jusqu’à une cellule
const fWorkbook = univerAPI.getActiveWorkbook()const fWorksheet = fWorkbook.getActiveSheet()// Scroll to cell D10const fRange = fWorksheet.getRange('D10')const row = fRange.getRow()const column = fRange.getColumn()fWorksheet.scrollToCell(row, column)// Add scroll animation durationfWorksheet.scrollToCell(row, column, 1000)// Get scroll stateconst scrollState = fWorksheet.getScrollState()const { offsetX, offsetY, sheetViewStartColumn, sheetViewStartRow } = scrollStateconsole.log(scrollState) // sheetViewStartRow: 9, sheetViewStartColumn: 3, offsetX: 0, offsetY: 0Fonctionnalités principales
Autorisations
Référence : Autorisations
Formules
Référence : Formules
Lignes et colonnes
Référence : Lignes et colonnes
Plage
Référence : Plage
Sélection
Référence : Sélection
Cellule
Référence : Cellule
Figer
Référence : Figer
Intégrer des composants personnalisés dans Univer
Référence : Intégrer des composants personnalisés dans Univer
Références
Pour en savoir plus, consultez la documentation des API suivantes :
Que pensez-vous de ce guide ?