下载xlsx文件后,我需要对时间值求和,并在状态栏中查看平均值、总数、计数等。
我已经附上了当前情况的截图显示0。
TS码
public exportAsExcelFile(summary:any[], json: any[], excelFileName: string): void {
let report = "Global Service Desk SLA";
let ReportName = [{"Report":`Report Name : ${report}`}];
const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(ReportName ,{skipHeader:true});
if(worksheet['A2'] == undefined){
worksheet['A2'] = {"t":"s","v":`Date Range : ${summary[0].FromDate +" - "+summary[0].ToDate}`};
}
if(worksheet['A3'] == undefined){
worksheet['A3'] = {"t":"s","v":`Bot : ${summary[0].Bot}`}
}
if(worksheet['A4'] == undefined){
worksheet['A4'] = {"t":"s","v":`Timezone : ${summary[0].timeZone}`}
}
const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data']};
XLSX.utils.sheet_add_json(worksheet,json,{origin:"A7"});
const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });
this.saveAsExcelFile(excelBuffer, excelFileName);
}
如果我选择队列时间列,如屏幕截图平均总数显示0,我需要平均部分中的总值总和
如果将hh:mm:ss更改为h:mm:ss,则有效
如果我删除该列单元格中的单个0,则会显示平均总数,请参见屏幕截图
如何使用SheetJS库通过代码强制执行此类型?或者是否有其他方法让Excel计算hh:mm:ss
的总和?
1条答案
按热度按时间vddsk6oq1#
您需要将时间表示为一个数字,即时间中的秒数/ 86400。
例如,对于10:30:00,它是**(10.5小时x 60分钟x 60秒)/ 86400**
然后将所需单元格的
z
属性设置为hh:mm:ss
。请参见下面的示例代码,该代码适用于英语和美国语言环境:
注意,我更新了列C的
z
属性,但没有更新列B,列B仍然是一个简单的数字。