C#Excel添加:以XMLforms获取活动工作表

我有一个工作的Word添加,它将文档的所选部分(包括图像,表格等)保存为数据库中的XMLstring。 插件还可以检索先前保存的XMLstring,并将其插入当前打开的文档的当前位置,保留样式和格式。

我想为Excel做几乎相同的工作。 我想获得一个表示活动工作表的XMLstring,将其保存到数据库,然后检索该XMLstring并将其作为工作表插入到活动工作簿中。

问题是,我不知道如何获得该XMLstring,也不知道如何将其作为工作表插入。 我一直在试验和寻找几个小时,但无济于事。

获取活动工作表似乎很简单:

dynamic sheet = Globals.ThisAddIn.Application.ActiveSheet; 

但是我还没有得到进一步的发展。

作为参考,这是我如何得到Word中的XMLstring:

 Microsoft.Office.Interop.Word.Selection currentSelection = Globals.ThisAddIn.Application.Selection; string xmlString = currentSelection.XML; 

为了插入它,我使用了:

 string xmlString = ...; // Read the string for the database. Microsoft.Office.Interop.Word.Selection currentSelection = Globals.ThisAddIn.Application.Selection; currentSelection.InsertXML(xmlString); 

看看这个例子 。 在这个示例中,他们通过迭代行和单元格并将DataTable转换为string,将Excel工作表转换为DataTable