syncfusion-dotnet-excel について
Syncfusion Excel Library を使って Excel ファイルを作成、編集、変換するスキルです。C# 開発者向けに、参照資料からのコード生成と CSX スクリプトによるファイル作成に対応します。
主な機能
- 01ブックとワークシートの作成・編集
- 02数式、グラフ、書式の操作
- 03複数形式でのデータ入出力
- 04Excel から PDF、JSON、CSV への変換
- 05パスワードと権限によるファイル保護
- 06C# コード生成と CSX タスク実行
活用シーン
- 01Excel 操作の C# サンプル作成
- 02XLSX ファイルの直接作成・変更
- 03データの取り込みと別形式への出力
- 04ブックの PDF または JSON 変換
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ syncfusion/ document-sdk-skills --skill syncfusion-dotnet-excelインストール後、Claude Code で/syncfusion-dotnet-excelを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdreferences/auto-fill.mdcell-access-manipulation.mdcell-formatting.mdcell-values.mdchart-to-image.mdcharts.mdcomments.mdconditional-formatting.mdcustom-xml.mddata-validation.mddocument-structure.mddrawing-objects.mdexcel-csv.mdexcel-to-json.mdexcel-to-pdf.mdexport-data.mdfill-series.mdfiltering-advanced.mdfiltering.mdfind-all-replace.mdfind-replace.mdformulas-advanced.mdfreeze-panes.mdhyperlink.mdimport-data-advanced.mdimport-data.mdmacros.mdmarkdown-conversion.mdnuget-packages.md詳細
Excel(XLSX / XLS)ドキュメントの処理
概要
Syncfusion Excel Library を使用して、Excel(.xlsx、.xls)ファイルを作成、編集、変換します。 このスキルは、ユーザーのプロジェクト向けに C# コードを生成する方法と、CSX スクリプトを通じてタスクを直接実行する方法の 2 つの運用モードをサポートしています。
主な機能
- 作成と編集: ワークブック、ワークシート、セル、行、列、セルの書式設定、スタイル、数式、名前付き範囲、グラフ、図形、画像、ハイパーリンク、コメント、データの入力規則、条件付き書式
- 高度な機能: テンプレートマーカーと差し込み印刷、データバインディング(DataTable、コレクション、オブジェクト)、ピボットテーブル、ピボットグラフ、スライサー、オートフィル、連続データの入力、What-If 分析シナリオ、カスタム XML、描画オブジェクト(テキストボックス、チェックボックス、図形)、VBA マクロ
- データ管理: データのインポート(CSV、DataTable、コレクション、ネストされたオブジェクト、XML、HTML テーブル)、データのエクスポート(範囲、テーブル、名前付き範囲)、正規表現による検索と置換、高度なフィルタリング(上位 10 件、カスタム、色、アイコンのフィルター)、ウィンドウ枠の固定、行/列/シートの表示と非表示
- 変換: Excel から PDF、Excel から JSON、Excel から CSV(インポート/エクスポート)、PDF および画像への変換用のカスタムフォント登録
- セキュリティ: パスワードによる暗号化/復号化、ドキュメント保護、アクセス許可の設定
- ページ設定: 余白、ヘッダー/フッター、印刷範囲
前提条件
- .NET SDK 8+ と
dotnet-script:dotnet tool install -g dotnet-script - Syncfusion ライセンス:https://www.syncfusion.com/products/communitylicense
クイックスタートの例
例 1:コードを生成(モード 1)
ユーザー:「テーブルを含む Excel ワークブックを作成する方法を教えて」 結果: C# コードスニペットを表示(ファイルは作成されません)
例 2:タスクを実行(モード 2)
ユーザー:「売上データを含む Excel スプレッドシートを output/report.xlsx に作成して」 結果: 指定したパスにファイルを作成
2 つのモード — ユーザーの意図に応じて選択
モードを選ぶ前に、ユーザーが何を実現したいのかを推測します。
モード 1:ユーザーのプロジェクト向けに C# コードを生成 (デフォルト)
ユーザーが Excel の処理に関連する C# コードの閲覧、記述、レビュー、リファクタリング、変更を希望している場合は、このモードを使用します。
トリガーとなるキーワード:「code」「snippet」「how to write」「Program.cs」「show me」「sample」「example code」「generate code for」「NuGet」「add to project」「integrate」「implementation」「usage example」「API example」「learn」「teach」「how do I」「I want to」「I need to」「help me implement」「library」「package」「ASP.NET」「Blazor」「WPF」「WinForms」「MAUI」「console app」「sort」「sorting」「sorted」「chart to image」「export chart」「chart as image」「hyperlink」「link」「links」「find replace」「replace」「filter」「filtering」「pivot」「template」「marker」「formula」「function」「custom font」「font registration」「FontManager」「missing font」。
ワークフロー:
ステップ 1 — アプリケーションの種類を検出し、適切な NuGet パッケージを提案する
-
ワークスペースのプロジェクトファイル(
.csproj、web.config、App.config、Startup.cs、Program.csなど)を調べ、references/nuget-packages.mdの検出シグナル表を使用してアプリケーションの種類を特定します。 -
特定したアプリケーションの種類に基づいて、
references/nuget-packages.mdから適切なパッケージを確認し、コードを生成する前にインストールするようユーザーに伝えます。
Step 2 — 参照ファイルのみからコードを生成する
参照ファイルに明示されていない API、メソッド、プロパティ、クラス、名前空間を作り出したり、推測したり、提案したりしないでください。
- 要求された機能に関連する
references/*.mdファイルを読みます - それらのファイルに記載された API とコードスニペットのみを使用して、C# コードを作成します
- Step 1 で検出したアプリの種類に応じて、適切なコードスニペットを選択します:
- Windows 固有のアプリ(WinForms、WPF、.NET Framework Console、ASP.NET MVC4/5、UWP)→ Windows 固有のコードスニペットを使用
- クロスプラットフォームアプリ(ASP.NET Core、.NET Core/.NET 5+ Console、Blazor、MAUI、Xamarin)→ クロスプラットフォーム/
.Net.Coreのコードスニペットを使用
.csxスクリプトを作成または実行しないでください
Mode 2: CSX スクリプトを実行する(プロジェクトファイルには触れません)
ユーザーが実行、ファイル生成、または完成した XLSX ファイルなどの完全な成果物を明示的に要求した場合にのみ、このモードを使用します。
トリガーキーワード:「ワークブックを作成」「Excel ファイルを作成」「スプレッドシートを生成」「スプレッドシートを作成」「ファイルを生成」「開く」「編集」「変更」「修正」(.xlsx ファイルについて)、「プロジェクトを変更せずに」「csx スクリプトを実行」「作成するだけ」「作成して」「Excel にエクスポート」「名前を付けて保存」「出力」「結果」「エクスポート」「変換」「ファイルパス」、またはユーザーがファイルパス(例:output/report.xlsx、~/Documents/sales.xlsx、/tmp/data.xlsx)を指定した場合。
ワークフロー:
Step 1 — 一時 CSX スクリプトを作成する
references/template.csxをベースとして使用します{skill-root}/syncfusion-dotnet-excel/scripts/temp-{timestamp}.csxに作成します(例:skill-root=.codestudio/skills)- ファイル名には一意の Unix タイムスタンプを使用し、ワークスペースのルートには作成しないでください
Step 2 — 参照ファイルからスクリプトを作成する
- 参照ファイルにない API/メソッドを作り出さないでください
- 関連する
references/*.mdファイルを読み、コードスニペットを抽出します - すべてのプレースホルダー(ファイルパス、シート名、セルの値、データ、フィールド名など)を置き換えます
Step 3 — スクリプトを実行する
- 次を実行します:
dotnet script {skill-root}/syncfusion-dotnet-excel/scripts/temp-{timestamp}.csx - 実行が成功したことを確認し、エラーがあれば記録します
Step 4 — クリーンアップして結果を報告する
- 実行後、一時
.csxファイルを削除します - 出力ファイルのパスと、修正方法を含むエラーメッセージがあれば、それとともに SUCCESS/ERROR を報告します
コードリファレンス
すべてのテンプレートとスニペットは references/ フォルダーにあります。
| ファイル | 内容 |
|---|---|
| nuget-packages.md | アプリケーションの種類別の NuGet パッケージの対応表(モード 1) |
| template.csx | CSX スクリプトの基本構造とライセンス登録 |
| document-structure.md | ワークブックの作成/保存/終了、シートの追加/名前変更/削除/移動 |
| template-markers.md | テンプレートマーカーのバインド:変数、DataTable、リスト、DataSet |
| cell-formatting.md | セルの書式設定、数値形式、スタイル、自動調整 |
| cell-values.md | セルの値と操作:テキスト、数値、数式、日付、ブール値の設定/読み取り、型の検出 |
| cell-access-manipulation.md | 相対位置でのセルへのアクセス、不連続範囲、migrant range、参照元/参照先セル、内容のクリア |
| formulas-advanced.md | シート間参照、配列数式、外部参照、名前付き範囲、計算列、計算モード、数式の監査 |
| charts.md | グラフの作成と設定 |
| excel-csv.md | CSV のインポート/エクスポート |
| excel-to-json.md | ワークシートまたは範囲の JSON への変換 |
| excel-to-pdf.md | レンダラーを使用したワークブックの PDF への変換 |
| custom-fonts.md | Excel から PDF/画像への変換用に、FontManager で .ttf/.otf フォントを登録 |
| export-data.md | テーブル、範囲、名前付き範囲のエクスポート |
| import-data.md | CSV、DataTable、その他のデータソースをシートにインポート |
| import-data-advanced.md | HTML テーブル、XML、配列、コレクション、入れ子のコレクション、DataColumn、DataView、グリッドコントロールのインポート |
| data-validation.md | データの入力規則とドロップダウンの追加と管理 |
| comments.md | セルのコメント/メモの追加、編集、削除 |
| conditional-formatting.md | 条件付き書式ルールとカラースケールの適用 |
| freeze-panes.md | 行、列、分割ペインの固定と、ワークシート区画の固定解除 |
| show-hide.md | 行、列、シート、枠線、見出し、タブの表示/非表示とズームレベルの設定 |
| row-column-insert-delete.md | 書式設定オプションを使用した行と列の挿入、削除、移動 |
| row-column-sizing.md | 行と列のサイズ変更、自動調整、グループ化、小計 |
| auto-fill.md | セル範囲への連続データ、パターン、傾向の自動入力 |
| fill-series.md | 線形、成長、日時、自動入力オプションによる連続データの入力 |
| find-all-replace.md | 種類(テキスト、数値、数式、値、コメント)別の一括検索、オプション指定による置換、ワークブック全体での検索 |
| filtering-advanced.md | 上位 10 件フィルター、カスタム条件、組み合わせ(テキスト/日時)、動的フィルター、色フィルター、アイコンフィルター、高度なフィルター |
| page-setup.md | ページ設定、余白、ヘッダー/フッター、印刷範囲 |
| pictures.md | 画像や図の挿入、配置、サイズ変更、整列、外部リンク、SVG 画像 |
| pivot-table.md | ピボットテーブルの作成と設定 |
| pivot-table-advanced.md | 高度なピボット操作:セルの書式設定、レイアウト、並べ替え/フィルター、グループ化、計算フィールド |
| pivot-chart.md | ピボットテーブルのデータからピボットグラフを作成、設定 |
| table-listobject.md | Excel テーブル(ListObjects)の作成と管理 |
| what-if-analysis.md | 入力値をテストするための What-If 分析によるシナリオの作成と管理 |
| slicer.md | UI ベースのフィルター処理に使うテーブルスライサーの作成と管理 |
| security.md | パスワード保護、暗号化、アクセス許可の設定 |
| drawing-objects.md | テキストボックス、チェックボックス、図形、コメントなどの描画オブジェクトの作成と管理 |
| macros.md | Excel ワークブックでの VBA マクロの作成、編集、管理 |
| custom-xml.md | 任意の XML データをワークブックに保存するためのカスタム XML パーツの追加と読み取り |
| worksheet-move-copy.md | ワークシート、行、列、セル範囲の移動とコピー |
| markdown-conversion.md | Excel ワークブック/ワークシートの Markdown 形式への変換と、Markdown ファイルの Excel へのインポート |
ルール
- 出力ファイルは
./output/ディレクトリに保存してください - 一時的な
.csxスクリプトは{skill-root}/syncfusion-dotnet-excel/scripts/内に作成してください。ワークスペースのルートや顧客のscripts/フォルダーには作成しないでください - ワークスペースのルートにある
SyncfusionLicense.txtまたは環境変数SYNCFUSION_LICENSE_KEYのライセンスキーを使用してください - Python ライブラリ(例:openpyxl、pandas)は使用しないでください
- 実行後に一時的な
.csxファイルを残さないでください