IronXL ハウツー 行と列を自動サイズ調整 C#でExcelの行と列のサイズを自動変更する方法 Chaknith Bin 更新日:7月 22, 2025 IronXL をダウンロード NuGet ダウンロード DLL ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる ジェミニで開く このページについてGeminiに問い合わせる 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る This article was translated from English: Does it need improvement? Translated View the article in English スプレッドシートの行と列のサイズを変更することで、多くのスペースを節約し、より読みやすくすることができます。 IronXL C#ライブラリは、行と列を自動的にサイズ調整する機能を提供します。 これはC#で行われるため、既存のすべての行と列に対してリサイズメソッドを呼び出すことができ、スプレッドシートでの手動作業を自動化します。 クイックスタート: 単一呼び出しで列または行を自動サイズ調整 IronXLを使用すると、1行で任意の行または列をリサイズできます。インターロップなし、手間なしです。 WorkSheet.AutoSizeColumn(int, bool) または WorkSheet.AutoSizeRow(int, bool) を使用して、セルの内容に基づいてサイズを即座に調整します(統合セルはオプションです)。 今すぐ NuGet で PDF を作成してみましょう: NuGet パッケージ マネージャーを使用して IronXL をインストールします PM > Install-Package IronXL.Excel このコード スニペットをコピーして実行します。 // One-line: auto-resize column A including merged cells workSheet.AutoSizeColumn(0, true); // Or auto-resize row 5 quickly workSheet.AutoSizeRow(4, true); 実際の環境でテストするためにデプロイする 今すぐ無料トライアルでプロジェクトに IronXL を使い始めましょう 30日間無料トライアル 最小限のワークフロー(5ステップ) Excel の行と列のサイズを自動調整する C# ライブラリをダウンロードする 目的のExcelファイルをインポート AutoSizeRowメソッドを使用して行のサイズを自動的に変更します AutoSizeColumnメソッドを使用して、コンテンツの幅に基づいて列のサイズを変更します。 高さと幅の値を要件に合わせて設定 自動行サイズ調整の例 AutoSizeRowメソッドは、指定された行の高さをその内容に基づいて自動的にリサイズします。 :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-rows.cs using IronXL; // Load existing spreadsheet WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.DefaultWorkSheet; // Apply auto resize on row 2 workSheet.AutoSizeRow(1); workBook.SaveAs("autoResize.xlsx"); Imports IronXL ' Load existing spreadsheet Private workBook As WorkBook = WorkBook.Load("sample.xlsx") Private workSheet As WorkSheet = workBook.DefaultWorkSheet ' Apply auto resize on row 2 workSheet.AutoSizeRow(1) workBook.SaveAs("autoResize.xlsx") $vbLabelText $csharpLabel デモンストレーション 自動列サイズ調整の例 AutoSizeColumnメソッドを使用して、列の内容の長さに基づいて列の幅をリサイズします。 :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-columns.cs using IronXL; // Load existing spreadsheet WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.DefaultWorkSheet; // Apply auto resize on column A workSheet.AutoSizeColumn(0); workBook.SaveAs("autoResizeColumn.xlsx"); Imports IronXL ' Load existing spreadsheet Private workBook As WorkBook = WorkBook.Load("sample.xlsx") Private workSheet As WorkSheet = workBook.DefaultWorkSheet ' Apply auto resize on column A workSheet.AutoSizeColumn(0) workBook.SaveAs("autoResizeColumn.xlsx") $vbLabelText $csharpLabel デモンストレーション ヒントすべての行と列のインデックス位置はゼロベースのインデックスに従います。 高度な自動行サイズ調整の例 AutoSizeRowメソッドの別のオーバーロードは、第2パラメーターとしてブール値を受け付けます。 このパラメーターは、統合セルを考慮してリサイズすることができます。 :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-rows.cs using IronXL; // Load existing spreadsheet WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.DefaultWorkSheet; // Apply auto resize to rows individually workSheet.AutoSizeRow(0, true); workSheet.AutoSizeRow(1, true); workSheet.AutoSizeRow(2, true); workBook.SaveAs("advanceAutoResizeRow.xlsx"); Imports IronXL ' Load existing spreadsheet Private workBook As WorkBook = WorkBook.Load("sample.xlsx") Private workSheet As WorkSheet = workBook.DefaultWorkSheet ' Apply auto resize to rows individually workSheet.AutoSizeRow(0, True) workSheet.AutoSizeRow(1, True) workSheet.AutoSizeRow(2, True) workBook.SaveAs("advanceAutoResizeRow.xlsx") $vbLabelText $csharpLabel 例 例えば、コンテンツが192ピクセルの高さを持ち、3行にわたる統合領域に配置されているとします。 これらの行のいずれかに自動サイズ調整を適用する場合、アルゴリズムは192 px を 3で割ります、各行の高さは64ピクセルになります。 AutoSizeRowメソッドは、各行に個別に適用する必要があることを忘れないでください。 値がfalseに設定されている場合はどうなりますか? 値が false に設定されている場合、AutoSizeRowメソッドは、最大の高さを持つセルの内容に基づいて行の高さを調整します。 In Microsoft Excel, when a range of cells is merged, it retains only the value of the upper-left cell and clears the rest. However, with IronXL, the Merge operation is performed without erasing the values of other cells in the merged region. :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-rows-false.cs using IronXL; workSheet.Merge("A1:A3"); workSheet.AutoSizeRow(0, false); workSheet.AutoSizeRow(1, false); workSheet.AutoSizeRow(2, false); Imports IronXL workSheet.Merge("A1:A3") workSheet.AutoSizeRow(0, False) workSheet.AutoSizeRow(1, False) workSheet.AutoSizeRow(2, False) $vbLabelText $csharpLabel For demonstration purposes, I manually adjusted the row height instead of using the Excel autofit row height function. これは、上下に明確な余白を追加することを避けるために行われました。 useMergedCellsパラメーターが false に設定されている場合、統合セルの高さは考慮されません。 その結果、高さに変化はなく、各行の高さはその内容に基づいてのみ計算されます。 高度な自動列サイズ調整の例 AutoSizeRowと同様に、列のリサイズでも統合セルの幅を考慮することができます。 値をtrueに設定すると、統合セルの幅が考慮されます。 最も長い内容を持つ統合セルがあれば、リサイズされた列の幅は統合領域での列数で割られた統合セルの幅になります。 :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-columns.cs using IronXL; // Load existing spreadsheet WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.DefaultWorkSheet; // Apply auto resize to columns individually workSheet.AutoSizeColumn(0, true); workSheet.AutoSizeColumn(1, true); workSheet.AutoSizeColumn(2, true); workBook.SaveAs("advanceAutoResizeColumn.xlsx"); Imports IronXL ' Load existing spreadsheet Private workBook As WorkBook = WorkBook.Load("sample.xlsx") Private workSheet As WorkSheet = workBook.DefaultWorkSheet ' Apply auto resize to columns individually workSheet.AutoSizeColumn(0, True) workSheet.AutoSizeColumn(1, True) workSheet.AutoSizeColumn(2, True) workBook.SaveAs("advanceAutoResizeColumn.xlsx") $vbLabelText $csharpLabel 例 例えば、内容の幅が117ピクセルで、2列にわたる統合領域に配置されているとします。この場合、いずれかの列で自動サイズ調整を適用すると、各列の幅は59ピクセルになります。 AutoSizeColumnメソッドは、それぞれの列に個別に適用する必要があります。 値がfalseに設定されている場合はどうなりますか? 値をfalseに設定すると、AutoSizeColumnメソッドは、最も長い幅を持つセルの内容に基づいて幅を調整します。 In Microsoft Excel, when a range of cells is merged, it keeps only the upper-left value and erases the rest. However, the IronXL Merge method does NOT erase the value of other cells in the merged region. :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-columns-false.cs workSheet.Merge("A1:B1"); workSheet.AutoSizeColumn(0, false); workSheet.AutoSizeColumn(1, false); workSheet.Merge("A1:B1") workSheet.AutoSizeColumn(0, False) workSheet.AutoSizeColumn(1, False) $vbLabelText $csharpLabel 統合セルの幅が優先されていないため、各列の幅はその内容の幅に基づいて計算されていたため、幅に変化はありませんでした。 ExcelとIronXLの自動サイズ調整の違い 行 Excelのオートフィット行の高さ機能は、セルに目立つ上部と下部の余白を適用します。 列 Excelのオートフィット列の幅機能は、セルに左右の余白も適用しますが、それほど目立ちません。 高さと幅の手動リサイズの例 AutoSizeRowおよびAutoSizeColumnメソッドを使用してコンテンツの幅と高さを計算および調整することに加えて、特定の要求を満たすために列と行の幅と高さを手動で調整する柔軟性も持っています。 これにより、必要に応じて特定の値に設定することができます。 高さを調整:RangeRowのHeightプロパティを設定します。 幅を調整:RangeColumnのWidthプロパティを設定します。 :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-manual.cs using IronXL; // Load existing spreadsheet WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.DefaultWorkSheet; RangeRow row = workSheet.GetRow(0); row.Height = 10; // Set height RangeColumn col = workSheet.GetColumn(0); col.Width = 10; // Set width workBook.SaveAs("manualHeightAndWidth.xlsx"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel Excelの高さと幅の単位 Excelでの高さと幅の測定単位は異なります。 具体的には、高さは1/20のポイントで測定され、幅は"Normal"スタイルで指定されたフォントを使ってセルに入る"0"の数に基づいて決定されます。 単位の変換を簡単にするために、Microsoft Excelの表示ピクセルに対応するIronXLの値を解釈してみましょう。 なお、ピクセルは画面上の物理的な点を表すものではありません。 むしろ、画面の実際の解像度にかかわらず、1/96インチとして定義されています。 Excel自体は解像度に依存しないように設計されており、物理ピクセルには依存していません。 IronXLとExcelの高さと幅の測定値の関係を確立するために、次の近似を考慮することができます。 高さ:RangeRow.Height = 10 は約1ピクセルの高さになります。 幅:RangeColumn.Width = 23.255 は1ピクセルに対応します。 よくある質問 C#を使用してExcelの行を自動リサイズするにはどうすればよいですか? IronXLでは、AutoSizeRowメソッドを利用して、Excelシートの内容に基づいて行の高さを自動的に調整できます。 Excelシートで列を自動的にリサイズする方法は? IronXLは、内容に基づいて列の幅を自動調整できるAutoSizeColumnメソッドを提供します。 Excelで結合セルが正しくリサイズされることを保証する方法は? IronXLは、AutoSizeRowおよびAutoSizeColumnメソッドでブール値のパラメーターを使用して、リサイズ中にマージされたセルを考慮することでマージされたセルのサイズ変更をサポートしています。 IronXLがExcelのネイティブな自動リサイズ機能と比較して提供する利点は何ですか? IronXLはExcelのネイティブな自動リサイズ機能が適用する余白を追加せずにセルの寸法を正確に制御でき、より正確なセルのサイズ設定が可能になります。 Microsoft Office Interopを使用せずにC#でExcelファイルを操作することは可能ですか? はい、IronXLを使用すると、Microsoft Office Interopに依存せずにC#で直接Excelファイルを操作することができ、より効率的で使いやすくなります。 C#でExcelファイル内の行と列のサイズを手動で設定する方法は? IronXLでは、RangeRowおよびRangeColumnのHeightおよびWidthプロパティを調整することにより、行と列の高さと幅を手動で設定できます。 IronXLが行の高さや列の幅を設定する際に使用する単位は何ですか? IronXLは、行の高さは1/20ポイントで、幅は「Normal」スタイルのフォントを使用したときにフィットする「0」の数で決まる、Excelのデフォルトの測定単位を使用しています。 IronXLはExcelシートのリサイズプロセスを自動化できますか? はい、IronXLは行と列のリサイズを自動化して、手動調整の必要性を減らし、生産性を向上させます。 C#を使用してExcelの行と列をリサイズする方法を学ぶためのリソースはありますか? はい、IronXLはYouTubeで利用可能な行と列のリサイズに関するビデオチュートリアルを提供しており、開発者がこれらの機能の使い方を学ぶのに役立ちます。 Excelスプレッドシートのために自動リサイズが重要な理由は何ですか? 自動リサイズは、手動介入なしで、Excelスプレッドシートの可読性と美観を向上させ、すべてのコンテンツが見やすく整然と表示されるようにするために重要です。 Chaknith Bin 今すぐエンジニアリングチームとチャット ソフトウェアエンジニア ChaknithはIronXLとIronBarcodeに取り組んでいます。彼はC#と.NETの深い専門知識を持ち、ソフトウェアの改善や顧客サポートに貢献しています。ユーザーとの対話から得られる洞察が、より良い製品、ドキュメント、および全体的な経験に寄与しています。 準備はできましたか? Nuget ダウンロード 1,738,553 | Version: 2025.11 リリース NuGet 無料版 総ダウンロード数: 1,738,553 ライセンスを見る