Fiooona 发表于 2020-5-24 17:22:26

如何将单元格内容显示成某一种格式?

1 如何让单元格显示数字的时候,超过10000的千分符显示?
2 如何将数字单位设置为千元来显示?
3 如何让小数已百分比的形式来显示?
4 如何让单元格的值为0的时候不让0显示?
在应用SpreadJS 这个表格控件时,常常有用户会问到这类问题,如何让单元格的内容以一种特定的方式去显示?与Excel一样,SpreadJS中也能设置单元格格式,设置格式并不会改变单元格的Value 值,仅仅改变了显示的值,所以当双击进入单元格的编辑状态时会出现单元格的实际的Value值。
因为SpreadJS与Excel 的行为逻辑高度一致,所以,遇见这样的问题先不要急着用某种自定义的方式去实现,可以先搜索:在Excel 中如何实现数值为0的单元格不显示? 如果你搜索了,就会发现网上有一大堆解决方案,以上问题用自定义单元格格式都能实现:
1 如何让单元格显示数字的时候,超过10000的千分符显示? =》设置格式:#,##0 ,API的实现方式:sheet.getCell(1,1).formatter("#,##0")
2 如何将数字单位设置为千元来显示?=》设置格式: 0,!.000千元
3如何让小数已百分比的形式来显示?百分数('%'): 显示数字为100的百分数,例如,显示0.08为8%或2.8为280%,包括数字格式的百分号(%)。例如,要显示(2,2)的百分比为100,sheet.setFormatter(2, 2, '0%').您还可以将该数字显示为10000的百分比, sheet.setFormatter(2, 2, '#%%')。
4 如何让单元格的值为0的时候不让0显示? API 实现 => sheet.getCell(1,1).formatter("0;0;")

在线表格编辑器中可以直接设置:

像以上常见的问题设置某种固定的格式字符串可以轻松实现,如果较为复杂格式可以用SpreadJS 中的自定义格式去实现,自定义格式更多可以参考学习指南。


页: [1]
查看完整版本: 如何将单元格内容显示成某一种格式?