最常見和廣泛使用的電子表格文件格式是 XLS、XLSX 和 ODS。著名的 Microsoft Excel 和 OpenOffice Calc 支持這些格式,我們通常使用這些格式來維護帳戶和不同的電子表格。因此,作為開發人員,我們廣泛需要以編程方式在我們的應用程序中編輯 Excel 文件。在本文中,我們將討論如何使用 .NET API 在 C# 中編輯 Excel 文件。

以下是本文簡要討論的主題:

用於 Excel 電子表格編輯和自動化的 .NET API

GroupDocs 展示了用於電子表格編輯的 .NET API。我將在本文的 C# 示例中使用它。它是文檔編輯 API,允許開發人員使用 WYSIWYG HTML 編輯器加載、編輯和保存各種文檔格式。除了 XLS、XLSX 和 ODS 電子表格格式外,API 還支持編輯各種其他電子表格和 MS Excel 支持的格式像 CSV、TSV、DSV、XLT、XLTX、XLTM、XLSM、XLSB、XLAM、SXC、SpreadsheetML、FODS、DIF。

下載部分 下載 DLL 或 MSI 安裝程序,或通過 NuGet 在您的 .NET 應用程序中安裝 API /packages/groupdocs.editor)。

PM> Install-Package GroupDocs.Editor

在 C# 中編輯 Excel 文件

希望您已成功引用 API。現在您可以快速開始編輯 Excel 文檔。以下步驟將允許您使用 C# 編輯電子表格文檔。

  • 加載 Excel 文件。
  • 使用選項進行相應編輯。
  • 保存編輯的文檔。

加載 Excel 電子表格

首先,通過提供文檔路徑/流和密碼(如果文檔受密碼保護)來加載電子表格。

// 使用 C# 加載 Excel 文件
Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.Password = "password"; // if any

// 加載電子表格
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });

編輯 Excel 文件

加載後,您可以根據需要編輯加載的電子表格。現在我們要用電子表格第一個選項卡中的“新公司名稱”替換所有出現的“舊公司名稱”。以下步驟允許您在 C# 中相應地編輯 excel 文件。

  • 使用編輯器加載選項 加載 Excel 文件.editor.options/spreadsheetloadoptions)。
  • 準備電子表格編輯選項 以提取確切的工作表/標籤。
  • 提煉 the content of the tab.
  • 修改選項卡的內容。
  • 您可以從所選選項卡中提取圖像和所有資源。
  • 使用修改後的內容創建新的 EditableDocument
  • 使用適當的 Save() 方法保存編輯電子表格。

以下 C# 源代碼編輯 excel 文件並更改其內容。

// 使用 C# 編輯 Excel 電子表格

Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
// loadOptions.Password = "密碼";

// 加載電子表格
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });

// 獲取電子表格的第一個選項卡
SpreadsheetEditOptions sheetTab1EditOptions = new SpreadsheetEditOptions();
sheetTab1EditOptions.WorksheetIndex = 0; // first worksheet

// 從某些 EditableDocument 實例獲取 HTML 標記
EditableDocument firstTab = editor.Edit(sheetTab1EditOptions);
string bodyContent = firstTab.GetBodyContent(); // HTML markup from inside the HTML ->BODY element
string allContent = firstTab.GetContent();      // Full HTML markup of all document, with HTML ->HEAD header and all its content

List<IImageResource> onlyImages = firstTab.Images;
List<IHtmlResource> allResourcesTogether = firstTab.AllResources;

string editedContent = allContent.Replace("Company Name", "New Company Name");
EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResourcesTogether);

使用選項保存編輯後的 Excel 文件

編輯完成後,在保存編輯後的電子表格內容的同時,可以設置各種選項。這些選項包括;設置密碼、輸出格式、保護等。我在下面提到的代碼中設置了上述選項,並將編輯後的電子表格保存為受密碼保護和寫保護的 XLSX 文件。

// 使用 C# 保存包含更新內容的 Excel 文件
// 創建保存選項
SpreadsheetFormats xlsxFormat = SpreadsheetFormats.Xlsx;
Options.SpreadsheetSaveOptions saveOptions = new SpreadsheetSaveOptions(SpreadsheetFormats.Xlsx);

// 設置新的開戶密碼
saveOptions.Password = "newPassword";
saveOptions.WorksheetProtection = new WorksheetProtection(WorksheetProtectionType.All, "WriteProtectionPassword");

// 創建輸出流
using (FileStream outputStream = File.Create("path/editedSpreadsheet.xlsx"))
{
    editor.Save(afterEdit, outputStream, saveOptions);
}

獲得免費許可證

您可以 獲得免費的臨時許可證 以便在不受評估限制的情況下使用 API。

結論

最後,我們討論瞭如何使用 .NET 應用程序的文檔編輯 API 在 C# 中編輯 Excel 文檔。您可以將 API 與 WYSIWYG 編輯器結合使用,以對文檔進行可視化編輯。之後,您可以繼續構建自己的在線電子表格編輯器。

有關更多詳細信息、選項和示例,您可以訪問 文檔GitHub 存儲庫.如需進一步查詢,請聯繫 論壇 上的支持。

相關文章

也可以看看