2017-02-16 108 views
1

无法运行此代码,尝试使用if语句内循环。要跳过q6:q10数据。请帮忙。在谷歌Appscript使用它的谷歌电子表格如果 - 其他内部for循环

{ var data1=[];; 
    for(var i=0; i<dataLen; i++) 


     for (q = 0;q<20;if (q=5, q+=4; else q++)  


     { 
    data1[q]=data[i][q]; 
     } 

     ss.appendRow(data1); 
     flag="true"; 
+0

这是什么语言? – SaggingRufus

+0

在Google Appscript for Google电子表格中使用它。 –

+0

有什么错误?我不知道这种语言,但'for(q ...'似乎缺少一个')' –

回答

0

我不知道你真正想要的,但我想你想是这样的:

For(var i = 0; i<dataLen; i++){ 
    if(i%10 == 6||i%10 == 7||i%10 == 8||i%10 == 9||i%10 == 0){ 

    } else { 
    data1[i]=data[q][i]; 
    ss.appendRow(data1); 
    flag = "true"; 
    } 
} 
+0

这段代码实际上是将数据从一张纸传送到另一张纸上。我想将列1转移到列5,然后跳过列6-10,然后再转移列11到19. –

+0

在此代码中,将if(...)'改为if(i> = 6 && i <= 10)'。 –

+0

@RoshVerma试试这个 –

1

格式和缺乏背景使得这个问题很混乱,但是像这样的循环解决您的所述问题

var data1=[]; 
for(var i=0; i<dataLen; i++){ 
    for(q = 0; q < 20;q++){ 
     if(q == 7){ 
      q = 10; 
     } 
     data1[q] = data[i][q]; 

    } 
} 

如果你想使用2 for循环,它看起来像

var data1=[]; 
for(var i=0; i<dataLen; i++){ 
    for(q = 0; q < 7;q++){ 
     data1[q] = data[i][q]; 

    } 
} 
for(var i=0; i<dataLen; i++){ 
    for(q = 10; q < 20;q++){ 
     data1[q] = data[i][q]; 

    } 
} 
+0

这工作得很好。正如您在代码列6和列10中所提到的那样不显示。只有一个问题,这些列不是空白的,但值为“NOT_FOUND”。在这里参考。 http://screenshotlink.ru/1fe9cde924900e9d28d1f6046c1d96bc.png –

+0

嘿!这是正确的,因为你没有填补专栏它没有价值。我编辑了代码,以便在列6和10时设置一个值。希望这有助于! –

+0

非常接近我想要的。根据您的新代码,值将为0而不是“NOT_FOUND”。是否有可能消除这一列?我的意思是我更喜欢下一列数据而不是空格/“NOT_FOUND”/ 0,如果有任何方法可以做到这一点。 –