繁体   English   中英

如何通过 AppsScript 在 Google 表格中返回 function

[英]How to return function in Google Sheet through AppsScript

我想通过 Google 表格界面中的自定义菜单打印 GA 帐户列表。 我在我的应用程序脚本中收集了这段代码。 当我运行时,列表帐户 function,它工作得很好 - https://prnt.sc/uvfag3

我想在 Google 表格界面中打印这个。 下面是我的代码

 function listAccounts() { 
  var sheet= SpreadsheetApp.getActive();
  var ss = sheet.getActiveSheet(); 
  var data = ss.getDataRange();
 

  var accounts = Analytics.Management.Accounts.list();
  if (accounts.items && accounts.items.length) {
    for (var i = 0; i < accounts.items.length; i++) {
      var account = accounts.items[i];
      Logger.log(account.name, account.id);

     
    }
  } 
}

function onOpen () {

var ui= SpreadsheetApp.getUi();
    ui.createMenu("Client Accounts")
      .addItem('List GA Accounts', 'listAccounts')
      .addToUi();

}

假设通过Google Sheet Interface ,您的意思是将数据写入电子表格,您可以使用map将数据格式化为二维数组,并使用setValues(values)将该数据写入工作表:

function listAccounts() { 
  var sheet= SpreadsheetApp.getActive();
  var ss = sheet.getActiveSheet(); 
  var accounts = Analytics.Management.Accounts.list();
  if (accounts.items && accounts.items.length) {
    var values = accounts.items.map(item => [item.name, item.id]);
    ss.getRange(1, 1, values.length, values[0].length).setValues(values);
  } 
}

笔记:

我不确定您要将数据写入工作表中的哪个位置,因此在下面的示例中,它是从第一行和第一列 ( A1 ) 开始的。 如果不是这样,请修改前两个参数:

ss.getRange(1, 1, values.length, values[0].length)

参考:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM