2015-08-19 2 views
0

У меня есть функция ниже, которая выводит данные из листа google в документ google. Есть ли способ изменить это, чтобы он распечатывал только данные от Столбец '1' (или Столбец 'B')?Скрипт Google Apps: выбор одного столбца в электронной таблице

function saveAsDOC() { 
    var fileName = "Announcements Test File"; 
    var doc = DocumentApp.create(fileName); 
    SpreadsheetApp.getActiveSpreadsheet().toast('Generating file..', 'Status', 3); 

    // Get the range in the spreadsheet 
    var ws = SpreadsheetApp.getActiveSpreadsheet().getDataRange(); 
    try { 
    var data = ws.getValues(); 

    // Announcements loop 
    if (data.length > 1) { // Make sure data is longer than one character 
     for (var row = 1; row < data.length; row++) { 
     if(new Date(data[row][2]) <= new Date()) { // Check the date 
      for (var col = 1; col < data[row].length; col++) { 
      if(data[row][col]!=""){ // Make sure the data is not empty 
       doc.appendParagraph(data[row][col]); // Append announcement 
       doc.appendParagraph("") // Line break between announcements 
      } 
      } 
     } 
     } 
    } 
    } 

    catch(err) { 
    Logger.log(err); 
    Browser.msgBox(err); // show the error messages in the browser 
    } 
} 

ответ

0

Попробуйте изменить переменную col от переменной к постоянному значению:

изменение:

[col] 

к:

[2] 

И посмотреть, что происходит.

+0

Это делает печать столбца 3 раза. – tda

+0

Итак, вы знаете это. Кажется, что-то происходит 3 раза. Какие? Существует два цикла 'for'. Является ли 'data [row] .length' 3? Или 'data.length' 3? –

+0

данные.l длина? Я не знаю – tda