如何将Google Sheets中=IMAGE(URL)的图片转为本地存储显示
解决Google Sheets中本地嵌入图片替代=IMAGE(URL)的方法
方法一:手动单张嵌入图片
- 先下载目标图片:打开
=IMAGE(URL)公式里的图片链接,右键将图片保存到本地设备 - 回到Google Sheets,选中需要放置图片的单元格
- 点击顶部菜单栏的插入→图片→图片置于单元格内
- 在弹出窗口中选择已下载的本地图片,上传完成后图片会直接嵌入单元格,不再依赖原URL
方法二:用脚本批量替换(适合大量图片)
如果有大量=IMAGE(URL)公式需要替换,可通过Google Apps Script自动处理:
- 打开目标表格,点击顶部扩展程序→Apps脚本
- 删除编辑器里的默认代码,粘贴以下脚本:
function embedLocalImages() { const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const range = sheet.getDataRange(); const formulas = range.getFormulas(); for (let i = 0; i < formulas.length; i++) { for (let j = 0; j < formulas[i].length; j++) { const formula = formulas[i][j]; if (formula.startsWith('=IMAGE(')) { const urlMatch = formula.match(/=IMAGE\("?([^"]+)"?\)/); if (urlMatch && urlMatch[1]) { const imgUrl = urlMatch[1]; try { const response = UrlFetchApp.fetch(imgUrl); const blob = response.getBlob(); sheet.insertImage(blob, j+1, i+1).setAnchorCell(sheet.getRange(i+1, j+1)); sheet.getRange(i+1, j+1).setFormula(''); } catch (e) { console.log(`处理单元格${sheet.getRange(i+1, j+1).getA1Notation()}失败: ${e}`); } } } } } }
- 点击编辑器的运行按钮,首次运行需按提示完成权限授权
- 运行结束后,所有带
=IMAGE(URL)的单元格都会替换为本地嵌入的图片
注意事项
- 嵌入的图片会自适应单元格大小,可调整单元格尺寸适配图片
- 批量处理前建议备份表格,避免意外数据丢失
- 若图片URL需登录权限才能访问,脚本可能无法获取图片,这种情况建议手动下载上传
内容的提问来源于stack exchange,提问作者theovogg
相关产品推荐
相关产品推荐

