Tag: epplus

EPPlus和数据比较

我正在运行一个带有EPPlus库的C#项目,我需要它检查各个列/行中数据的单元格,然后查找“关键字”以便将其与其他各种列/行中的数据匹配。 我需要知道一个方法来比较单元格中的数据和另一个单元格的数据并find一个匹配。 用户通过guiselect一个excel工作簿和表单,然后运行这个 循环检查单元格数据。 Variables.rowCount = Variables.worksheet.Dimension.End.Row; for (i = 1; i <= Variables.rowCount; i++) { Variables.cellValue = Variables.worksheet.Cells[i, 1].Text; Variables.cellValue1 = Variables.worksheet1.Cells[i, 1].Text; //… 从本质上讲,我需要它做什么,当你select一个filter,并select包含“单词”Excel做的。 我希望我已经正确地解释了这一点。

Epplus:如何在string连接公式中显示double quaotes

我想在col 1中显示如下内容: Unique Identifier Display_Reg Year Month Region LO Count 2016_Apr_ENY ENY 2016 Apr Albany 10 2016_Mar_ENY ENY 2016 Mar Albany 11 我在col 1的Cells中获取值为: worksheet_LO.Cells[Rowcount, 1].Formula = "=CONCATENATE(C" + Rowcount + "," +"D" + Rowcount + "," + "B" + Rowcount + ")"; worksheet_LO.Cells[Rowcount, 1].Calculate(); 上面给了我2016AprEny结果。 如何显示其中的下划线。

EPPlus条件格式化整个列的string长度

我正在使用EPPlus生成具有validation和条件格式的Excel文档。 我想检查单元格中文本的长度,如果大于指定的长度,用一个颜色填充它。 我希望这是为整个专栏做的。 var address = new ExcelAddress("$A:$A"); var condition = workSheet.ConditionalFormatting.AddExpression(address); condition.Formula = "=IF(LEN(A1)>25, TRUE, FALSE)"; condition.Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; condition.Style.Fill.BackgroundColor.Color = Color.Green; 当我打开生成的Excel电子表格时,它显示一个错误,要求恢复数据。

在C#中解释Excel文件

我最近进行了一个小项目,我必须过滤Excel文件的表格内容。 我打算在这个项目中使用C#和EPPLUS,并将input的Excel表转换为一个Datatable来处理所有的数据查询。 但是,我从客户端获得的Excel文件是可疑的格式,其中表格遍布表格中的填充描述和空格之间的空白处。 每个Excel文件似乎都有自己的数据排列方式,下面是我迄今为止看到的一个例子: 我只做了一些将Excel表格转换为C#的实验,但是从目前为止我所看到的系统基本上是从单元格A1开始逐行迭代数据。 有没有办法在这个迭代过程中检测表,并将它们从标题/说明/空行分开? 我想简单地检查表格边框以确定是否有表格,但是对于schemeD,一些Excel文件甚至没有设置表格边界。 我打算告诉客户这个,所以我们可以就Excel文件的标准格式达成一致,但这是我的第一个解释Excel文件的工作,所以我也有一个小的元问题:这样做是正确的吗? 我假设这些不同的Excel格式可能是由于业务select(即来自不同部门),所以对于那些过去遇到这种问题的人来说,说服客户改变他们现在的方法还是应该跟他们目前的合作?

EPPlus的数据透视表与错误的列字段顺序

我创build了一个数据透视表,它应该包含YEAR,MONTH和DAY这几列。 以下是列的代码: //Column Year pvt.ColumnFields.Add(pvt.Fields[sheet.Cells[2, 2].Value.ToString()]); //Column Month pvt.ColumnFields.Add(pvt.Fields[sheet.Cells[2, 3].Value.ToString()]); //Column Day pvt.ColumnFields.Add(pvt.Fields[sheet.Cells[2, 4].Value.ToString()]); //Sort by the last column = day because if first row from data table is for example 10 all the other months start 10 in the columns fields and then after the 30/31 the library adds 1 to 9. pvt.ColumnFields[pvt.ColumnFields.Count – […]

具有现有背景颜色的单元格中的SetColor问题

背景 我们的业务团队最近将用于从Web应用程序导出数据的空白Excel文件的背景颜色从“无填充”更改为灰色(RGB:217,217,217)颜色。 我们的目标是让所有数据不是写入数据的单元格都是灰色的,而不是白色/不填充。 奇怪的是,这种改变作为导出过程的一部分分配给各个单元的颜色不再反映分配的实际颜色。 导出过程使用EPPLUS 4.1.0(与版本4.0.5,4.0.4相同的结果)和以下代码来设置单元格颜色: worksheet.Cells["A1:H10"].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheet.Cells["A1:H10"].Style.Fill.BackgroundColor.SetColor( System.Drawing.ColorTranslator.FromHtml("#DDEBF7")); 题 当我将灰色背景上的HTML颜色设置为#DDEBF7(RGB:221,235,247)时,得到的颜色是#A4CAEA(RGB:164,202,234)。 在没有填充背景的情况下,颜色被正确地改变(到RGB:221,235,247)。 为什么会发生? 这灰色的背景是不知何故地修改了“setcolor”的结果,这似乎确实如此,我该如何避免/避免这种行为? 其他说明 作为导出过程的一部分,我们可以将单元格块设置为灰色背景颜色,但这会对导出的性能产生负面影响。 我们可以在源文件中保留NO FILL背景,但是我们希望允许业务团队控制外观和感觉。 码 下面是重现该问题所需的代码(假定您的网站目录中有一个名为EPPlusColorTest.xlsx的Excel文件,并带有两个名为“NoFillSheet”和“GraySheet”的空白表格,GraySheet工作表的背景颜色应设置为RGB :217,217,217。 EPPLUS_ColorTest.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="EPPLUS_ColorTest.aspx.cs" Inherits="EPPLUS_ColorTest" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <p>Testing color issues with XLSX Files verses XLSM Files</p> <p>Input the […]

如何将数据透视表右键合并到表单上的源数据(使用EPPlus)?

我已经能够创build一个与原始/源数据分开的数据透视表,但是现在我想将两者结合起来,通过在列标题行上提供filter来允许过滤电子表格数据,如下所示: 我试过这个代码: private void AddPivotTable() { // The commented-out code below placess the PivotTable below the actual data, separate from it: //string colAlphaRowNum = string.Format("A{0}", locationWorksheet.Dimension.End.Row+5); // Here I am attempting to incorporate the PivotTable within the data itself (one row above it, actually) string colAlphaRowNum = "A5"; ExcelAddressBase eab = locationWorksheet.Cells[colAlphaRowNum]; ExcelRangeBase erb = […]

数据绑定返回空值

所以我试图读取一个Excel文件,并将数据插入到类属性。 我认为这是一个问题,当我instanitae类,但是我做这件事之前,我parsing并添加到类的值。 一旦parsing完成 – 我调用绑定的类,但它返回空值。 电话 TestData td = new TestData(); XLReader.GetClassFromExcel<TestData>(1,1,1); var ddddd = td.Title; //this is null. class上 public class TestData { public string Title { get; set; } public string Site { get; set; } public string StartDate { get; set; } public string EndDate { get; set; } public string Email […]

如何将图像添加到我的工作表而不提示replace(空)目标单元格(EPPlus)的内容?

当我打开使用EPPlus(C#)生成的Excel文件时,我得到“ 您是否想要replace[… .xlsx]数据透视表中的目标单元格的内容? 正如您在下面的屏幕截图中看到的,单元格中没有任何内容需要图像显示。 即使当我将图像推到数据透视表的外边缘时,我也会收到这个消息(我一直放在C / 3列的下面)。 当我在上面引用的对话框中select“是”时,图像最终放置在工作表上(如果select“否”,则不添加),工作表如下所示: 这是我用来添加图像的代码: int imageCol = _grandTotalsColumnPivotTable + 1; // -1; <= I really want it to be this AddImage(pivotTableWorksheet, 1, imageCol); . . . private void AddImage(ExcelWorksheet oSheet, int rowIndex, int colIndex) { var excelImage = oSheet.Drawings.AddPicture("PRO*ACT Logo", _logo); excelImage.From.Column = colIndex – 1; excelImage.From.Row = rowIndex – […]

EPPlus在列上设置默认sorting

我将如何设置使用EPPLUS列的默认sorting? 我找不到任何“sorting”列。 什么是最好的行动方式,我不能从数据库中sorting,我需要让他们在'excel'中sorting。