最も一般的で広く使用されているスプレッドシートファイル形式は、** XLS XLSX 、およびODSです。有名なMicrosoftExcelとOpenOfficeCalcはこれらの形式をサポートしており、通常、アカウントとさまざまなスプレッドシートを維持するためにこれらの形式を使用します。したがって、開発者として、アプリケーション内のExcelファイルをプログラムで編集する必要があります。この記事では、.NETAPIを使用してC#でExcelファイルを編集する方法**について説明します。

この記事で簡単に説明したトピックは次のとおりです。

.NET APIforExcelスプレッドシートの編集と自動化

GroupDocsは、スプレッドシート編集用の.NETAPIを紹介しています。この記事のC#の例で使用します。これはドキュメント編集APIであり、開発者はWYSIWYG HTMLエディターを使用してさまざまなドキュメント形式をロード、編集、および保存できます。 XLS、XLSX、およびODSスプレッドシート形式に加えて、APIは他のさまざまな[スプレッドシートおよびMS Excelでサポートされている形式]の編集をサポートしています(https://docs.groupdocs.com/editor/net/supported-document-formats/) CSV、TSV、DSV、XLT、XLTX、XLTM、XLSM、XLSB、XLAM、SXC、SpreadsheetML、FODS、DIFなど。

ダウンロードセクション からDLLまたはMSIインストーラーをダウンロードするか、NuGet

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ファイルを読み込みますgroupdocs.editor.options / Spreadsheetloadoptions) 。
  • スプレッドシート編集オプション を準備して、正確なシート/タブを抽出します。
  • 抽出 タブのコンテンツ。 *タブのコンテンツを変更します。 *選択したタブから画像とすべてのリソースを抽出できます。 *変更されたコンテンツを使用して、新しいEditableDocument を作成します。 *適切なSave() メソッドを使用して、編集スプレッドシートを保存します。

次のC#ソースコードは、Excelファイルを編集し、その内容を変更します。

// C#を使用してExcelスプレッドシートを編集する

Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
// loadOptions.Password = "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 リポジトリにアクセスしてください。 。詳細については、フォーラム のサポートにお問い合わせください。

関連記事

関連項目