从电子表格重新命名Google云端硬盘图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从电子表格重新命名Google云端硬盘图片相关的知识,希望对你有一定的参考价值。

我有一个Google表单,人们已经提交了自己的照片。此数据已存储在电子表格中。我想将所有提交的照片重命名为该人的姓名,以便我们可以告诉谁是照片中的谁 - 无需手动操作。

为此,我创建了这个脚本:

function reName() {
var sheetName = 'Data';
var sheet = 
SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName); 
var newName = sheet.getRange("C2:C10");                        
var ID = sheet.getRange("D2:D10");                        
var nameData = newName.getValues();
var idData = ID.getValues();

for (var i = 0, iLen = nameData.length; i < iLen; i++) {

var file = DriveApp.getFileById(ID);

file.setName(newName);
   }
}

但是,它向我发出以下错误消息:“找不到具有给定ID的项目,或者您无权访问它。”我已经测试过脚本只能处理一个图像,而Name,它可以工作。如何让它在整个范围内工作?

谢谢。

答案

从你的问题来看,似乎newNameID分别在“C2:C10”和“D2:D10”中。那么下面的修改怎么样?

Modification points :

  • getValues()检索的数据是二维数组。
  • 可以将“C2:C10”和“D2:D10”的数据检索到阵列。

Modified script :

function reName() {
  var sheetName = 'Data';
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  var data = sheet.getRange("C2:D10").getValues();
  for (var i in data) {
    var file = DriveApp.getFileById(data[i][1]);
    file.setName(data[i][0]);
  }
}

Reference :

如果这不起作用,请告诉我。我想修改。

以上是关于从电子表格重新命名Google云端硬盘图片的主要内容,如果未能解决你的问题,请参考以下文章

如何将客户端脚本调用移动到服务器? (Google云端硬盘电子表格Feed)

无法通过 Google Apps 脚本中的 YouTube 数据 API 从云端硬盘上传:空响应

无法通过 Google Apps 脚本中的 YouTube 数据 API 从云端硬盘上传:空响应

如何从webapp重定向到Google云端硬盘应用

如何从Google表格电子表格中删除绑定脚本?

html 从Google云端硬盘嵌入图片