<!DOCTYPE html>
<html >
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>demo</title>
</head>
<body >
<A1 style="color:red">说明:合并列名为ID或者首行第一个列名为基准,去除相同数据,注意后表会覆盖前表数据</A1>
<br>
请选择需要合并的文件:<input name="input_upload" id='check' type="file"/>
<br>
<button onclick="go()" /></button>
<a></a>
</body>
<script type="text/javascript" src="./js/xlsx.full.min.js"></script>
<script type="text/javascript" src="./js/xlsxtool.js"></script>
<script type="text/javascript">
// 读取本地excel文件
var con = document.getElementById('check')
var sb = this;
con.onchange = function (e) {
var fmPic = document.getElementsByName("input_upload")[0].files
var file=fmPic [0];
var callback =function (file){
const result = [];
for (let i = 0; i < file.SheetNames.length; i++) {
var sheet = file.Sheets[file.SheetNames[i]];
var newData ;
if(sheet.B1==null) {
newData=XLSX.utils.sheet_to_json(sheet,{range:1});
}else{
newData=XLSX.utils.sheet_to_json(sheet);
}
// result.push(newData)
result.push(...newData)
}
console.log('result', result)
sb.merger(result)
// 生成excel的配置项
/*
var wopts = {
bookType: 'xlsx', // 要生成的文件类型
bookSST: false, // 是否生成Shared String Table,官方解释是,如果开启生成速度会下降,但在低版本IOS设备上有更好的兼容性
type: 'binary'
};
var wbout = XLSX.write(file, wopts);
var blob = new Blob([sb.s2ab(wbout)], {type:"application/octet-stream"});
sb.openDownloadDialog(blob,'sb.xlsx');
*/
};
sb.readWorkbookFromLocalFile(file,callback);
}
function go(){
var aoa = [
['姓名', '性别', '年龄', '注册时间'],
['张三', '男', 18, new Date()],
['李四', '女', 22, new Date()]
];
var sheet = XLSX.utils.aoa_to_sheet(aoa);
openDownloadDialog(sheet2blob(sheet), '导出.xlsx');
}
//合并处理
function merger(result){
if(result.length<=0)alert("数据是空的");
var item = result[0];
var ID = null;
for(let key in item){
if(ID ===null){
ID = key;
}
if(key==="ID"){
ID = key
}
};
let obj = {};
result.forEach((item)=>{
if(obj[item[ID]]==null) {
obj[item[ID]]=item
}else{
obj[item[ID]] = Object.assign(obj[item[ID]], item);
}
});
let a =[];
for(let key in obj){a.push(obj[key])};
var sheet = XLSX.utils.json_to_sheet(a);
openDownloadDialog(sheet2blob(sheet), '导出1.xlsx');
}
</script>
</html>
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
excel工具.rar (4个子文件)
excel工具
js
xlsx.full.min.js 893KB
xlsx.core.min.js 459KB
xlsxtool.js 3KB
excel工具.html 3KB
共 4 条
- 1
资源评论
老牛吃面
- 粉丝: 1
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功