使用Apps Script无法从其他表格提取单元格数据问题
问题解决:提取Google表格单元格数据并重命名表格
你的核心问题是:getRange()方法返回的是Range对象而非单元格内的实际数据,所以直接输出或赋值时只会显示"Range"。要获取单元格内容,必须调用getValue()(单个单元格)或getValues()(多单元格批量获取)方法。
修改后的代码如下:
function getLog11() { // 获取日志工作表 var logSheet = SpreadsheetApp.openById('1GJP63dcEEyBVTMPtI1rZa6M9ppWX81_B3Xlnf06Ajbw').getSheetByName("Mainbox"); // 获取目标单元格的实际值 var cellValue = logSheet.getRange("D44").getValue(); // 获取目标表格并写入值到D6 var targetSpreadsheet = SpreadsheetApp.openById('17yZgrKVkyMbYWrOl8mCqUyRCr3zTy6PB2nAR2QNs33w'); targetSpreadsheet.getRange("D6").setValue(cellValue); // 日志输出测试(现在会显示单元格实际内容) Logger.log(cellValue); // 用获取到的值重命名目标表格 targetSpreadsheet.setName(cellValue); }
关键说明:
getValue():用于获取单个单元格的内容,返回对应的数据类型(文本、数字、日期等)setName():用于修改表格的名称,直接传入获取到的单元格值即可- 拆分代码为独立变量,提升可读性和调试效率
内容的提问来源于stack exchange,提问作者Nate Bohn
相关产品推荐
相关产品推荐

