翻譯|使用教程|編輯:吉煒煒|2025-05-06 13:50:28.470|閱讀 133 次
概述:通過編程方式管理和操作 Excel 文件已成為開發者的必備技能。Spire.XLS for .NET 正是這樣一款多功能且強大的庫,它能讓您使用 C# 無縫地創建、讀取、寫入和編輯 Excel 文件。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
在當今數字化時代,通過編程方式管理和操作 Excel 文件已成為開發者的必備技能。無論您是在構建報表工具、自動化數據處理,還是通過動態數據處理增強應用程序功能,擁有一個強大的庫可以帶來顯著不同。Spire.XLS for .NET 正是這樣一款多功能且強大的庫,它能讓您使用 C# 無縫地創建、讀取、寫入和編輯 Excel 文件。
本文將從以下幾個方面展示如何利用 C# 和 Spire.XLS for .NET 輕松編輯 Excel 文檔。
首先,您需要添加 Spire.XLS for .NET 包中包含的 DLL 文件作為 .NET 項目中的引用。DLL 文件可以從 此鏈接下載或通過 安裝。
PM> Install-Package Spire.XLS
在使用C#操作Excel文件時,最常見的任務之一就是讀取和寫入數據。Spire.XLS for .NET 提供了 CellRange.Value 屬性,使開發者能夠輕松獲取或設置單個單元格的值。
以下是使用 C# 讀寫 Excel 文件的步驟:
using Spire.Xls; namespace ReadAndWriteExcel { class Program { static void Main(string[] args) { // 創建一個 Workbook 對象 Workbook workbook = new Workbook(); // 加載一個 Excel 文件 workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx"); // 獲取一個特定的工作表 Worksheet worksheet = workbook.Worksheets[0]; // 獲取一個特定的單元格 CellRange cell = worksheet.Range["A1"]; // 讀取單元格的值 String text = cell.Value; // 判斷單元格的值是否為 "區域" if (text == "區域") { // 更新單元格的值 cell.Value = "地區"; } // 將工作簿保存到不同的文件 workbook.SaveToFile("讀寫Excel.xlsx", ExcelVersion.Version2016); // 釋放資源 workbook.Dispose(); } } }
樣式和格式設置是制作專業 Excel 報表的重要環節。Spire.XLS for .NET 在 CellRange 類中提供了豐富的 API,可用于管理單元格樣式、字體、顏色、對齊方式,以及調整行高和列寬。
以下是設置 Excel 單元格樣式與格式的步驟:
using Spire.Xls; using System.Drawing; namespace FormatCells { class Program { static void Main(string[] args) { // 創建一個 Workbook 對象 Workbook workbook = new Workbook(); // 加載一個 Excel 文件 workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx"); // 獲取一個特定的工作表 Worksheet worksheet = workbook.Worksheets[0]; // 獲取工作表中的所有已分配范圍 CellRange allocatedRange = worksheet.AllocatedRange; // 遍歷行 for (int rowNum = 0; rowNum < allocatedRange.RowCount; rowNum++) { if(rowNum == 0) { // 為標題行應用單元格顏色 allocatedRange.Rows[rowNum].Style.Color = Color.Black; // 更改標題行的字體顏色 allocatedRange.Rows[rowNum].Style.Font.Color = Color.White; } // 為其他行應用交替顏色 else if (rowNum % 2 == 1) { allocatedRange.Rows[rowNum].Style.Color = Color.LightGray; } else if (rowNum % 2 == 0) { allocatedRange.Rows[rowNum].Style.Color = Color.White; } // 將文本居中對齊 allocatedRange.Rows[rowNum].HorizontalAlignment = HorizontalAlignType.Center; allocatedRange.Rows[rowNum].VerticalAlignment = VerticalAlignType.Center; // 設置行高 allocatedRange.Rows[rowNum].RowHeight = 18; } // 遍歷列 for (int columnNum = 0; columnNum < allocatedRange.ColumnCount; columnNum++) { // 設置列寬 if (columnNum > 0) { allocatedRange.Columns[columnNum].ColumnWidth = 12; } } // 將工作簿保存到不同的文件 workbook.SaveToFile("應用格式.xlsx", ExcelVersion.Version2016); // 釋放資源 workbook.Dispose(); } } }
Excel 的查找替換功能既能提升數據準確性和一致性,又能顯著提高工作效率。借助 Spire.XLS for .NET,您可以通過 Worksheet.FindString() 方法快速定位包含特定字符串的單元格,再使用 CellRange.Value 屬性更新單元格內容。
使用 C# 實現 Excel 文本查找替換的步驟如下:
using Spire.Xls; namespace FindAndReplaceText { class Program { static void Main(string[] args) { // 創建一個 Workbook 對象 Workbook workbook = new Workbook(); // 加載一個 Excel 文件 workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx"); // 獲取一個特定的工作表 Worksheet worksheet = workbook.Worksheets[0]; // 定義一個字符串數組用于替換 String[] new_strings = new String[] { "西部廠區", "東北廠區", "北部廠區", "南部廠區", "中部廠區" }; // 定義一個字符串數組,在 Excel 表中將被替換 String[] old_strings = new String[] { "西部", "東部", "北部", "南部", "中部" }; // 遍歷舊字符串 for (int i = 0; i < old_strings.Length; i++) { // 查找包含當前舊字符串的單元格 CellRange cell = worksheet.FindString(old_strings[i], false, false); // 用新字符串替換找到的單元格中的文本 cell.Text = new_strings[i]; } // 將工作簿保存到不同的文件 workbook.SaveToFile("替換文本.xlsx", ExcelVersion.Version2016); // 釋放資源 workbook.Dispose(); } } }
除了基本的文件操作外,Spire.XLS for .NET 還提供了多種高級功能來處理 Excel 文件。這些技術可用于自動化復雜任務、執行計算以及生成動態報表。
以下是使用 C# 在 Excel 中添加公式和創建圖表的步驟:
using Spire.Xls; namespace AddFormulaAndChart { class Program { static void Main(string[] args) { // 創建一個 Workbook 對象 Workbook workbook = new Workbook(); // 加載一個 Excel 文件 workbook.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.xlsx"); // 獲取一個特定的工作表 Worksheet worksheet = workbook.Worksheets[0]; // 獲取所有已分配范圍 CellRange allocatedRange = worksheet.AllocatedRange; // 遍歷行 for (int rowNum = 0; rowNum < allocatedRange.RowCount; rowNum++) { if (rowNum == 0) { // 在單元格 F1 中寫入文本 worksheet.Range[rowNum + 1, 6].Text = "年度"; // 為單元格應用樣式 worksheet.Range[rowNum + 1, 6].Style.Font.IsBold = true; worksheet.Range[rowNum + 1, 6].Style.Font.FontName = "宋體"; worksheet.Range[rowNum + 1, 6].Style.Font.Size = 12; worksheet.Range[rowNum + 1, 6].Style.HorizontalAlignment = HorizontalAlignType.Center; } else { // 為單元格 F2 到 F6 添加公式 worksheet.Range[rowNum + 1, 6].Formula = $"=SUM(B{rowNum + 1}:E{rowNum + 1})"; // 為單元格應用樣式 worksheet.Range[rowNum + 1, 6].Style.Font.FontName = "Times New Roman"; worksheet.Range[rowNum + 1, 6].Style.Font.Size = 12; worksheet.Range[rowNum + 1, 6].Style.HorizontalAlignment = HorizontalAlignType.Center; } } // 添加一個聚類柱狀圖 Chart chart = worksheet.Charts.Add(ExcelChartType.ColumnClustered); // 設置圖表的數據范圍 chart.DataRange = worksheet.Range["A1:E6"]; chart.SeriesDataFromRange = false; // 設置圖表的位置 chart.LeftColumn = 1; chart.TopRow = 7; chart.RightColumn = 7; chart.BottomRow = 18; // 設置和格式化圖表標題 chart.ChartTitle = "區域季度生產量"; chart.ChartTitleArea.Size = 13; chart.ChartTitleArea.IsBold = true; // 將工作簿保存到不同的文件 workbook.SaveToFile("添加公式和圖表.xlsx", ExcelVersion.Version2016); // 釋放資源 workbook.Dispose(); } } }
————————————————————————————————————————
關于慧都科技:
慧都科技是一家行業數字化解決方案公司,長期專注于軟件、油氣與制造行業。公司基于深入的業務理解與管理洞察,以系統化的業務建模驅動技術落地,幫助企業實現智能化運營與長期競爭優勢。在軟件工程領域,我們提供開發控件、研發管理、代碼開發、部署運維等軟件開發全鏈路所需的產品,提供正版授權采購、技術選型、個性化維保等服務,幫助客戶實現技術合規、降本增效與風險可控。慧都科技E-iceblue的官方授權代理商,提供E-iceblue系列產品免費試用,咨詢,正版銷售等于一體的專業化服務。E-iceblue是國產文檔處理領域的優秀產品,支持國產化,幫助企業高效構建文檔處理的應用程序。
歡迎下載|體驗更多E-iceblue產品
獲取更多信息請咨詢 ;技術交流Q群(125237868)
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網