最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用C#自動化生成Excel單元格數(shù)據(jù)驗證

 更新時間:2025年09月28日 08:45:20   作者:Eiceblue  
在日常報表開發(fā)中,Excel 的數(shù)據(jù)準確性和可控性與格式美觀同樣重要,本文將演示如何在 同一個工作表中 設置 下拉列表、數(shù)值范圍、日期區(qū)間、文本長度、自定義公式和輸入提示,有需要的小伙伴可以了解下

在日常報表開發(fā)中,Excel 的數(shù)據(jù)準確性和可控性與格式美觀同樣重要。通過合理設置數(shù)據(jù)驗證,可以防止輸入錯誤、約束填報規(guī)則,從而提升數(shù)據(jù)的可靠性和規(guī)范性。

相比手動設置驗證規(guī)則,使用 C# 程序自動化生成 Excel 數(shù)據(jù)驗證 不僅能提高效率,還能保證規(guī)則統(tǒng)一。本文演示如何在 同一個工作表中 設置 下拉列表、數(shù)值范圍、日期區(qū)間、文本長度、自定義公式和輸入提示,并結合實際業(yè)務場景幫助你理解數(shù)據(jù)驗證的作用。

本文使用的方法基于 Free Spire.XLS for .NET。安裝方式(NuGet)如下:

1. 初始化工作簿和工作表

using Spire.Xls;

Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "員工信息錄入";

操作說明

這里新建了一個 Excel 文件并獲取第一個工作表,命名為“員工信息錄入”。所有驗證規(guī)則都會集中展示在這個表中,保證操作有條理。

2. 下拉列表驗證(部門選擇)

在實際業(yè)務中,員工部門字段通常是固定的幾個選項,例如“人事部”“財務部”“技術部”“市場部”。通過下拉列表驗證,可以避免用戶隨意輸入錯誤部門名稱。

// 部門列表
sheet.Range["A1"].Text = "可選部門:";
sheet.Range["A2"].Text = "人事部";
sheet.Range["A3"].Text = "財務部";
sheet.Range["A4"].Text = "技術部";
sheet.Range["A5"].Text = "市場部";

// 員工錄入?yún)^(qū)
sheet.Range["C1"].Text = "所屬部門:";
CellRange deptCell = sheet.Range["C2"];

deptCell.DataValidation.AllowType = CellDataType.Formula;
// 設置下拉列表數(shù)據(jù)源
deptCell.DataValidation.DataRange = sheet.Range["A2:A5"];
// 也可直接設置列表內容
//deptCell.DataValidation.Values = ["人事部", "財務部", "技術部", "市場部"];
deptCell.DataValidation.ShowError = true;
deptCell.DataValidation.AlertStyle = AlertStyleType.Stop;
deptCell.DataValidation.ErrorTitle = "輸入錯誤";
deptCell.DataValidation.ErrorMessage = "請從下拉列表中選擇部門!";

// 輸入提示
deptCell.DataValidation.ShowInput = true;
deptCell.DataValidation.InputTitle = "選擇部門";
deptCell.DataValidation.InputMessage = "請從固定部門列表中選擇。";

使用場景:避免部門名稱不統(tǒng)一(如“技術”“技術部”混用)。

保存文件后效果:

3. 數(shù)值驗證(員工年齡)

員工年齡一般處于一定范圍內,比如 18 到 60 歲。我們可以通過數(shù)值驗證來限制輸入。

sheet.Range["D1"].Text = "員工年齡 (18-60):";
CellRange ageCell = sheet.Range["D2"];

ageCell.DataValidation.AllowType = CellDataType.Integer;
ageCell.DataValidation.CompareOperator = ValidationComparisonOperator.Between;
ageCell.DataValidation.Formula1 = "18";
ageCell.DataValidation.Formula2 = "60";
ageCell.DataValidation.ShowError = true;
ageCell.DataValidation.ErrorMessage = "請輸入 18 到 60 之間的整數(shù)!";

使用場景:保證錄入的年齡數(shù)據(jù)合理,不會出現(xiàn)“5 歲員工”或“100 歲員工”的異常數(shù)據(jù)。

保存文件后效果:

4. 日期驗證(入職日期)

企業(yè)通常要求員工入職日期在某一合理區(qū)間內。例如,錄入表只允許選擇 2023 年內的入職日期。

sheet.Range["E1"].Text = "入職日期 (2023年):";
CellRange hireDateCell = sheet.Range["E2"];

hireDateCell.DataValidation.AllowType = CellDataType.Date;
hireDateCell.DataValidation.CompareOperator = ValidationComparisonOperator.Between;
hireDateCell.DataValidation.Formula1 = "2023-01-01";
hireDateCell.DataValidation.Formula2 = "2023-12-31";
hireDateCell.DataValidation.ShowError = true;
hireDateCell.DataValidation.ErrorMessage = "請輸入 2023 年的有效日期!";

使用場景:確保錄入的入職時間不會超出考勤和人事系統(tǒng)設定范圍。

保存文件后效果:

5. 文本長度驗證(工號)

工號通常有固定的位數(shù),例如必須是 6 位字符。通過文本長度驗證可以保證工號錄入規(guī)范。

sheet.Range["F1"].Text = "工號 (6位):";
CellRange idCell = sheet.Range["F2"];

idCell.DataValidation.AllowType = CellDataType.TextLength;
idCell.DataValidation.CompareOperator = ValidationComparisonOperator.Equal;
idCell.DataValidation.Formula1 = "6";
idCell.DataValidation.ShowError = true;
idCell.DataValidation.ErrorMessage = "工號必須為 6 位字符!";

使用場景:避免工號錄入長度不一導致系統(tǒng)識別異常。

保存文件后效果:

6. 自定義公式驗證(工資 > 基本工資)

在工資表中,往往需要確保“實發(fā)工資”大于“基本工資”。我們可以使用自定義公式來實現(xiàn)這種邏輯。

sheet.Range["G1"].Text = "基本工資:";
sheet.Range["G2"].NumberValue = 4000;
sheet.Range["H1"].Text = "實發(fā)工資:";
CellRange salaryCell = sheet.Range["H2"];

salaryCell.DataValidation.AllowType = CellDataType.Formula;
salaryCell.DataValidation.Formula1 = "=H2>G2";
salaryCell.DataValidation.ShowError = true;
salaryCell.DataValidation.ErrorMessage = "實發(fā)工資必須大于基本工資!";

使用場景:避免出現(xiàn)“實發(fā)工資比基本工資還低”的錯誤數(shù)據(jù)。

保存文件后效果:

7. 保存文件

完成所有驗證規(guī)則設置后,將結果保存為 Excel 文件:

// 自動對齊并保存
sheet.Range.Style.Font.FontName = "微軟雅黑";
sheet.Range.Style.Font.Size = 12f;
sheet.Range.AutoFitColumns();
workbook.SaveToFile("DataValidation.xlsx", ExcelVersion.Version2016);

關鍵類與屬性總結

類 / 屬性說明
Workbook表示 Excel 工作簿,用于創(chuàng)建和保存文件
Worksheet表示 Excel 工作表,所有操作都基于該對象
CellRange表示單元格或單元格區(qū)域
DataValidation用于設置單元格數(shù)據(jù)驗證規(guī)則
AllowType指定驗證類型(整數(shù)、日期、文本長度、自定義公式等)
CompareOperator指定比較運算符(Between、Equal 等)
Formula1 / Formula2用于設置驗證條件的參數(shù)值
ShowError是否顯示錯誤提示
ErrorMessage錯誤提示信息
ShowInput是否顯示輸入提示
InputMessage輸入提示信息

總結

本文通過 Spire.XLS for .NET 演示了如何在一張 Excel 工作表中設置多種類型的數(shù)據(jù)驗證,包括下拉列表、數(shù)值范圍、日期區(qū)間、文本長度、自定義公式以及輸入提示。通過這些驗證規(guī)則,可以有效減少錯誤輸入,統(tǒng)一數(shù)據(jù)標準,提升報表質量。如果你正在開發(fā)人事、財務或其他需要批量數(shù)據(jù)錄入的系統(tǒng),使用 C# 自動化設置 Excel 數(shù)據(jù)驗證會大大提高效率和準確性。

以上就是使用C#自動化生成Excel單元格數(shù)據(jù)驗證的詳細內容,更多關于C# Excel單元格數(shù)據(jù)驗證的資料請關注腳本之家其它相關文章!

相關文章

  • C# TextBox數(shù)據(jù)綁定的方法

    C# TextBox數(shù)據(jù)綁定的方法

    這篇文章主要為大家詳細介紹了C# TextBox數(shù)據(jù)綁定的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • c#基數(shù)排序Radix sort的實現(xiàn)方法

    c#基數(shù)排序Radix sort的實現(xiàn)方法

    這篇文章主要介紹了c#基數(shù)排序Radix sort的實現(xiàn)方法,有需要的朋友可以參考一下
    2014-01-01
  • C#生成帶二維碼的專屬微信公眾號推廣海報實例代碼

    C#生成帶二維碼的專屬微信公眾號推廣海報實例代碼

    這篇文章主要給大家介紹了關于利用C#如何生成帶二維碼的專屬微信公眾號推廣海報的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們一起來看看吧
    2018-12-12
  • 詳細聊聊C#的并發(fā)機制優(yōu)秀在哪

    詳細聊聊C#的并發(fā)機制優(yōu)秀在哪

    并發(fā)其實是一個很泛的概念,字面意思就是"同時做多件事",不過方式有所不同,下面這篇文章主要給大家介紹了關于C#并發(fā)機制的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-02-02
  • C#使用Spire.XLS高效生成Excel圖表實現(xiàn)數(shù)據(jù)可視化

    C#使用Spire.XLS高效生成Excel圖表實現(xiàn)數(shù)據(jù)可視化

    在當今數(shù)據(jù)驅動的時代,無論是業(yè)務分析師、數(shù)據(jù)科學家還是軟件開發(fā)者,都離不開對數(shù)據(jù)的解讀與可視化,本文將深入探討如何利用C#和一款強大的第三方庫,實現(xiàn)Excel圖表的自動化生成,感興趣的小伙伴可以了解下
    2025-12-12
  • C#中DateTime的時間加減法操作小結

    C#中DateTime的時間加減法操作小結

    本文主要介紹了C#中DateTime的時間加減法操作小結,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • C#實現(xiàn)徹底刪除文件的方法

    C#實現(xiàn)徹底刪除文件的方法

    這篇文章主要介紹了C#實現(xiàn)徹底刪除文件的方法,可實現(xiàn)類似360粉碎文件的效果,是非常實用的技巧,需要的朋友可以參考下
    2014-11-11
  • 基于WPF實現(xiàn)篩選下拉多選控件

    基于WPF實現(xiàn)篩選下拉多選控件

    這篇文章主要為大家詳細介紹了如何基于WPF實現(xiàn)簡單的篩選下拉多選控件,文中的示例代碼講解詳細,對我們學習或工作有一定幫助,感興趣的小伙伴可以了解一下
    2023-04-04
  • C#實現(xiàn)Excel文件轉Markdown表格

    C#實現(xiàn)Excel文件轉Markdown表格

    在撰寫技術文檔或整理數(shù)據(jù)時,我們常常需要將 Excel 表格轉為 Markdown 格式,本文將展示如何使用 C# 和 Spire.XLS 庫,通過一行核心方法快速將 Excel 文件保存為 Markdown 文件,感興趣的小伙伴可以了解下
    2026-03-03
  • WPF開發(fā)之UniformGrid和ItemsControl的應用詳解

    WPF開發(fā)之UniformGrid和ItemsControl的應用詳解

    為了簡化開發(fā),WPF提供了UniformGrid布局和ItemsControl容器,本文以一個簡單的小例子,簡述如何在WPF開發(fā)中應用UniformGrid和ItemsControl實現(xiàn)均勻的布局,希望對大家有所幫助
    2024-01-01

最新評論

南丰县| 项城市| 美姑县| 威远县| 哈尔滨市| 获嘉县| 抚远县| 佛山市| 安庆市| 辛集市| 宁德市| 沂南县| 巴塘县| 栖霞市| 浦县| 乾安县| 集贤县| 古丈县| 防城港市| 盐城市| 繁昌县| 孙吴县| 岐山县| 漳浦县| 当雄县| 衡东县| 蚌埠市| 长沙市| 驻马店市| 嘉祥县| 得荣县| 普洱| 龙井市| 和平县| 含山县| 阿拉善盟| 恩平市| 广宁县| 来宾市| 三江| 东阿县|