首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将google驱动器文件夹中的所有照片插入到google Sheet中?

将google驱动器文件夹中的所有照片插入到google Sheet中?
EN

Stack Overflow用户
提问于 2021-08-06 02:12:16
回答 2查看 83关注 0票数 2

我不是一个很好的程序员,也只会稍微修改一下代码。但我希望有人能帮我。我希望上传谷歌文件夹中的所有图像到一个脚本电子表格。我需要文件夹名称是可更改的基于一个单元格,这样我就可以更改名称的单元格到一个不同的文件夹运行脚本和脚本将带来所有的照片从文件夹。某些文件夹可能有5张照片,其他文件夹可能有25张照片。我已经能够找出它,但只有当我引用实际的照片,而不是仅仅引用文件夹的名称,并让它导入所有。任何和所有的帮助都要提前感谢。

EN

回答 2

Stack Overflow用户

发布于 2021-08-06 03:40:57

代码语言:javascript
复制
function insertImages() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const nameF = 'Folder'; // Sheet Name of the sheet containing the Folder Name
  const rangeF = 'A1'; // Cell containing the Folder Name
  const nameT = 'Target'; // Sheet Name of the sheet to insert images
  let row = 2; // Starting row to insert
  const col = 1; // Column to insert
  
  const sheet = ss.getSheetByName(nameT);
  const folderName = ss.getSheetByName(nameF).getRange(rangeF).getValue();
  const folders = DriveApp.getFoldersByName(folderName);
  while (folders.hasNext()) {
    const folder = folders.next();
    const files = folder.getFiles();
    while (files.hasNext()) {
      const file = files.next();
      sheet.insertImage(file.getBlob(), col, row++);
    }
  }
}
票数 1
EN

Stack Overflow用户

发布于 2021-08-06 04:01:07

按ID

代码语言:javascript
复制
function importImgs1() {
  var folderID = '1ZfWEnxtKQiuz8V9j2ckgIZRHRMmYc7rH';
  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('import images');
  sh.clear();
  sh.appendRow(["name", "image"]);
  var folder = DriveApp.getFolderById(folderID);
  var data = [];
  var files = folder.getFiles();
  while (files.hasNext()) {
    var file = files.next();
    data = [ 
      file.getName(),
      "=image(\"https://docs.google.com/uc?export=download&id=" + file.getId() +"\")",
    ];
    sh.appendRow(data);
  }
}

按名称

代码语言:javascript
复制
function importImgs2() {
  var folderName = 'img';
  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('import images by name');
  sh.clear();
  sh.appendRow(["name", "image"]);
  var folders = DriveApp.getFoldersByName(folderName);
  var foldersnext = folders.next();
  var data = [];
  var files = foldersnext.getFiles();
  while (files.hasNext()) {
    var file = files.next();
    data = [ 
      file.getName(),
      "=image(\"https://docs.google.com/uc?export=download&id=" + file.getId() +"\")",
    ];
    sh.appendRow(data);
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68675321

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档