Tag: closedxml

我可以通过ClosedXML将EXCEL工作表保存为CSV吗?

是否可以通过ClosedXML将工作簿的工作表保存为CSV? 例如: var workbook = new XLWorkbook(fileName); IXLWorksheet worksheet; workbook.Worksheets.TryGetWorksheet(sheetName, out worksheet); worksheet. /How to Save it as CSV?

使用closedXML C#库,试图保存时如何找出导致此错误的数据

我有一个C#应用程序,使用ClosedXML导出到Excel。 它工作正常,但遇到了一个问题,当我打到: var ms = new MemoryStream(); workbook.SaveAs(ms); 我得到一个例外: ' ', hexadecimal value 0x0B, is an invalid character 它绝对的数据相关,因为它看起来很好,但其他数据导致这个问题。 我怎样才能找出哪个字符造成的问题? 另外,一旦我明白了,find这个angular色在我的数据中的最佳方式是什么?

保持excel单元格格式为“date like”数据的文本

这看起来很愚蠢,但是我还没有能够以#/####的格式获取我的值作为文字string,而不是格式化为Excel中的date。 我正在使用ClosedXML写入Excel,并使用以下内容: // snip IXLRangeRow tableRow = tableRowRange.Row(1); tableRow.Cell(1).DataType = XLCellValues.Text; tableRow.Cell(1).Value = "2/1997"; // snip 看看输出excel表格我在单元格获得2/1/1997年2 2/1/1997 – 即使我设置格式为代码中的文本,我把它作为Excel表单中的“date” – 我检查了这个权利单击单元格,格式化单元格,将“date”作为格式。 如果我改变了: // snip IXLRangeRow tableRow = tableRowRange.Row(1); tableRow.Cell(1).Value = "2/1997"; tableRow.Cell(1).DataType = XLCellValues.Text; // snip 我反而得到35462作为我的输出。 我只想要我的文字值2/1997被显示在工作表上。 请告知如何更正。

如何使用ClosedXml将公式单元格中的文本换行

问题是单元格内容没有被包装,当单元格包含一个公式引用具有一些长string的单元格。 在CodePlex上,我在这个问题上发现了一个线程,并且看到了一个简单的代码: var generated = new XLWorkbook(); var workSheet = generated.AddWorksheet("Test"); workSheet.Cell("B1").Style.Alignment.WrapText = true; workSheet.Cell("B1").Value = "hello hello hello hello hello"; workSheet.Cell("A3").FormulaA1 = "B1"; workSheet.Cell("A3").Style.Alignment.WrapText = true; generated.SaveAs("Generated.xlsx"); 我也尝试手动设置行高而不是包装单元格: workSheet.Row(3).Height = workSheet.Row(1).Height; 但是也没有成功。 有什么我可以做的呢? 在Peter Albert的评论之后,我尝试着设置行的AutoFit 。 我设法在ClosedXML中做的唯一的事情是workSheet.Row(3).AdjustToContent(); 。 但是这也不起作用(既不调整某些列的内容)。

用ClosedXML附加到excel文件

我需要追加新的数据到使用ClosedXML创build的现有的Excel文件。 我如何追加到使用ClosedXML的Excel文件? 我怎样才能得到最后一个logging的行号,并附加到或有其他的东西? 谢谢!

如何将一些VBA代码embedded到使用ClosedXML创build的电子表格中?

我正在使用ClosedXML从C#(asp.net-mvc)生成电子表格,它工作的很好。 我还有一个额外的要求,所以我想获得一些关于如何实现这一目标的反馈。 我想保存为一个macros启用工作簿,当我只是给它一个“xlsm”扩展它似乎并没有打开(与xlsx)。 这是我的代码: public ActionResult ExportExcel() { MemoryStream stream = nModel.GenerateSS(); return File(stream, @"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml", "MySS.xlsx"); } 但如果我尝试这样做: public ActionResult ExportExcel() { MemoryStream stream = nModel.GenerateSS(); return File(stream, @"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml", "MySS.xlsm"); } Excel试图打开时抱怨。 然后,假设我可以做#1,我需要能够采取一些VBA(假设只是一个硬编码函数),并插入到模块或工作簿,所以当有人打开电子表格,并点击macros,他们可以运行macros。 从谷歌search,这似乎并不支持ClosedXML,所以我很好奇,如果有人有任何其他方式来实现这一目标?

如何在closedXml c#中禁用自动filter?

我在closedXML库中遇到了一个奇怪的问题。 我正在使用closedXML库将数据表导出到.xlsx(excel文件)。 默认情况下,库中启用了自动筛选器。 我想禁用或删除自动filter,只导出数据表。 这是我尝试的代码,但它不工作 XLWorkbook wb = new XLWorkbook(); var ws = wb.Worksheets.Add("Test"); ws.Cell(1, 1).InsertTable(dataTable); ws.AutoFilter.Enabled = false; ws.Columns().AdjustToContents(); wb.SaveAs("Report.xlsx"); 我也试过了 ws.AutoFilter.Clear(); 即使明智的明确filter不工作 ws.AutoFilter.Column(1).Clear();

ClosedXML – 创build多个数据透视表

我试图将一些数据导出到Excel数据表S1其数据在接下来的两张表S2 and S3显示为透视图。 我能够创build一个枢轴,它的工作原理是完美的。 但是,当我创build两个枢轴,随之而来的Excel文件呈现为损坏。 我的意思是腐败, 点击是,我得到这个 – 这里是我用来创build枢纽的代码 – using XL = ClosedXML.Excel; … XL.XLWorkbook wb = new XL.XLWorkbook(); dsData = Session["ExportData"] as DataSet; var sheet1 = wb.Worksheets.Add("output table"); sheet1.Cell(1, 1).InsertTable(dsData.Tables[0], "output table", true); // sheet1 is the reference sheet S1 var dataRange = sheet1.RangeUsed(); // First Pivot XL.IXLWorksheet ptSheet1 = wb.Worksheets.Add("S2"); var pt1 […]