|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
JSA代码如下
- function Get_td(rng,type){
- const arr=rng.Value2.split(",");
- const [temp1,temp2]=[[0,1],[1,0]].map(([a,b])=>arr.slice(a,arr.length-b));
- let imax=0,obj={};
- let res=temp1.reduce((res,x,i)=>{
- let key=x-temp2[i];
- let tp=[key,x,temp2[i]]; //梯度值、被减数、减数
- obj[key]=(obj[key] || 0) + 1; //梯度值次数累加
- imax=Math.max(imax,obj[key]) //记录最大梯度值次数
- return (res.push(tp),res);
- },[]);
- if (type=="梯度最多值") return [...new Set(res.reduce((ar,[a,b,c])=>(obj[a]==imax?ar.push(a):null,ar),[]))].join(",");
- if (type=="梯度最多值对应值") return [...new Set(res.reduce((ar,[a,b,c])=>(obj[a]==imax?ar.push(b,c):null,ar),[]))].join(",")
- }
复制代码 |
|