如何使用 NPOI 以编程方式评估 Excel 数据验证?

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

我想使用已添加到 .xlsx 模板中的数据验证以编程方式检查单元格值是否有效。有一种方法可以在 Java 中使用 Apache POI

DataValidationEvaluator
类来做到这一点,但我在 .NET 的任何开源库中都找不到类似的功能。

我已经尝试迭代工作表中的验证并验证单元格值,但我不确定是否需要自己实现低级逻辑,或者是否有已经制作的用于验证评估的 API?

foreach (var s in sheets)
{
  ISheet sheet = wb.GetSheet(s.Name);
  var validations = sheet.GetDataValidations();
  foreach (var v in validations)
  {
      var xssfValidation = (XSSFDataValidation)v;
      var xssfValidationConstraint = xssfValidation.ValidationConstraint;
      switch (xssfValidationConstraint.Operator)
          {
          case 0: 
                  // BETWEEN 
                  break;
          case 1: 
                  // EQUAL 
                  break;
          // ...
      }
}
                
excel validation .net-core xlsx npoi
1个回答
0
投票

NPOI.SS.Formula.DataValidationEvaluator
类似乎镜像了Apache POI的
DataValidationEvaluator
类,但截至2023年11月20日,NPOI的版本只有一种方法,
IsType
(其规格与Apache POI的
相同) isType
虽然)。

截至 2023 年 11 月 20 日,似乎没有 C# 或 F# Excel 项目本身支持此功能。来自这个答案

有内置的单元格验证吗?
开放XML SDK *
NPOI *
EPPlus 没有? (参见下文第 3 节)
封闭XML *

*非权威答案(即帖子作者找不到支持证据)

© www.soinside.com 2019 - 2024. All rights reserved.