Libre Office 如何处理现有的 Excel 工作表以使其尺寸膨胀?

Sn3*_*3t3 4 microsoft-excel-2010 libreoffice-calc

我尽量避免在现有 Excel 创建的工作簿上使用 Libre Office,因为这可能会产生令人不快的结果。在这种情况下,由于某种我不知道的原因,Libre Office 使工作簿的大小变得臃肿。我想知道 Libre Office 是否对所有 Excel 工作簿或只是该工作簿中导致它的某些内容执行此操作。

涉及软件:

  • Microsoft Office Excel 2010
  • Libre Office 3.5.x(确切版本未知)
  • Dropbox(仅用于同步更改)

涉及平台:

  • Windows 上的 Office(我想是那个明显的大师..)
  • Mac OS 10.6 上的 Libre Office

此工作簿中存储的数据类型:

  • 文本
  • 整数
  • 1 列包含一个简单的公式,跨越整个工作表,代表该特定行 (=CONCATENATE(A2285,B2285,D2285), =CONCATENATE(A2286,B2286,D2286) 等)
  • 总共 3,500 多行

这是一张照片,其中描述了详细信息,但我也会继续解释这张照片:

  • 此屏幕截图来自 .xlsx 工作簿的 Dropbox 历史记录。
  • 版本 61 - 68 是 Office Excel。
  • 版本 69 - 73 是 Libre Office。

Dropbox 文件历史记录。

all*_*tic 7

获取Open XML SDK 2.0并运行“Open XML Productivity Tool for Microsoft Office”。这是一个简洁的应用程序,可让您对 .xlsx 或 .docx 中的 XML 数据执行多项分析,并且通过使用其比较工具比较 XML 上两个文档的内容,您应该可以轻松查看膨胀的位置等级。

有几种可能:

  • LibreOffice 可能会插入 Office 视为“隐含”或包含在“正常”模板中的其他数据(字体/单元格样式、格式信息等)。
  • LibreOffice 可能未压缩数据。如果您不知道,Office 使用无损压缩(类似于 ZIP)来压缩 Open XML 格式的所有数据。我认为 LibreOffice 应该支持这一点,但也许该人正在运行的版本中的压缩存在问题。如果您在运行比较工具时没有看到数据中的显着差异,则这是最有可能的情况。
  • LibreOffice 可能会重新解析数据,创建自己的内部结构,并以最适合其自己的文档内部表示的方式保存数据(使用单独的例程),这可能比 Office 自己的效率低。如果这是真的,这更像是一个设计问题,并表明 LibreOffice 的本机功能与 Office 的本机功能所使用的特性和技术存在根本差异。

您可以轻松排除第二种可能性(压缩问题),如下所示:

  • 拿~220K Office 版本,在 LibreOffice 中打开它,在单个单元格中添加一个字符,然后保存。
  • 如果您还没有7-Zip,请安装它。
  • 打开 7-zip 格式的 LibreOffice 保存的 .xlsx 和 Excel 保存的 .xlsx。
  • 浏览存档的目录层次结构并找到一个文件(不是目录)。
  • 比较“尺寸”和“包装尺寸”。如果LibreOffice 的保存大小要大得多,则 LibreOffice 会膨胀数据本身。如果大小几乎相同,但打包大小不比大小小多少,则没有使用压缩,或者压缩错误。在我的 PC 上,Microsoft Excel 2010 将 _rels.rels 文件从 588 字节压缩到 245,将 xl\styles.xml 文件从 3037 字节压缩到 878。

您可以轻松排除第一个项目符号,如下所示:

  • 拿~220K Office 版本,在 LibreOffice 中打开它,在单个单元格中添加一个字符,然后保存。
  • 运行生产力工具并比较 XML。
  • 如果除了进行单个字符更改的非常小的包含区域之外,文档几乎完全相同,则第一个问题(插入附加数据)可能不适用。

如果您已经排除了第一个问题和第二个问题,那么我认为剩下的唯一可能性就是第三个问题,这不是那么容易解决,并且可能意味着 LibreOffice“效率低下”。

为了真正解决这个问题,我要做的第一件事就是测试一个更新版本的 LibreOffice。尝试他们的测试版/发布候选版/任何可用的东西。在不同的平台上尝试它,例如在 Windows 或 Linux 上。看看您是否可以找出比其他版本或平台产生更有效结果的版本或平台。一般来说,较新的版本(甚至是预发布版本)比旧版本更有可能包含对您的问题的解决方案。