Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将数据从xml文件粘贴到Excel工作簿_C#_Xml_Excel_Office Interop - Fatal编程技术网

C# 将数据从xml文件粘贴到Excel工作簿

C# 将数据从xml文件粘贴到Excel工作簿,c#,xml,excel,office-interop,C#,Xml,Excel,Office Interop,我有一个xml文件,是通过从Excel工作簿中提取数据创建的 12345 一些文本 xml文件包含我选择的范围的数据。工作表名称以及范围内的所有值和格式(颜色、边框等)。在本例中,只有C列有一个带数字的单元格、一个带字符串的单元格和一个带颜色的单元格,以及一个围绕所有数据的边框。当您用Excel打开文件时,它会准确地显示数据的提取方式 现在我想知道是否有可能以编程方式将其提取为Excel.Range,包含所有值和格式,并将其粘贴到新的Excel工作簿中。最好不要在Excel中打开xml文件

我有一个xml文件,是通过从Excel工作簿中提取数据创建的


12345
一些文本
xml文件包含我选择的范围的数据。工作表名称以及范围内的所有值和格式(颜色、边框等)。在本例中,只有C列有一个带数字的单元格、一个带字符串的单元格和一个带颜色的单元格,以及一个围绕所有数据的边框。当您用Excel打开文件时,它会准确地显示数据的提取方式

现在我想知道是否有可能以编程方式将其提取为Excel.Range,包含所有值和格式,并将其粘贴到新的Excel工作簿中。最好不要在Excel中打开xml文件


提前谢谢。

我不知道你想在这里做什么。你下载文件了吗?我用xml文件的内容编辑了我的第一篇文章,x和y不是后代。此外,x[0]和y[1]给出了一个错误“无法将带[]的索引应用于类型为“System.Collections.Generic.IEnumerable”的表达式”
XDocument doc = XDocument.Load( "XMLFile1.xml" );

var x= doc.Descendants( "x" );
var y= doc.Descendants( "y" );
object[,] z;
Excel.Application ActiveExelAplication = Globals.ThisAddIn.Application as Excel.Application;
Excel.Worksheet ExWorksheet = ActiveExelAplication.ActiveSheet as Excel.Worksheet;
z= ExWorksheet.get_Range("v"+x[0].ToString() , "v" + y[1].ToString() as Excel.Range;
XDocument doc = XDocument.Load( "XMLFile1.xml" );

var x= doc.Descendants( "x" );
var y= doc.Descendants( "y" );
object[,] z;
Excel.Application ActiveExelAplication = Globals.ThisAddIn.Application as Excel.Application;
Excel.Worksheet ExWorksheet = ActiveExelAplication.ActiveSheet as Excel.Worksheet;
z= ExWorksheet.get_Range("v"+x[0].ToString() , "v" + y[1].ToString() as Excel.Range;