【问题标题】:xlsx error: "Removed Records: Named range from /xl/workbook.xml part" when tried to resolve errorsxlsx 错误:尝试解决错误时出现“已删除记录:命名范围来自 /xl/workbook.xml 部分”
【发布时间】:2013-08-30 18:24:54
【问题描述】:

我有一个使用 SSIS 生成的 xlsx 文件。该文件的数据是通过数据流任务写入的,其中 xlsx 文件是 oledb 目标。我使用以下连接字符串作为 OLEDB 连接的表达式:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="+ @[User::ExcelPath] +";
Extended Properties=\"Excel 12.0 Xml;HDR=YES\";"

文件在数据流任务之前打开就好了。数据流任务完成后,我得到一个对话框如下:

当我单击是时,我收到另一条消息:

xml文件的内容是

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">       <logFileName>error072840_02.xml</logFileName><summary>Errors were detected in file   'C:\output\documentId-1.xlsx'</summary><removedRecords summary="Following is a list of removed records:"><removedRecord>Removed Records: Named range from /xl/workbook.xml part (Workbook)</removedRecord></removedRecords></recoveryLog>

我无法弄清楚究竟是什么导致了这个错误。任何帮助将不胜感激。 TIA

【问题讨论】:

    标签: xml excel ssis xlsx


    【解决方案1】:

    我在使用 EPPlus 自定义现有模板时遇到了这个问题。对我来说,问题出在模板本身,因为它包含对查找表的无效引用。我在公式 -> 名称管理器中找到了这个。

    如果您遇到此问题,我建议您检查模板。

    【讨论】:

    • 强制性“我也是”评论。花了很长时间才找到。
    • 节省你几个小时的生命,我永远不会从我的身边回来:这样做时请仔细检查隐藏的床单,因为可以理解,它们不会出现在此列表中,并且无论如何,可能更容易出错。
    • 节省大量时间!
    【解决方案2】:

    解决了。我真的不知道原因。进行了一些研究并了解到与选项卡名称相关的某些内容可能会导致此问题。我不得不使用名称为“tab”和“tab(2)”的选项卡。 xlsx 可能会将它们视为相同的名称。

    【讨论】:

    • 谢谢。对我来说,它是标签名称中的'
    • 哇...由标签名称中的' 引起!我从来没有找到它
    • 每个工作表(标签)都需要有唯一的名称。当 2 个或更多工作表具有相同名称时,也会显示此错误。
    • 是的 - 一旦我缩小选项卡的范围,我只需将其从首字母缩略词重命名为全名,就解决了问题。顺便说一句 - 每次我使用 Excel 接触点处理项目时,我都知道我可以告别几天/几周来整理这些随机问题。
    【解决方案3】:

    在我的情况下,类似的错误是由超过 30 个字符的工作表(标签)名称引起的。

    【讨论】:

      【解决方案4】:

      对我来说,它是一个按钮,其宏分配了一个值,例如:'MyMacro("MyParam")'

      【讨论】:

        【解决方案5】:

        您的选项卡名称中可能有一个特殊字符,并且您使用选项卡名称定义名称范围。 比如tab名字是“A(1)”,改成“A(1)”就行了

        【讨论】:

          【解决方案6】:

          就我个人而言,空格/特殊字符在选项卡(工作表)名称中无关紧要。命名范围本身不能有空格/特殊字符,因为它被视为变量

          【讨论】:

            【解决方案7】:

            在我的例子中,有十几个对命名范围的引用,但它们没有出现在公式->名称管理器窗口中。我不得不将 xlsx 文件重命名为 .zip 文件,打开 /xl/workbook.xml,手动删除整个 definedName 节点,然后将其重命名为 .xlsx。瞧!

            那是我生命中的两个小时,我再也回不来了。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-12-31
              • 1970-01-01
              • 1970-01-01
              • 2017-06-14
              • 2021-07-15
              • 2022-12-11
              相关资源
              最近更新 更多