C# NPOI导出excel绑定列的下拉数据源
C# 全选
using System;
using System.IO;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
class Program
{
    static void Main(string[] args)
    {
        // 创建一个新的工作簿
        IWorkbook workbook = new XSSFWorkbook();
        ISheet sheet = workbook.CreateSheet("Sheet1");
        // 准备下拉数据源
        string[] data = new string[] { "Option 1", "Option 2", "Option 3" };
        // 将数据源添加到工作簿中的一个隐藏工作表
        ISheet hiddenSheet = workbook.CreateSheet("HiddenSheet");
        for (int i = 0; i < data.Length; i++)
        {
            IRow row = hiddenSheet.CreateRow(i);
            ICell cell = row.CreateCell(0);
            cell.SetCellValue(data[i]);
        }
        // 创建一个下拉列表约束
        IName namedCell = workbook.CreateName();
        namedCell.NameName = "DropDownOptions";
        namedCell.RefersToFormula = $"HiddenSheet!$A$1:$A${data.Length}";
        // 将下拉列表约束应用到目标列
        var validation = new XSSFDataValidationHelper((XSSFSheet)sheet);
        var dvConstraint = (XSSFDataValidationConstraint)validation.CreateFormulaListConstraint("DropDownOptions");
        var cellRangeAddressList = new CellRangeAddressList(0, 65535, 0, 0);
        var dataValidation = (XSSFDataValidation)validation.CreateValidation(dvConstraint, cellRangeAddressList);
        dataValidation.ShowErrorBox = true;
        dataValidation.ErrorTitle = "Invalid Selection";
        dataValidation.ErrorStyle = ExcelDataValidation.ErrorStyle.Stop;
        dataValidation.CreateErrorBox("Invalid Selection", "Please select a valid option from the dropdown list.");
        sheet.AddValidationData(dataValidation);
        // 保存 Excel 文件
        using (FileStream file = new FileStream("output.xlsx", FileMode.Create))
        {
            workbook.Write(file);
        }
        Console.WriteLine("Excel exported successfully.");
    }
}在这个示例中,我们创建了一个隐藏的工作表,用于存储下拉列表的数据源。然后,我们创建了一个下拉列表约束,并将其应用到目标列。最后,我们将工作簿保存为 Excel 文件。
这样,你就可以使用 NPOI 库在 C# 中导出 Excel 并绑定列的下拉数据源了。
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
post 张国生  
 
 

