尝试了一下代码,先拆分数据至不同sheet,但是在复制标题时报错,头疼,怎么改!
以下代码可以跑通,就是标题没有复制成功。
function Catpart(){
var qwe=1//InputBox("请输入标题的行数");//标题为1
var cetar=Number(qwe)+1//从标题下一行开始取数2
var ttt="a"+cetar//ttt为2
var qae=1//InputBox("请输入要按第几列的数据进行拆分");//qae为第几列数据
var diao=ActiveSheet//激活sheet表
var BIAO=ActiveSheet.UsedRange.Value2;//表的内容
var arr=BIAO.slice(qwe);//slice截取元素
var clnCount=arr[0].length;//列的数量,其中包含的数值数
var m=new Map();//创建键值对
for (var ar of arr){
if(m.has(ar[qae-1])){
var newarr=m.get(ar[qae-1]).concat([ar]);
m.set(ar[qae-1],newarr);
}else{
m.set(ar[qae-1],[ar])
}
}
for (var [key,val] of m){
var ws=Sheets.Add(null,ActiveSheet);ws.Name=key;//
//diao.Range("a1","XFD"+qwe).Copy();//复制标题行到新的工作表!就是这里报错!
ws.Range("a1").Select();
Selection.PasteSpecial(xlPasteColumnWidths, xlPasteSpecialOperationNone, false, false);
ActiveSheet.Paste(undefined, undefined);
ws.Range(ttt).Resize(val.length,clnCount).Value2=val;//Range(ttt,"XFD"+1048576).Select();
Selection