指南Univer Sheets功能核心功能数字格式

数字格式

Facade API可付费升级需要 Univer 服务端Univer on Node.jsPreset
--UniverSheetsCorePreset

数字格式插件提供了对单元格中数字的格式化功能,包括数字的小数位数、千分位分隔符、货币符号等。

🚨

不支持 DBNum 语法

使用方法

UI 界面中,可以通过菜单栏设置单元格的数字格式。或者在单元格数据 ICellData 对象中设置 s.n.pattern 字段。

{
  v: 123456.789,
  s: {
    n: {
      pattern: '#,##0.00'
    }
  }
}

Facade API

设置数字格式 0.5.2+

univerAPI.getHooks().onRendered(() => {
  const sheet = univerAPI.getActiveWorkbook().getActiveSheet();
 
  // get range
  const range = sheet.getRange(0, 0, 10, 10); // A1:J10
  
  // 具体参数请参考 https://support.microsoft.com/zh-cn/office/%E6%95%B0%E5%AD%97%E6%A0%BC%E5%BC%8F%E4%BB%A3%E7%A0%81-5026bbd6-04bc-48cd-bf33-80f18b4eae68
  range.setNumberFormat('#,###');
})

常见问题

关于单元格输入带有0开头或可转换为日期格式的数字时,不想被默认转换

可将单元格格式设置为文本格式,或在输入数字前加上单引号 '强制文本)。

ICellData 对象中设置 s.n.pattern

import { DEFAULT_TEXT_FORMAT } from '@univerjs/engine-numfmt';
 
{
  v: '012.0',
  s: {
    n: {
      pattern: DEFAULT_TEXT_FORMAT // 文本格式
    }
  }
}

univerAPI 设置单元格格式:

range.setNumberFormat(DEFAULT_TEXT_FORMAT);

参考链接


这个页面对您有帮助吗?