|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
JS宏代码,供参考,只适合WPS软件
- function 排课(){
- let obj=Sheets.Item("课表结构").Range("a1").CurrentRegion.Value2.reduce((obj,[a,b])=>(obj[a]=b,obj),{});
- let arr=[..."一二三四五六日"].reduce(([ar1,ar2],x,i)=>{
- if (i+1>obj.排课天数) return [ar1,ar2];
- for (let j=1;j<=obj.每天节数;j++){
- ar1[ar1.length]=j==1?`星期${x}`:null;
- ar2[ar2.length]=j<=obj.上午节数?`上${j}`:`下${j-obj.上午节数}`;
- }
- return [ar1,ar2];
- },[["星期"],["节次"]]);
- with(Sheets.Item("课表")){
- Range("a3").Resize(arr.length,arr[0].length).Value2=arr;
- let rng=Range("a3").CurrentRegion;
- [rng.Borders.LineStyle, rng.HorizontalAlignment, rng.VerticalAlignment]=[1,-4108,-4108];
- arr[0].forEach((x,i)=>x!=null && x.length==3?Cells.Item(3,i+1).Resize(1,obj.每天节数).Merge():null);
- }
- }
复制代码 |
评分
-
1
查看全部评分
-
|