excel - 在 Excel 工作簿中保存自定义数据

标签 excel excel-2007

是否可以在 Excel 工作簿中保存大量数据(约 1-2 mb)?

理想情况下,此数据应与工作簿中的工作表相关联。
CustomProperties 不太可能支持大数据。

我的数据可以以以下形式呈现:二进制、xml、字符串。

谢谢...

最佳答案

是的,您可以在 Excel 单元格中存储字符串和 XML。对于二进制文件,最好不要将其保存在 Excel 中,但如果必须保存,则 OLE(对象链接和嵌入)可以
成为一种选择。您可以通过将二进制文件保存为 Excel 外部的文件,然后将其作为 OLE 对象插入来实现:

Dim mySht As Worksheet
Dim oleFileName as String

oleFile = "MyXmlDoc.xml" 

Set mySht = ActiveWorkbook.ActiveSheet

mySht.Shapes.AddOLEObject Filename:=Environ$("Appdata") & _
     "\MyFolder\" & oleFile, _
         Link:=False, DisplayAsIcon:=True

对于某些类型的常见文件类型,它对我们来说工作得很好。但我们从未对原始二进制数据这样做过。通常我们将 Word 文档或 PDF 放在电子表格中。您还冒着可能损坏工作簿或丢失二进制数据的风险。在我们的例子中,OLE 对象将被拥有 Wordperfect 而不是 Word 的用户单击,或者他们运行 Linux/Mac 并且嵌入的文档无法打开。

它确实使 Excel 文件随着您添加的每个嵌入对象而变得相当大。这是一项有其怪癖的古老技术。

关于excel - 在 Excel 工作簿中保存自定义数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4226550/

相关文章:

vba - 如果正在使用工作簿,请引用打开工作簿并创建错误消息

excel - 在本地窗口中展开自定义类节点会导致 Excel 静默崩溃

c# - OpenXML SDK - 将excel分页符设置为一定数量的列

sql - 使用参数从 excel 存储过程

c# - VSTO-捕获来自 excel 工作簿上任务栏的单击的事件

excel - 使用 excel vba 从 Web 下载 zip 文件

python - 读取包含特定工作表且仅选定列的在线 Excel 文件

java - 如何使用 Java 中的 Apache POI 从 Excel 读取/写入 XML map ?

excel - 如何通过Powershell查看Excel安装的是64位还是32位?

excel - excel中如何按组统计数据