如何在google表格中输出脚本数组的内容?

How can I output the contents of a scripted array in a google sheets?

本文关键字:数组 脚本 输出 google 表格      更新时间:2023-09-26

我是一个全新的编码和谷歌应用程序脚本,所以我谦虚地问我的问题。

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

下面是我的代码,根据他们的id从谷歌表获取数据。我可以带来的数据,并添加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]);

    }
}

你只得到7行6列的表格,得到所有数组的大小输出它的全部:

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

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