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

使用openxlsx打开部分xlsx文件报错sheetrId未找到,如何解决?

解决openxlsx加载Excel文件的报错问题

问题分析

你遇到的sheetrId未找到错误,结合之前的解压警告,核心原因分两种:一是Excel文件本身损坏/格式不兼容;二是isUnzipped参数用法错误。

具体解决步骤

  • 检查并修复Excel文件

    1. 手动打开example.xlsx,确认文件能正常打开,若提示损坏则修复后重新保存(选择标准.xlsx格式,避免旧版.xls)。
    2. 确保文件路径不含中文、空格或特殊字符,openxlsx对非纯英文路径兼容性较差。
  • 正确使用isUnzipped参数
    isUnzipped = T的作用是加载已手动解压的Excel文件夹(xlsx本质是压缩包),不是直接加载原xlsx文件。正确操作是:

    1. 手动将example.xlsx解压为文件夹。
    2. 把loadWorkbook的路径指向这个解压后的文件夹,而非原xlsx文件。
  • 替代方案
    如果上述方法无效,可换用组合包的方式处理:

    library(readxl)
    library(openxlsx)
    # 用readxl读取数据
    data <- read_excel("example.xlsx")
    # 新建工作簿并写入数据
    wb <- createWorkbook()
    addWorksheet(wb, "Sheet1")
    writeData(wb, "Sheet1", data)
    saveWorkbook(wb, "new_example.xlsx", overwrite = TRUE)
    

    另外,更新openxlsx到最新版本,旧版本可能存在格式兼容bug:

    install.packages("openxlsx")
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 08:07:13