Tag: openxml

添加一个自定义命名空间,并通过c#openxml sdk在openxml excel中使用它

有没有一个例子来添加一个自定义名称空间 例如 xmlns:bluh = "http://www.bluhbluh.com" 在Workbook/WorkbookPart/SpreadSheetDocument级别 使用C#OpenXml SDK?

从文件加载Excel文件并更新内存中的单元格值

基于这篇文章:将文本插入电子表格文档中的单元格 我想在内存中加载一个Excel文件,并更新一些单元格值,并将其作为下载附件发送给客户端。 我知道有使用Stream Open方法的重载,但我不知道如何将Excel文件加载到它。 如何从文件加载Excel文件并更新内存中的单元格值?

使用openxml从电子表格中读取公式

我正在使用Openxml库阅读C#中的电子表格,并使用InnerText属性parsingCell对象的值,该属性返回一个String或null 。 当在单元格中存在一个公式时,我会在电子表格中获得文本文本,如下所示: 工作表Sheet1 =!A1Content 即由以前的公式(Sheet1!A1)+结果(内容)的string组成,并且这种情况也会发生,如:= 2 + 24 我怎样才能得到公式的结果?

OpenXML Excel文件损坏,DataValidations

我正在使用WPF应用程序中的OpenXML SDK 2.0创build一个Excel文件。 excel文件有多个工作表,适用于下拉单元格,公式和样式表的数据validation。 它可以很好地创buildSheet1中的大约17,500个和Sheet2中的17,500个Excel行。 但是,当Sheet1和Sheet2的行数达到25,000时,文件就会被破坏,也就是打开文件的时候会出现错误“我们发现file.xlsx中的内容有问题,你想尽可能地恢复?” 如果我恢复文件的数据仍然在那里为所有25000行在这两个表中,但数据validation,即下拉列表不适用于任何单元格。 恢复日志如下,而截图中的修复信息。 error946360_01.xml在文件“D:\ file.xlsx”中检测到错误特性:从/xl/worksheets/sheet.xml数据validationpartRepairedlogging:/xl/worksheets/sheet.xml中的单元信息partRepaired Records:来自/ xl /工作表/ sheet2.xml部分

打开XML读取Excel文件不会进入循环读取Excel表格

我有一个场景,我需要在MVC应用程序中读取Excel文件,我需要这个在服务器上运行,因此我使用Open XML,我有一个问题,我的代码不会进入表中的行循环,请参阅下面的代码,并告诉我如何纠正我的代码。 if (file.ContentLength > 0) { string path = file.FileName; using (SpreadsheetDocument doc = SpreadsheetDocument.Open(path, false)) { WorkbookPart workbookPart = doc.WorkbookPart; WorksheetPart worksheetPart = workbookPart.WorksheetParts.First(); SheetData sheetData = worksheetPart.Worksheet.Elements<SheetData>().First(); foreach (Row r in sheetData.Elements<Row>()) { foreach (Cell c in r.Elements<Cell>()) { string text = c.CellValue.Text; } } } } 任何想法,你的帮助将不胜感激,我一直在尝试多个接近,但我没有得到在foreach循环fr一些奇怪的原因。 我正在使用Excel 2013,请参阅下面的工作簿图像。

获取活动表格Excel

我想从Excel文件使用DocumentFormat.OpenXml只有活动工作表名称,但现在我得到所有工作表名称,我怎样才能从Excel使用DocumentFormat.OpenXml只有活动工作表名称?

该父类只允许有一个types的实例,但绘图部分为空

我有这个代码 ImagePartType ipt = ImagePartType.Jpeg; DrawingsPart drawingsPart1; ImagePart imagePart1; WorksheetDrawing worksheetDrawing1; if (sheet1.DrawingsPart == null) { drawingsPart1 = sheet1.AddNewPart<DrawingsPart>(); imagePart1 = drawingsPart1.AddImagePart(ipt, sheet1.GetIdOfPart(drawingsPart1)); worksheetDrawing1 = new WorksheetDrawing(); } 但在 drawingsPart1 = sheet1.AddNewPart<DrawingsPart>(); 它会抛出一个exception“只允许这个父types的一个实例” 和 sheet1.DrawingsPart为null,所以没有其他的绘图部分。 任何想法如何解决这个问题? 这个确切的代码是在我的第二个项目中工作,具有相同的Excel文件! 谢谢。 using (SpreadsheetDocument document = SpreadsheetDocument.Open(outputDocumentStream, true)) { wbPart = document.WorkbookPart; document.Close(); } sheet1 = GetWorksheetPart(wbPart, "Sheet1") 和 […]

OpenXml – 如何删除scatterChart中的点之间的线

我使用OpenXml在Excel文件中绘制了一个scatterChart。 点join行。 我怎样才能删除线? 我试过这样做: ScatterStyle scatterStyle = new ScatterStyle() { Val = ScatterStyleValues.Marker }; scatterchart.AppendChild<ScatterStyle>(scatterStyle); 但是Excel修复文件并将值从ScatterStyleValues.Marker更改回ScatterStyleValues.LineMarker。 请帮帮我。 谢谢

Microsoft Open XML使用SAX方法逐行读取Excel文件并查找单元格数据

我已经在stockoverflow看了几个post,但我没有find我正在寻找的东西,而我发现这些东西closures似乎并没有为我工作。 使用OpenXmlReader不会读取行,因为它似乎永远不会打开表单数据的行元素types永远找不到。 我需要使用使用OpenXmlPartReader的SAX方法。 我要做的是打开Excel文档并逐行阅读。 对于每一行,我需要通过索引号或id和该单元格中的值来获取几个单元格。 所以我不需要遍历每一个我知道我需要哪个单元的单元。 我想要使​​用SAX方法来避免内存不足,因为我预计需要读取大文件。

如何在Excel中使用Openxml在C#中创buildDropdownlist

有一些从XML文件创build的工作表。 在第二张表中有一些名字.excel是通过读取XML文件创build的,并且借助于OPEN-XML将其更改为数据集和后来创build的工作表以及所有其他行和列。 所以我想创build一个使用第二张表名称的列表,并将第一张表中的列表显示为下拉列表。使用OPEN-XML我想创build一个从第二页获取数据的下拉列表。 我浏览很多时间,但我没有find任何解决scheme是否可以使用openxml创build下拉菜单。 这是我从xml文件创buildexcel的整个代码,所以如果有解决scheme,请帮助我。 public void ExportDSToExcel(DataSet ds, string dest) { try { using (var workbook = SpreadsheetDocument.Create(dest, DocumentFormat.OpenXml.SpreadsheetDocumentType.Workbook)) { var workbookPart = workbook.AddWorkbookPart(); workbook.WorkbookPart.Workbook = new DocumentFormat.OpenXml.Spreadsheet.Workbook(); workbook.WorkbookPart.Workbook.Sheets = new DocumentFormat.OpenXml.Spreadsheet.Sheets(); uint sheetId = 1; foreach (DataTable table in ds.Tables) { var sheetPart = workbook.WorkbookPart.AddNewPart<WorksheetPart>(); var sheetData = new DocumentFormat.OpenXml.Spreadsheet.SheetData(); sheetPart.Worksheet = new […]