我将有一个定期电子表格,其中包含大量信息。 (大约153列。)但我只需要保留其中的一小部分。所以我计划编写一个脚本来运行以删除一组预定义的列。
示例:
Columns from initial spreadsheet:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
A B C D E F G H I J K L M N
I only want columns 2-4, 8, 10, & 13-14 to be left, say.
Columns from final spreadsheet after script is run:
1 2 3 4 5 6 7
B C D H J M N
我能想到的唯一方法就是我携带一个计数器,每次删除一列时我都要调整1以准确删除循环中的下一个所需列。
是否没有deleteColumns(2,7,12,...)
类型代码..?
谢谢。
答案 0 :(得分:1)
向后计数 - 这样你删除的内容对你的其余工作没有任何影响。
...
var sheet = blahblahblah;
var lastCol = sheet.getLastColumn();
var keep = [2,3,4,8,10,13,14]; // array of column numbers to keep
for (var col=lastCol; col > 0; col--) {
if (keep.indexOf(col) == -1) {
// This isn't a keeper, delete it
sheet.deleteColumn(col);
}
}
...