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

使用IMPORTRANGE导入Google Drive中Excel文件失败,求解决方案

解决Google Sheets中无法用IMPORTRANGE导入Excel文件的问题

你说得没错,IMPORTRANGE确实只支持Google Sheets格式的电子表格,这就是Excel文件导入时出现#REF!错误的核心原因——它完全没法识别Drive里的Excel文件,和你调整的权限设置(哪怕转移所有权后)没有关系,权限问题只会在Google Sheets文件导入时出现授权提示,而不是直接提示“无法找到电子表格”。

优先推荐:公式类解决方案

方案1:将Excel文件转换为Google Sheets(最稳定)

这是最贴合你原有使用习惯的方案,步骤很简单:

  • 在Google Drive中找到目标Excel文件,右键选择「打开方式」→「Google Sheets」
  • 系统会自动生成一个对应的Google Sheets副本,你可以把这个副本保存到指定文件夹
  • 然后直接用你熟悉的=IMPORTRANGE("google-sheets-id","A:AR")公式导入即可,完全兼容原有的操作逻辑,还能实时同步源文件的变更。

方案2:用IMPORTDATA导入(无需转换格式,但无法实时同步)

如果你不想转换文件格式,可以把Excel文件导出为CSV格式后用IMPORTDATA导入:

  • 打开Excel文件(本地或用Google Sheets打开),将其导出为CSV格式
  • 将CSV文件上传到Google Drive,设置共享权限为「知道链接的人可查看」
  • 获取CSV文件的直接下载链接(将Drive链接中的open?替换为uc?export=download&)
  • 使用公式:=IMPORTDATA("csv-direct-download-url")
    注意:这个方案无法实时同步源Excel文件的更新,每次源文件修改后都需要重新导出并替换Drive里的CSV文件。

备选:Google Apps Script脚本方案(适合自动同步场景)

如果需要自动同步Excel文件内容,不需要手动转换格式,可以用Google Apps Script实现:

  1. 打开目标Google Sheets,点击「扩展程序」→「Apps脚本」
  2. 替换默认代码为以下脚本:
function importExcelFromDrive() {
  // 替换为你的Excel文件ID
  const excelFileId = "your-excel-file-id";
  // 替换为目标工作表名称
  const targetSheetName = "Sheet1";
  
  // 获取Excel文件并读取数据
  const tempSpreadsheet = SpreadsheetApp.openById(excelFileId);
  const sourceSheet = tempSpreadsheet.getActiveSheet();
  const sourceData = sourceSheet.getDataRange().getValues();
  
  // 写入目标工作表
  const targetSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(targetSheetName);
  targetSheet.clearContents();
  targetSheet.getRange(1, 1, sourceData.length, sourceData[0].length).setValues(sourceData);
}
  1. 点击运行按钮,首次运行需要授权脚本访问Drive和Sheets的权限
  2. 你还可以设置触发器(点击脚本编辑器左侧的「触发器」图标),让脚本定期自动同步Excel文件的内容,实现实时更新的效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 03:32:26