首页 文章

Google Script会出现未知错误

提问于
浏览
0

感谢大家 .

我有一张包含7张的Google电子表格 . 我正在尝试将最后一页中的数据从单元格A1:D1移动到附加到同一工作表底部的新行 .

这是我正在使用的代码片段:

var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[6];
  var src = sheet.getRange('PaycheckHistory!A1:D1').getValues();
  sheet.appendRow([src]);

运行代码后,在“PaycheckHistory”选项卡上,在工作表底部附加的新行中,我得到以下内容:“[Ljava.lang.Object; @ 3e0d05f9”

有人可以告诉我(a)这个错误是什么,(b)这意味着什么,以及(c)我如何解决这个问题或执行我的目标,即“将最后一页中的数据从单元格A1:D1移动到一个新行附加到同一张纸的底部 . “

谢谢,全部!

6/22/18 IDK如果这会有所帮助,但在屏幕上找不到“更新此问题”按钮,显示我原来的帖子 . 然而,我发现了一个“编辑”按钮,我现在正在使用它 .

这是我正在使用的 complete 代码:(如果代码格式不正确,则道歉)

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('Tasks')
     .addItem('createCopy','createCopy')
      .addToUi();
}

function createCopy() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[6];
  var src = sheet.getRange('PaycheckHistory!A1:D1').getValues();
  sheet.appendRow(src[0]);

  SpreadsheetApp.flush();

  var myValue =

. SpreadsheetApp.getActiveSpreadsheet()getActiveSheet()getRange( “ø58”)的getValue() . ; var destinationFolder = DriveApp.getFolderById(“1errc7-2sM ********** ZPKJIxjZOTRWo”);

. DriveApp.getFileById(SpreadsheetApp.getActiveSpreadsheet()的getId())makeCopy(myvalue的,destinationFolder);

}

这是我得到的问题:函数的第一部分(ABOVE“SpreadsheetApp.flush();”)移动电子表格第6页上的数据 . 函数的下一部分(下面是“SpreadsheetApp.flush();” )复制整个电子表格,将副本放入指定的文件夹,然后重命名该副本 .

我希望此功能在电子表格文件中的其他选项卡/工作表上执行更多操作 . 我可以编写额外的代码来执行此操作,但是当我将新代码添加到上面的现有函数时,新代码什么都不做 . 只需使用“SpreadsheetApp.flush();”不起作用 .

1 回答

  • 0

    回答(a)

    getValues() 检索的值是二维数组 . 当它看到 appendRow(rowContents) 的用法时, rowContents 是1维数组 . 在脚本中,运行此 sheet.appendRow([src]) 时,将使用3维数组 . 所以放这样的字符串 .

    回答(b)

    关于 [Ljava.lang.Object;@ ,您可以在以下主题中查看信息 .

    回答(c)

    为了避免这样的字符串,在脚本的情况下,请修改如下 .
    来自:

    sheet.appendRow([src]);
    

    收件人:

    sheet.appendRow(src[0]);
    

    参考:

    如果我误解你的问题,我很抱歉 .

相关问题