You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否通过公式使用Google Drive文件路径向Google Sheets插入图片

解决方案

Google Sheets原生不支持直接通过Drive文件路径调用图片,且默认IMAGE函数确实屏蔽了drive.google.com域名下的资源,可通过「自定义Apps Script函数+路径映射」的方式实现你要的效果,具体操作如下:

  • 第一步:获取根文件夹ID
    打开你作为根目录的Drive文件夹(比如你示例中的Drive/Test对应的文件夹),地址栏中https://drive.google.com/drive/folders/后的字符串就是该文件夹的ID,复制留存。
  • 第二步:添加自定义函数
    打开你需要插入图片的Google Sheets,点击顶部菜单「扩展程序」-「Apps Script」,删除编辑器中默认的代码,粘贴以下代码:
function GET_DRIVE_IMG(relativePath) {
  // 请将双引号内的内容替换为你第一步复制的根文件夹ID
  const ROOT_FOLDER_ID = "替换为你的根文件夹ID";
  const rootFolder = DriveApp.getFolderById(ROOT_FOLDER_ID);
  const pathSegments = relativePath.split("/");
  let currentFolder = rootFolder;
  const fileName = pathSegments.pop();
  // 按路径层级匹配子文件夹
  for (let segment of pathSegments) {
    if (segment.trim() === "") continue;
    const matchedFolders = currentFolder.getFoldersByName(segment);
    if (matchedFolders.hasNext()) {
      currentFolder = matchedFolders.next();
    } else {
      return "";
    }
  }
  // 匹配目标文件
  const matchedFiles = currentFolder.getFilesByName(fileName);
  if (matchedFiles.hasNext()) {
    const targetFile = matchedFiles.next();
    // 生成IMAGE函数支持的直链,末尾w1000为图片最大宽度,可自行调整
    return `https://lh3.googleusercontent.com/d/${targetFile.getId()}=w1000`;
  }
  return "";
}

点击顶部「保存项目」按钮,给项目命名后按照提示授权脚本访问你的Google Drive权限即可。

  • 第三步:表格内调用公式
    回到Google Sheets界面,在需要插入图片的单元格输入公式即可,比如你要插入Drive/Test/img.png,对应公式为:
    =IMAGE(GET_DRIVE_IMG("img.png"))
    如果根目录下还有子文件夹,比如要插入Drive/Test/2024/banner.gif,对应公式为:
    =IMAGE(GET_DRIVE_IMG("2024/banner.gif"))

注意事项

  • 所有需要调用的图片必须提前设置共享权限为「知道链接的任何人都可以查看」,否则图片无法正常加载
  • Drive文件和文件夹名称区分大小写,路径输入时请和实际名称完全匹配
  • 可调整返回直链末尾的参数修改图片尺寸,比如将=w1000改为=w800-h600就是限制最大宽度800像素、最大高度600像素

内容的提问来源于stack exchange,提问作者Falcon4ch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 10:15:01