Импортировать обновленный столбец только в Google скрипт - PullRequest
0 голосов
/ 03 февраля 2020

У меня есть CSV-файл, который содержит имена сотрудников в столбце A и цели в столбце B. У меня есть скрипт для импорта данных в лист Google каждый день. Однако я хочу импортировать столбец B только при запуске триггера, чтобы лист заполнял новый столбец ежедневно обновляемыми значениями без добавления столбца A.

function importCSVFromGoogleDrive() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var file = DriveApp.getFilesByName("Employee Targets.csv").next();
  var csvData = Utilities.parseCsv(file.getBlob().getDataAsString().split('\r').splice(1)) ;
  var sheet = SpreadsheetApp.getActive().getSheetByName("Daily Tracker");
  var lastcol = sheet.getLastColumn();
  sheet.getRange(1, lastcol + 1, csvData.length, csvData[0].length).setValues(csvData);
  sheet.getRange(1,sheet.getLastColumn()).setValue(Utilities.formatDate(new Date(), "your_timezone", "dd-MM-yy")); 
}

1 Ответ

1 голос
/ 03 февраля 2020

Вам нужно будет создать новый массив из csvData только со значениями столбца B.

  var outputArray = []
  for (var row in csvData) {
    outputArray.push([csvData[row][1]]); // to post just column 2 to the sheet
  }

И затем разместить данные в outputArray на листе вместо csvData.


PS:

- Поскольку массивы начинаются с нуля, значения столбца 2 находятся в csvData[row][1].

- Если csvData - скорее всего, будет нулевым, вы можете заключить его в оператор if, чтобы избежать ошибок.

...