-1

这是我的功能

 function Cool() {   var h = SpreadsheetApp.getActiveSpreadsheet();  
 var range = 0;   var count = 1;   var alph = ["A", "B", "C", "D", "E",
 "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S",
 "T"];   for (i = 0; i < 20; i+=0.5) {
     if (i == 19 && count != 5) {
       i == 0;
       count += 1;
     } else if (i == 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 || 10 || 11 || 12 || 13 || 14 || 15 || 16 || 17 || 18) {
       range = h.getSheets()[0].getRange(alph[i] + count + ":" + alph[i] + count);
       SpreadsheetApp.setActiveRange(range);
       randomize();
     }   } }

有一个错误

range = h.getSheets()[0].getRange(alph[i] + count + ":" + alph[i] + count);
4

1 回答 1

0

你看过你正在使用的数据吗?

这是您的脚本稍作修改的版本,带有一个记录器,可以查看发生了什么以及下面的日志结果。我想您会明白为什么会收到错误消息。看来您的条件简化语法并没有达到您想要的效果,是吗?

顺便说一句,这个脚本的最终目的是什么?你能解释一下这个想法吗?

如果你只想对 i 的整数值做某事,那么使用类似if(i==parseInt(i))的东西会更容易......

function Cool() {   
  var h = SpreadsheetApp.getActiveSpreadsheet();  
  var range = 0;   var count = 1;   var alph = ["A", "B", "C", "D", "E",
 "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S",
 "T"];   for (i = 0; i < 20; i+=0.5) {
     if (i == 19 && count != 5) {
       i == 0;
       count += 1;
     } else if (i == 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 || 10 || 11 || 12 || 13 || 14 || 15 || 16 || 17 || 18) {
//       range = h.getSheets()[0].getRange(alph[i] + count + ":" + alph[i] + count);
//       SpreadsheetApp.setActiveRange(range);
 Logger.log('i='+i+'  '+alph[i] + count + ":" + alph[i] + count);
 //      randomize();
     }  
     }
     }

记录器结果:

i=0  A1:A1
i=0.5  undefined1:undefined1
i=1  B1:B1
i=1.5  undefined1:undefined1
i=2  C1:C1
i=2.5  undefined1:undefined1
i=3  D1:D1
i=3.5  undefined1:undefined1
i=4  E1:E1
i=4.5  undefined1:undefined1
i=5  F1:F1
i=5.5  undefined1:undefined1
i=6  G1:G1
i=6.5  undefined1:undefined1
i=7  H1:H1
i=7.5  undefined1:undefined1
i=8  I1:I1
i=8.5  undefined1:undefined1
i=9  J1:J1
i=9.5  undefined1:undefined1
i=10  K1:K1
i=10.5  undefined1:undefined1
i=11  L1:L1
i=11.5  undefined1:undefined1
i=12  M1:M1
i=12.5  undefined1:undefined1
i=13  N1:N1
i=13.5  undefined1:undefined1
i=14  O1:O1
i=14.5  undefined1:undefined1
i=15  P1:P1
i=15.5  undefined1:undefined1
i=16  Q1:Q1
i=16.5  undefined1:undefined1
i=17  R1:R1
i=17.5  undefined1:undefined1
i=18  S1:S1
i=18.5  undefined1:undefined1
i=19.5  undefined2:undefined2

编辑:出于好奇,我确实使用建议的语句尝试了您的代码,IF并且得到了以下日志(更好;-)但是毫无用处,带有统一增量的简单 for 循环也会这样做...

i=0  A1:A1
i=1  B1:B1
i=2  C1:C1
i=3  D1:D1
i=4  E1:E1
i=5  F1:F1
i=6  G1:G1
i=7  H1:H1
i=8  I1:I1
i=9  J1:J1
i=10  K1:K1
i=11  L1:L1
i=12  M1:M1
i=13  N1:N1
i=14  O1:O1
i=15  P1:P1
i=16  Q1:Q1
i=17  R1:R1
i=18  S1:S1

所以问题仍然存在:最终目标是什么?

于 2013-01-25T12:16:47.613 回答