【问题标题】:Add a row to google spreadsheet when a google tasks is completed完成谷歌任务后向谷歌电子表格添加一行
【发布时间】:2019-03-17 08:20:03
【问题描述】:

我希望 Google 应用程序脚本应该读取已完成的 google 任务并将它们作为一行添加到 google 电子表格中。 谁能帮帮我

【问题讨论】:

标签: google-apps-script google-tasks-api google-tasks


【解决方案1】:

阅读更多https://developers.google.com/apps-script/advanced/tasks

是否需要应用可选参数 showHidden = true 才能完成任务。

在脚本编辑器中打开菜单资源 - 高级 Google 服务并打开“任务 API”。然后试试这段代码:

function myFunction() {
  getCompletedTasks(getTaskListByTitle('ToDo'));
}

function getTaskListByTitle(titleTasksList) {
  if (typeof titleTasksList === 'undefined') { titleTasksList = 'default'; }
  var rezultId = 0;
  var response = Tasks.Tasklists.list();
  var taskLists = response.items;
  if (taskLists && taskLists.length > 0) {
    for (var i = 0; i < taskLists.length; i++) {
      var taskList = taskLists[i];
      if (titleTasksList == 'default') {
        rezultId = taskList.id; //return first item
        break;
      } else {
        //Logger.log('%s (%s)', taskList.title, taskList.id);
        if (titleTasksList == taskList.title) {
          rezultId = taskList.id;
          break;
        }
      }
    }
  } else {
    Logger.log('No task lists found.');
  }
  return rezultId;
}

function getCompletedTasks(taskListId) {
  var optionalArgs = {
    maxResults: 100,
    showHidden: true  
  };
  var tasks = Tasks.Tasks.list(taskListId, optionalArgs);
  var SPREADSHEET = SpreadsheetApp.getActiveSpreadsheet();
  var rngStartReport = SPREADSHEET.getRange('A1');
  var k = 0;
  if (tasks.items) {
    for (var i = 0; i < tasks.items.length; i++) {
      var task = tasks.items[i];
      rngStartReport.offset(k, 0).setValue(task.title);
      rngStartReport.offset(k, 1).setValue(task.status); 
      k++;
      Logger.log('Task with title "%s" and ID "%s" was found.',
                 task.title, task.id);
    }
  } else {
    Logger.log('No tasks found.');
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-28
    相关资源
    最近更新 更多