【问题标题】:Can I use the value from (lastCell, getValue) as a value for a range?我可以使用 (lastCell, getValue) 中的值作为范围的值吗?
【发布时间】:2017-03-15 15:52:55
【问题描述】:

我正在运行一个函数,我试图找到工作表最后一行、最后一列的值,并将该值用作范围值的一部分。在我的测试表中,最后一列,最后一行的值是数字 3。 第 45 和 46 行来自我在同一张工作表上用来重命名活动工作表的另一个函数。此函数运行正常,即脚本找到数字 3 并将活动工作表重命名为 3。 第 56 行显示脚本在使用静态值时可以正常工作。 第 57 行是我尝试使用 getLastRow 和 getLastColumn 方法将此数字作为 getRange 值的一部分插入。当我运行这个脚本时,它会抛出一个错误“找不到范围”。 第 55 行的“Logger.log”值为 3.0,表明脚本正在运行到该点。我的结论是错误来自第 57 行。 问题: 1. 我是否试图做一些使用 (lastCell, getValue()) 值无法完成的事情?如前所述,该值为 3.0 而不仅仅是 3,但这适用于第 45 和 46 行。 2. 如果可以,我的信息格式是否错误?我还尝试通过添加“+”号将第 57 行写为 ('A:A+(lastCell.getValue())')。 感谢您的帮助!

45  // SpreadsheetApp.setActiveSheet(ss.getSheetByName('Copy of Sheet1'));  
46  // SpreadsheetApp.getActiveSpreadsheet().renameActiveSheet(lastCell.getValue()); This works OK!!!
47  //
48  // Next need to make the next row have columnA and last Column data added
49  //
50  var ss = SpreadsheetApp.getActiveSpreadsheet();
51  var sheet = ss.getSheetByName('Master FCR Listing');//ss.getSheets()[1];
52  var lastColumn = sheet.getLastColumn();
53  var lastRow = sheet.getLastRow();
54  var lastCell = sheet.getRange(lastRow, lastColumn);
55  Logger.log(lastCell.getValue());// Shows a value of 3.0 ??  This the problem?? 
56  //*  sheet.getRange('A:A3').copyTo(sheet.getRange('A:A4')); //. This works!
57  sheet.getRange('A:A(lastCell.getValue())').copyTo(sheet.getRange('A:A4'));//A4 will be +1!

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    替换

    sheet.getRange('A:A(lastCell.getValue())') 
    

    sheet.getRange('A:A'+(lastCell.getValue()))
    

    以字符串格式传递范围。

    【讨论】:

    • 非常感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-27
    • 2022-01-25
    相关资源
    最近更新 更多