IRONSOFTWAREHOME
IRONXLの使用

How to Autofit Cells in Excel Using C#

Curtis Chau
Curtis Chau
Updated: 2026年6月28日

今日のデータ駆動型の世界では、Microsoft Excelは企業や専門家にとって欠かせないツールです。数値計算、レポート作成、データの可視化のいずれであっても、Excelの多用途性は比類ありません。 しかし、C#でExcelファイルをプログラム的に操作する際、開発者はしばしば課題に直面します。 ここでIronXLライブラリが登場し、C#環境内でのExcel自動化にシームレスなソリューションを提供します。

IronXLライブラリはIron Softwareから提供され、C# .NETとVB.NET環境でExcelドキュメントを直感的に扱うためのAPIを提供します。 IronXLを使用すると、Microsoft OfficeやExcel Interopコンポーネントをインストールする必要がありません。 開発者が簡単にExcelスプレッドシートファイルを読み取り、編集し、作成することを可能にし、.NET 8、7、6、.NET Core Frameworkのほか、Azure環境もフルサポートしています。

この配信では、C#とIronXLを使用してExcelで列幅と高さを自動調整する方法を学びます。

  1. Visual Studioプロジェクトを作成して、Excelワークシートのオートフィットセルをデモします。
  2. プロジェクトにIronXLライブラリをインストールします。
  3. IronXLライブラリを使って列の幅を自動調整します。
  4. IronXLライブラリを使って行の高さを自動調整します。
  5. IronXLライブラリを使って手動で列の幅と行の高さを設定します。

IronXL

IronXLライブラリは、C#開発者のためにExcelスプレッドシートの操作を簡素化するために設計された多用途 for .NETライブラリです。 迅速で直感的なAPIを提供し、IronXLは、Office Interopに依存せずにExcelファイルに迅速にアクセスし、修正し、生成することを可能にします。その互換性は、.NET CoreおよびAzureを含む様々な.NETフレームワークまで広がり、特別な依存関係やMicrosoft Officeのインストールを必要としません。C#、VB.NET、F#などの複数 for .NET言語をサポートし、コンソール、ウェブ、デスクトップアプリケーションを含む幅広い開発シナリオに対応しています。 さらに、IronXLの互換性は、Windows、Linux、macOS、Docker、Azure、およびAWSを含む様々なプラットフォームを超えて広がり、多様な環境で効率的なExcel統合を求める開発者にとって、不可欠なツールとなっています。

IronXLライブラリの主な機能

1.簡単な統合: IronXLはC#アプリケーションとシームレスに統合し、Excel自動化のためのシンプルで直感的なAPIを提供します。 開発者は最小限の学習曲線で迅速に始めることができます。 2. Excelファイルの読み書き: IronXLを使用すると、既存のExcelファイルからデータを簡単に読み込み、新規または既存のスプレッドシートにデータを書き込むことができます。 この機能は、データのインポート/エクスポートやレポートの生成などのタスクに不可欠です。 3.書式設定とスタイル設定: IronXLを使用すると、フォント、色、罫線など、Excelのセルに書式設定とスタイル設定を適用できます。 これにより、生成されたExcelファイルがプロフェッショナルで洗練された外観を維持します。 4.**数式サポート:**複雑な計算を実行したり、Excelデータに数式を適用したりする必要がありますか? IronXLは、Excelの数式のサポートを備えており、計算やデータ操作の自動化を可能にします。 5.セルの自動調整: IronXLが提供する便利な機能の1つは、Excelのセルを自動調整する機能です。これにより、コンテンツが切り捨てられることなく、各セル内にきれいに収まるようになります。

ステップ1: ExcelワークシートのオートフィットセルをデモするためのVisual Studioプロジェクトの作成

始めるには、以下に示すようにVisual Studioプロジェクトを作成します。 リストからコンソールアプリケーションテンプレートを選択します

Excelでセルを自動調整する方法 C#を使用: 図 1 - Visual Studioを開き、C#でコンソールアプリケーションタイプの新しいプロジェクトを追加します。

プロジェクト名と場所を指定します

Excelでセルを自動調整する方法 C#を使用: 図 2 - 次に、プロジェクト名と場所を指定します。

ドロップダウンから必要な.NETバージョンを選択し、作成をクリックします

Excelでセルを自動調整する方法 C#を使用: 図 3 - 必要な.NET Frameworkバージョンを選択し、作成をクリックします。

ステップ2: プロジェクトにIronXLライブラリをインストールする

Visual StudioのNuGetパッケージマネージャーからIronXLライブラリをインストールします

Excelでセルを自動調整する方法 C#を使用: 図 4 - NuGetパッケージマネージャーの検索バーで

パッケージはNuGetコマンドラインを使用してインストールすることもできます

dotnet add package IronXL.Excel --version 2024.3.20

Excelでセルを自動調整する方法 C#を使用: 図 5 - IronXL.Excel NuGetパッケージ

これで、コーディングを始める準備が整いました。

ステップ3: IronXLライブラリを使用して列の幅を自動調整する

IronXLライブラリのAutoSizeColumnメソッドは、コンテンツに合わせて列の幅を調整します。 このメソッドは、セルに使用されるフォントに基づいてテキストの幅を計算します。 システムに正確なフォントがない場合は、デフォルトのフォントを使用して測定を試みます。 デフォルトフォントが見つからない場合、利用可能な任意のフォントを使用しようとします。 ただし、フォントが見つからない場合は例外がスローされます。 ゼロベースの列インデックスをパラメータとして使用します。 これは0と(ColumnCount - 1)の間にある必要があります。 指定されたArgumentExceptionがスローされます。 マシンにフォントがインストールされていない場合、SixLabors.Fonts.FontExceptionがスローされます。

次に、Excelファイルのサイズを変更する方法を見てみましょう。サンプルExcelファイルをこちらからダウンロードできます。

入力ファイル

ここでは、列の幅が正しく定義されていないため、非常に読みづらいことがわかります。 では IronXLライブラリを使ってExcelシートの列幅を自動調整する方法を見てみましょう。

Excelでセルを自動調整する方法 C#を使用: 図 6 - 入力Excelファイル

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
var colCount = workSheet.Columns.Count();

for (int i = 0; i < colCount; i++)
{ 
    // Auto-fit column width for index i
    workSheet.AutoSizeColumn(i);
}

// Save the autofitted workbook as a new file
workBook.SaveAs("autoResize.xlsx"); // Result file

コードの説明

  1. 初めに、WorkBook.Load()メソッドを使用してFinancialSample.xlsxをロードします。
  2. 調整のための列の数を取得します。
  3. 全ての列インデックスをイテレートして、列幅を自動調整します。
  4. 最後に、autoResize.xlsxという名前の新しいファイルに結果を保存します。

出力ファイル

以下のように、全ての列が自動調整されており、見やすくなっています。

Excelでセルを自動調整する方法 C#を使用: 図 7 - 自動サイズ調整された列幅の出力Excel。

ステップ4: IronXLライブラリを使用して行の高さを自動調整する

行の高さをそのコンテンツに合わせて調整するAutoSizeRowメソッド。 このメソッドは、セルに使用されるフォントに基づいてテキストの高さを計算することに注意が必要です。 システムに正確なフォントがない場合は、デフォルトのフォントを使用して測定を試みます。 デフォルトフォントが見つからない場合、利用可能な任意のフォントを使用しようとします。 ただし、フォントが見つからない場合は例外がスローされます。 ゼロベースの行インデックスをパラメータとして使用します。 これは0と(RowCount - 1)の間にある必要があります。 指定されたArgumentExceptionがスローされます。 マシンにフォントがインストールされていない場合、SixLabors.Fonts.FontExceptionがスローされます。

入力Excelファイル

以下の例では、いくつかの行がデータに適していないサイズになっていることがわかります。 今度はC#コードを見てExcelの行の高さを自動調整してみましょう。

Excelでセルを自動調整する方法 C#を使用: 図 8 - 入力Excelファイル

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
var rowCount = workSheet.RowCount;

for (int i = 0; i < rowCount; i++)
{
    // Auto-fit row height for index i
    workSheet.AutoSizeRow(i);
}

// Save the autofitted workbook as a new file
workBook.SaveAs("autoResizeRows.xlsx"); // Result file

コードの説明

  1. 初めに、WorkBook.Load()メソッドを使用してFinancialSample.xlsxをロードします。
  2. 総行数を取得します。
  3. 全ての行インデックスをイテレートして、行の高さを自動調整します。
  4. 最後に、autoResizeRows.xlsxという名前の新しいファイルに結果を保存します。

出力Excelファイル

Excelでセルを自動調整する方法 C#を使用: 図 9 - 自動サイズ調整された行高さの出力Excel。

ステップ5: IronXLを使って列の幅と行の高さを手動設定する

行と列を自動サイズ調整する以外に、IronXLは特定の行の高さ値と特定の列の幅値に手動で調整するオプションも提供します。

入力Excelファイル

Excelでセルを自動調整する方法 C#を使用: 図 10 - 入力Excelファイル

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Manually set row height and column width
RangeRow row = workSheet.GetRow(0);
row.Height = 500; // Set height
RangeColumn col = workSheet.GetColumn(0);
col.Width = 5000; // Set width

// Save the workbook with specific values set
workBook.SaveAs("specificValue.xlsx");

コードの説明

  1. WorkBook.Load()関数を使用してFinancialSample.xlsxをロードします。
  2. 高さと幅を手動で調整する特定の行と列を取得します。
  3. 希望の高さおよび幅の値を設定します。
  4. specificValue.xlsxという名前で修正ファイルを保存します。

出力Excelファイル

Excelでセルを自動調整する方法 C#を使用: 図 11 - 手動サイズ設定された列幅と行高さの出力Excel。

ライセンス

無料トライアルを取得して、IronXLの機能を30日間自由に使用してください。

取得されるライセンスはappSettings.jsonファイルに配置する必要があります。

{
  "IronXL.License.LicenseKey": "myTrialKey"
}
JSON

結論

IronXLAutoSizeRowのような機能を使用すると、開発者は、インポートされたデータ、動的レポート、ユーザー生成コンテンツ、またはデータ分析結果を問わず、Excelスプレッドシートが含むコンテンツに動的に適応することを簡単に保証できます。

IronXLは、.NET CoreやAzureを含む様々な.NETフレームワークとの互換性を持ち、開発者がMicrosoft OfficeやExcel Interopに依存せずに、様々なアプリケーションにExcel自動化を組み込むことができるようになっています。さらに、IronXLは複数 for .NET言語とプラットフォームをサポートしているため、多様な環境でExcel操作タスクを効率化したい開発者にとって多用途な選択肢となっています。

本質的に、IronXLは、現代のC#開発の要求に応える包括的な機能群を提供し、Excel自動化プロジェクトでの生産性、正確性、柔軟性を向上させることで、開発者を支援します。 レポートの生成、データ分析、情報の提示など、さまざまな用途に対応できるツールを提供するIronXLで、C#エコシステム内でのExcel自動化において成功を収めることができます。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

...
詳しく読む

関連する記事

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。