EPPlus删除数据验证

问题描述 投票:0回答:2

当我打开一个在某些单元格上有数据验证的现有工作表时,我想删除数据验证,但是在工作表和工作单元格上的数据验证集合显示单元格上没有数据验证

这是因为我删除了一堆对它们进行数据验证的行,所以下面的行向上移动然后采用该数据验证公式,在这种情况下是一个列表

我正在使用Ep Plus在c#中开发

我基本上需要知道如何删除现有数据验证或停止删除行后复制到行的验证数据

作为我工作流程的一部分,我通过c#代码将数据验证列表添加到许多其他单元格中。这些显示在工作表的datavalidation属性中,但是工作表上已经存在的验证没有显示,我无法理解为什么

c# excel epplus
2个回答
1
投票

其中i是表格编号:

worksheet = package.Workbook.Worksheets[i];

其中D17是验证的单元格地址:

var v = worksheet.DataValidations["D17"];

if (v != null)
{
    worksheet.DataValidations.Remove(v);
}

0
投票

您可以通过调用EPPlus中ExcelDataValidationCollection类的Remove或RemoveAll函数来删除数据验证。 RemoveAll函数将lambda作为输入参数,因此您可以指定要删除验证的条件。

myWorksheet.DataValidations.RemoveAll(x => /*conditions goes here*/);
© www.soinside.com 2019 - 2024. All rights reserved.