Vue.js 使用 XLSX 库解析并修改 Excel 文件,添加样式并导出
<template>
<div>
<button @click="exportExcel">导出Excel</button>
</div>
</template>
<script>
import XLSX from 'xlsx';
export default {
methods: {
exportExcel() {
// 加载模板文件
let workbook = XLSX.readFile(require('@/public/template.xlsx'));
// 将Excel文件转换为JSON数据
let worksheet = workbook.Sheets[workbook.SheetNames[0]];
let jsonData = XLSX.utils.sheet_to_json(worksheet);
// 修改JSON数据
jsonData.forEach((row) => {
row['Column1'] = 'prefix-' + row['Column1'];
});
// 将修改后的JSON数据转换为Sheet对象
let newWorksheet = XLSX.utils.json_to_sheet(jsonData);
// 添加单元格样式
let range = XLSX.utils.decode_range(newWorksheet['!ref']);
for (let i = range.s.r; i <= range.e.r; i++) {
let cellRef = XLSX.utils.encode_cell({r: i, c: 1});
newWorksheet[cellRef].s = {fill: {fgColor: {rgb: 'FFFF0000'}}};
}
// 将新的Sheet对象添加到workbook中
XLSX.utils.book_append_sheet(workbook, newWorksheet, 'Sheet1');
// 导出Excel文件
XLSX.writeFile(workbook, 'modified.xlsx');
}
}
}
</script>
原文地址: https://www.cveoy.top/t/topic/oKKi 著作权归作者所有。请勿转载和采集!