【问题标题】:How can I output the contents of a scripted array in a google sheets?如何在谷歌表格中输出脚本数组的内容?
【发布时间】:2015-07-06 18:00:37
【问题描述】:

我对编码和 Google App 脚本完全陌生,所以我谦虚地问我的问题。

我到处寻找这个问题的答案,但似乎找不到解决方法。

以下是我根据 ID 从 Google 表格获取数据的代码。我可以将数据带入并添加 4 张和特定范围的数据。

脚本成功地将数据存储在一个数组(arr)中。

脚本将原始导入范围大小的数据发送到活动工作表。

但是,我怎样才能输出我可以看到记录在数组 (arr) 中的所有数据? 我尝试更改输出的范围大小,但无济于事,它只是导致错误。

   function GetData() {
        var classes = ["1XN9NPs_irdpVBEuy0saY-m_PjMW8BxIOgvLkaekdMXo",     
        "1XN9NPs_irdpVBEuy0saY-m_PjMW8BxIOgvLkaekdMXo", 
        "11Pdsixi17YjtePg4L780mtGkElWU7TUmshYtJnzxbMU", 
        "11y8ILVN3lTCWaQYr0nhLdDdLsDDoRqcR2BHz42leUbI"];
        var ui = SpreadsheetApp.getUi();

    for (var j = 0; j < classes.length; j++) {
        var exSs = SpreadsheetApp.openById(classes[j]);        
        var exSheet = exSs.getSheetByName("tastodolist");
        var range = "A4:F10"
        var exRange = exSheet.getRange(range);
        var values = exRange.getValues();
        var arr = [];
        arr.push(values);

        for (var i = 0; i < arr.length; i++) {

         //The log contains all the data that is needed. 
            Logger.log(arr[i]);

        }
        //I'm struggling to get all of the logged data into the active            
        sheet - my code can only output 7 rows of data. 

       SpreadsheetApp.getActiveSheet().getRange(1,1,7,6).setValues(arr[i]);


    }
}

【问题讨论】:

    标签: javascript arrays google-apps-script google-sheets


    【解决方案1】:

    您只得到 7 行和 6 列的工作表,获取所有数组的大小以完全输出:

    SpreadsheetApp.getActiveSheet().getRange(1,1,arr.length,arr[0].length).setValues(arr[i]);
    

    另外,这主要是一个 [google-apps-script] 问题。

    【讨论】:

      猜你喜欢
      • 2019-05-27
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-02
      相关资源
      最近更新 更多