将对象存储在Excel工作表中?

有没有人知道一种方法来存储工作表对象本身内的对象? 或者我们必须序列化并将其保存为自定义属性? 我想存储的数据并不是真的想坐在一张纸上。

如果是这样的话,取决于你想要添加到表单中的数据(我假设的数据是指文本)。 添加对应用程序扩展性的引用 可扩展性

并添加你会的。 无论是将一个子程序放入一个模块,还是放入工作表中。 我用这样的东西来添加一个子程序到一个新的模块,但同样的想法将工作在一个工作表。

Sub AddSomething() Dim VBCodeMod As CodeModule Dim LineNum As Long Set VBCodeMod = ActiveWorkbook.VBProject.VBComponents("Sheet1").CodeModule With VBCodeMod LineNum = .CountOfLines + 1 .InsertLines LineNum, _ "Dim thing as String"& Chr(13) & _ "thing = ""toothpaste"""& Chr(13) & _ " 'comments too" End With 

当然,如果你愿意的话,你可以调整它来覆盖你的项目,并明确地分配永久值。 实际上,添加一个模块会使访问更容易,但是如果需要的话,您可以写入表单

因为保存的Excel电子表格只是一个对象图的序列化,所以没有办法解决序列化对象的问题 – 如果对象可以往返一个string,我不会太难以卸载这个对象 – 给你很多select..

我仍然想知道,我自己如果CustomDocumentProperties是唯一的地方,或者如果它的限制将是太麻烦。

http://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.workbook.customdocumentproperties%28v=vs.80%29.aspx