本帖最后由 王公子-_- 于 2025-4-23 11:24 编辑
对单元格生效,对表格列设置formatter不生效,且对表格列设置cfs.addFormulaRule("=A1=INT(A1)", intStyle, tableRanges)会导致小数变整数- let sheet = spread.getActiveSheet()
- let table = sheet.tables.add("table1", 1, 1, 3, 4)
- sheet.addSpan(2, 2, 1, 2)
- sheet.addSpan(3, 2, 1, 2)
- sheet.addSpan(4, 2, 1, 2)
- sheet.addSpan(5, 2, 1, 2)
- sheet.addSpan(6, 2, 1, 2)
- sheet.addSpan(7, 2, 1, 2)
- sheet.addSpan(8, 0, 1, 15)
- sheet.setValue(8, 0, "当table中存在合并单元格,且table下方存在横跨表格的合并单元格时,默认无法通过tab新增表格行");
- const cfs = sheet.conditionalFormats;
- const intStyle = new GC.Spread.Sheets.Style();
- intStyle.formatter = "0"; // 整数格式
- const cellRanges = [new GC.Spread.Sheets.Range(0, 0, 1, 1)];
- cfs.addFormulaRule("=A1=INT(A1)", intStyle, cellRanges);
- // 条件格式应用的区域为表格区域
- const tableRanges = [new GC.Spread.Sheets.Range(1, 1, 3, 1)];
- cfs.addFormulaRule("=A1=INT(A1)", intStyle, tableRanges); // 为表格设置会导致小数变整数
- // 要先设置addFormulaRule后setFormatter 单元格才生效,先setFormatter后addFormulaRule单元格输入整数会出现小数点,例:13=>13.
- sheet.setFormatter(0, 0, '0.##')
- table.getColumn(table.getColumnName(0)).formatter('0.##');
复制代码
|