チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

Koohji

Koohji

Spire.Doc for Python は、開発者が Word 文書の作成、読み取り、書き込み、変換、比較を迅速かつ高品質に行うために特別に設計された専門的な Word Python API です。

独立した Word Python API として、Spire.Doc for Python は開発環境やターゲットシステムに Microsoft Word のインストールを必要としません。ただし、Microsoft Word の文書作成機能を Python アプリケーションに組み込むことができます。

Excel ワークブックから冗長または未使用のワークシートを削除することで、組織の効率を向上させることができます。このプロセスにより、不要なワークシートを排除し、ファイル構造を改善し、最も関連性の高いデータに集中することができます。不要なワークシートを削除すると、ストレージスペースが解放され、ナビゲーションが簡素化され、ワークブックがクリーンで効率的になります。

この記事では、Spire.XLS for .NET ライブラリを使用して、C# で Excel ワークブックからワークシートを削除する方法を説明します。

Spire.XLS for .NET をインストールします

まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.XLS

インデックスでワークブックからワークシートを削除する

Spire.XLS for .NET は、ワークブックから特定のインデックスによってワークシートを削除するための WorksheetsCollection.RemoveAt(int index) メソッドを提供します。詳細な手順は以下の通りです:

  • Workbook オブジェクトを作成します。
  • 指定されたパスから Excel ファイルをロードします。
  • Workbook.Worksheets プロパティを使用して、ドキュメントからワークシートコレクションを取得します。
  • WorksheetsCollection.RemoveAt(int index) メソッドを使用して、インデックスによってワークシートを削除します。
  • ワークブックを別の Excel ドキュメントとして保存します。
  • C#
using Spire.Xls;
using Spire.Xls.Collections;

namespace RemoveWorksheetByIndex
{
    class Program
    {
        static void Main(string[] args)
        {
            // Workbookインスタンスを作成
            Workbook workbook = new Workbook();

            // Excelファイルを読み込む
            workbook.LoadFromFile("Sample.xlsx");

            // ドキュメントからワークシートコレクションを取得
            WorksheetsCollection worksheets = workbook.Worksheets;

            // インデックスで特定のワークシートを削除
            worksheets.RemoveAt(0);

            // ワークブックを別のExcelファイルに保存
            workbook.SaveToFile("インデックスによるワークシートの削除.xlsx", ExcelVersion.Version2016);

            // リソースを解放
            workbook.Dispose();
        }
    }
}

C#:Excel ワークブックからワークシートを削除する方法

名前でワークブックからワークシートを削除する

削除したいワークシートの名前が既に分かっている場合は、WorksheetsCollection.Remove(string sheetName) メソッドを使用して削除できます。詳細な手順は以下の通りです:

  • Workbook オブジェクトを作成します。
  • 指定されたパスから Excel ファイルをロードします。
  • Workbook.Worksheets プロパティを使用して、ドキュメントからワークシートコレクションを取得します。
  • WorksheetsCollection.Remove(string sheetName) メソッドを使用して、名前によってワークシートを削除します。
  • ワークブックを別の Excel ドキュメントとして保存します。
  • C#
using Spire.Xls;
using Spire.Xls.Collections;

namespace RemoveWorksheetByName
{
    class Program
    {
        static void Main(string[] args)
        {
            // ワークブックオブジェクトを作成
            Workbook wb = new Workbook();

            // Excelファイルを読み込む
            wb.LoadFromFile("Sample.xlsx");

            // ドキュメントからワークシートコレクションを取得
            WorksheetsCollection worksheets = wb.Worksheets;

            // 名前で特定のワークシートを削除
            worksheets.Remove("商品リスト");

            // ワークブックを別のExcelファイルに保存
            wb.SaveToFile("シート名によるワークシートの削除.xlsx", ExcelVersion.Version2016);

            // リソースを解放
            wb.Dispose();
        }
    }
}

C#:Excel ワークブックからワークシートを削除する方法

ワークブックからすべてのワークシートを削除する

一度にすべてのワークシートを削除するには、WorksheetsCollection.Clear() メソッドを使用できます。詳細な手順は以下の通りです:

  • Workbook オブジェクトを作成します。
  • 指定されたパスから Excel ファイルをロードします。
  • Workbook.Worksheets プロパティを使用して、ドキュメントからワークシートコレクションを取得します。
  • WorksheetsCollection.Clear() メソッドを使用して、一度にすべてのワークシートを削除します。
  • ワークブックを別の Excel ドキュメントとして保存します。
  • C#
using Spire.Xls;
using Spire.Xls.Collections;

namespace RemoveAllWorksheets
{
    class Program
    {
        static void Main(string[] args)
        {
            // ワークブックオブジェクトを作成
            Workbook wb = new Workbook();

            // Excelファイルを読み込む
            wb.LoadFromFile("Sample.xlsx");

            // ドキュメントからワークシートコレクションを取得
            WorksheetsCollection worksheets = wb.Worksheets;

            // すべてのワークシートを削除
            worksheets.Clear();

            // ワークブックを別のExcelファイルに保存
            wb.SaveToFile("すべてのワークシートを削除.xlsx", ExcelVersion.Version2016);

            // リソースを解放
            wb.Dispose();
        }
    }
}

C#:Excel ワークブックからワークシートを削除する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Word 文書ページにとじしろを追加することで、文書のプロフェッショナリズムと美観を向上させることができます。とじしろは文書をより整然とした印象にするだけでなく、印刷時にガイドとしても機能し、読者が内容をナビゲートしやすくします。文書ページにとじしろを追加することで、物理的な文書で見られる一般的な製本ライン効果を模倣し、文書に印刷されたような品質を与えることができます。この記事では、C# プロジェクト内で Spire.Doc for .NET を使用して、Word 文書ページにとじしろを追加する方法を説明します。

Spire.Doc for .NET をインストールします

まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Doc

C# を使用して Word 文書ページの上部にとじしろマージンを追加する

ページの上部にとじしろを有効にするには、section.PageSetup.IsTopGutter = true を設定します。デフォルトのとじしろエリアは空白でコンテンツが表示されません。この例では、とじしろエリア内にテキストを追加する方法も含まれています。以下は詳細な手順です。

  • Document オブジェクトを作成します。
  • Document.LoadFromFile() メソッドを使用して Word 文書をロードします。
  • Document.Sections コレクションに対して for ループを使用して文書のすべてのセクションを反復処理します。
  • Section.PageSetup.IsTopGutter を true に設定してページの上部にとじしろを表示します。
  • Section.PageSetup.Gutter プロパティを使用してとじしろの幅を設定します。
  • カスタムメソッド AddTopGutterText() を呼び出してとじしろエリアにテキストを追加します。
  • Document.SaveToFile() メソッドを使用して文書を保存します。
  • C#
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using Spire.Doc.Formatting;
using System.Drawing;
using System.Text;

namespace SpireDocDemo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // ドキュメントオブジェクトを作成
            Document document = new Document();

            // ドキュメントをロード
            document.LoadFromFile("Sample.docx");

            // ドキュメントの全セクションを繰り返し処理
            for (int i = 0; i < document.Sections.Count; i++)
            {
                // 現在のセクションを取得
                Section section = document.Sections[i];

                // ページの上部にガターを追加するかどうかをtrueに設定
                section.PageSetup.IsTopGutter = true;

                // ガターの幅を100fに設定
                section.PageSetup.Gutter = 100f;

                // 上部ガターにテキストを追加するメソッドを呼び出す
                AddTopGutterText(section);
            }

            // 修正されたドキュメントをファイルに保存
            document.SaveToFile("上部とじしろの追加.docx", FileFormat.Docx2016);

            // ドキュメントリソースを解放
            document.Dispose();
        }
        // 上部ガターにテキストを追加するメソッド
        static void AddTopGutterText(Section section)
        {
            // セクションのヘッダーを取得
            HeaderFooter header = section.HeadersFooters.Header;

            // テキストボックスの幅をページの幅に設定
            float width = section.PageSetup.PageSize.Width;

            // テキストボックスの高さを40に設定
            float height = 40;

            // ヘッダーにテキストボックスを追加
            TextBox textBox = header.AddParagraph().AppendTextBox(width, height);

            // テキストボックスの枠線をなしに設定
            textBox.Format.NoLine = true;

            // テキストボックスの垂直開始位置を上マージンエリアに設定
            textBox.VerticalOrigin = VerticalOrigin.TopMarginArea;

            // テキストボックスの垂直位置を設定
            textBox.VerticalPosition = 140;

            // テキストボックスの水平配置を左に設定
            textBox.HorizontalAlignment = ShapeHorizontalAlignment.Left;

            // テキストボックスの水平開始位置を左マージンエリアに設定
            textBox.HorizontalOrigin = HorizontalOrigin.LeftMarginArea;

            // テキストアンカーを下に設定
            textBox.Format.TextAnchor = ShapeVerticalAlignment.Bottom;

            // テキストの折り返しスタイルをテキストの前に設定
            textBox.Format.TextWrappingStyle = TextWrappingStyle.InFrontOfText;

            // テキストの折り返しタイプを両側に設定
            textBox.Format.TextWrappingType = TextWrappingType.Both;

            // パラグラフオブジェクトを作成
            Paragraph paragraph = new Paragraph(section.Document);

            // パラグラフを水平に中央揃えに設定
            paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center;

            // フォントオブジェクトを作成
            Font font = new Font("Yu Gothic UI", 8);

            // ドローイングオブジェクトを作成
            Graphics graphics = Graphics.FromImage(new Bitmap(1, 1));
            string text1 = " - ";
            SizeF size1 = graphics.MeasureString(text1, font);
            float textWidth1 = size1.Width / 96 * 72;
            int count = (int)(textBox.Width / textWidth1);
            StringBuilder stringBuilder = new StringBuilder();
            for (int i = 1; i < count; i++)
            {
                stringBuilder.Append(text1);
            }

            // 文字フォーマットオブジェクトを作成
            CharacterFormat characterFormat = new CharacterFormat(section.Document);
            characterFormat.FontName = font.Name;
            characterFormat.FontSize = font.Size;
            TextRange textRange = paragraph.AppendText(stringBuilder.ToString());
            textRange.ApplyCharacterFormat(characterFormat);

            // パラグラフをテキストボックスに追加
            textBox.ChildObjects.Add(paragraph);
        }
    }
}

C#:Word 文書ページにとじしろを追加する方法

C# を使用して Word 文書ページの左側にとじしろを追加する

ページの左側にとじしろを設定するには、Section.PageSetup.IsTopGutter プロパティを false に設定する必要があります。以下は詳細な手順です。

  • Document オブジェクトを作成します。
  • Document.LoadFromFile() メソッドを使用して Word 文書をロードします。
  • Document.Sections コレクションに対して for ループを使用して文書のすべてのセクションを反復処理します。
  • Section.PageSetup.IsTopGutter を false に設定してページの左側にとじしろを表示します。
  • Section.PageSetup.Gutter プロパティを使用してとじしろの幅を設定します。
  • カスタムメソッド AddLeftGutterText() を呼び出してとじしろエリアにテキストを追加します。
  • Document.SaveToFile() メソッドを使用して文書を保存します。
  • C#
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using Spire.Doc.Formatting;
using System.Drawing;
using System.Text;

namespace SpireDocDemo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // ドキュメントオブジェクトを作成
            Document document = new Document();

            // ドキュメントをロード
            document.LoadFromFile("Sample.docx");

            // ドキュメントの全セクションを繰り返し処理
            for (int i = 0; i < document.Sections.Count; i++)
            {
                // 現在のセクションを取得
                Section section = document.Sections[i];

                // ページの上部にガターを追加するかどうかをfalseに設定。ガターはページの左側に追加される
                section.PageSetup.IsTopGutter = false;

                // ガターの幅を100fに設定
                section.PageSetup.Gutter = 100f;

                // 左側ガターにテキストを追加するメソッドを呼び出す
                AddLeftGutterText(section);
            }

            // 修正されたドキュメントをファイルに保存
            document.SaveToFile("左とじしろの追加.docx", FileFormat.Docx2016);

            // ドキュメントリソースを解放
            document.Dispose();
        }
        // 左側ガターにテキストを追加するメソッド
        static void AddLeftGutterText(Section section)
        {
            // セクションのヘッダーを取得
            HeaderFooter header = section.HeadersFooters.Header;

            // テキストボックスの幅を40に設定
            float width = 40;

            // ページの高さを取得
            float height = section.PageSetup.PageSize.Height;

            // ヘッダーにテキストボックスを追加
            TextBox textBox = header.AddParagraph().AppendTextBox(width, height);

            // テキストボックスの枠線をなしに設定
            textBox.Format.NoLine = true;

            // テキストボックス内のテキスト方向を右から左に設定
            textBox.Format.LayoutFlowAlt = TextDirection.RightToLeft;

            // テキストボックスの水平開始位置を設定
            textBox.HorizontalOrigin = HorizontalOrigin.LeftMarginArea;

            // テキストボックスの水平位置を設定
            textBox.HorizontalPosition = 140;

            // テキストボックスの垂直配置を上に設定
            textBox.VerticalAlignment = ShapeVerticalAlignment.Top;

            // テキストボックスの垂直開始位置を上マージンエリアに設定
            textBox.VerticalOrigin = VerticalOrigin.TopMarginArea;

            // テキストアンカーを上に設定
            textBox.Format.TextAnchor = ShapeVerticalAlignment.Top;

            // テキストの折り返しスタイルをテキストの前に設定
            textBox.Format.TextWrappingStyle = TextWrappingStyle.InFrontOfText;

            // テキストの折り返しタイプを両側に設定
            textBox.Format.TextWrappingType = TextWrappingType.Both;

            // パラグラフオブジェクトを作成
            Paragraph paragraph = new Paragraph(section.Document);

            // パラグラフを水平に中央揃えに設定
            paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center;

            // フォントオブジェクトを作成
            Font font = new Font("Yu Gothic UI", 8);

            // ドローイングオブジェクトを作成
            Graphics graphics = Graphics.FromImage(new Bitmap(1, 1));
            string text1 = " - ";

            // テキストのサイズを測定
            SizeF size1 = graphics.MeasureString(text1, font);
            float textWidth1 = size1.Width / 96 * 72;

            int count = (int)(textBox.Height / textWidth1);
            StringBuilder stringBuilder = new StringBuilder();
            for (int i = 1; i < count; i++)
            {
                stringBuilder.Append(text1);
            }

            // 文字フォーマットオブジェクトを作成
            CharacterFormat characterFormat = new CharacterFormat(section.Document);
            characterFormat.FontName = font.Name;
            characterFormat.FontSize = font.Size;
            TextRange textRange = paragraph.AppendText(stringBuilder.ToString());
            textRange.ApplyCharacterFormat(characterFormat);

            // パラグラフをテキストボックスに追加
            textBox.ChildObjects.Add(paragraph);
        }
    }
}

C#:Word 文書ページにとじしろを追加する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Word 文書に編集権限領域を追加することで、特定のセクションを他のユーザーが編集できるようにし、それ以外の部分は誤って変更されるのを防ぐことができます。これは、共同作業文書や文書レビュー、コメントなどのシナリオに特に有用です。一方で、編集可能領域機能を削除することで、特定のセクションが編集される必要がない場合に文書を読み取り専用の状態に戻し、文書内容の整合性とセキュリティを確保できます。この記事では、C# プロジェクト内で Spire.Doc for .NET を使用して、Word 文書に編集可能領域を追加または削除する方法を説明します。

Spire.Doc for .NET をインストールします

まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Doc

C# を使用して Word 文書に編集可能領域を追加する

Word 文書に編集可能領域を追加する手順は、文書内に PermissionStart および PermissionEnd オブジェクトを挿入し、文書を読み取り専用保護モードに設定して、指定された領域内のコンテンツが編集可能であることを確保しながら、それ以外の部分を読み取り専用に保つことです。以下は詳細な手順です:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word 文書を読み込む。
  • Document.Sections[index] プロパティを通じて文書のセクションにアクセスする。
  • PermissionStart permissionStart = new PermissionStart(document, id) を使用して編集可能領域の開始を示す PermissionStart オブジェクトを作成する。
  • PermissionEnd permissionEnd = new PermissionEnd(document, id) を使用して編集可能領域の終了を示す PermissionEnd オブジェクトを作成する。
  • Section.Paragraphs[index] プロパティを使用して段落にアクセスする。
  • Paragraph.ChildObjects.Insert(0, permissionStart) メソッドを使用して段落の先頭に PermissionStart オブジェクトを挿入する。
  • Paragraph.ChildObjects.Add(permissionEnd) メソッドを使用して段落の最後に PermissionEnd オブジェクトを追加する。
  • Document.Protect(ProtectionType.AllowOnlyReading, password) メソッドを使用して文書を読み取り専用保護モードに設定し、編集権限を制限する。
  • Document.SaveToFile() メソッドを使用して結果の文書を保存する。
  • C#
using Spire.Doc;
using Spire.Doc.Documents;

namespace SpireDocDemo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // 指定されたパスからドキュメントを読み込む
            document.LoadFromFile("Sample.docx");

            // ドキュメントの最初のセクションを取得する
            Section section = document.Sections[0];

            // 権限開始オブジェクトを作成する
            PermissionStart permissionStart = new PermissionStart(document, "restricted1");

            // 権限終了オブジェクトを作成する
            PermissionEnd permissionEnd = new PermissionEnd(document, "restricted1");

            // セクション内の2番目の段落を取得する
            Paragraph paragraph = section.Paragraphs[1];

            // 権限開始オブジェクトを段落の最初に挿入する
            paragraph.ChildObjects.Insert(0, permissionStart);

            // 権限終了オブジェクトを段落の最後に追加する
            paragraph.ChildObjects.Add(permissionEnd);

            // ドキュメントを読み取り専用に保護する
            document.Protect(ProtectionType.AllowOnlyReading, "123456");

            // 修正されたドキュメントを指定されたパスに保存する
            document.SaveToFile("Word文書に編集許可領域を追加.docx", FileFormat.Docx);

            // ドキュメントを閉じ、ドキュメントオブジェクトによって占有されているリソースを解放する
            document.Close();
            document.Dispose();
        }
    }
}

C#:Word 文書に編集可能領域を追加または削除する方法

C# を使用して Word 文書から編集可能領域を削除する

Word 文書から編集可能領域を削除するための重要な手順は、文書の各段落を反復処理し、PermissionStart および PermissionEnd オブジェクトを削除することです。以下は詳細な手順です:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word 文書を読み込む。
  • 文書の各セクション内の各段落を反復処理し、PermissionStart または PermissionEnd オブジェクトの存在を確認してそれらを削除する。
  • Document.SaveToFile() メソッドを使用して結果の文書を保存する。
  • C#
using Spire.Doc;
using Spire.Doc.Documents;

namespace SpireDocDemo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // 指定されたパスからドキュメントを読み込む
            document.LoadFromFile("Word文書に編集許可領域を追加.docx");

            // ドキュメントのセクションを反復処理する
            for (int a = 0; a < document.Sections.Count; a++)
            {
                // 現在のセクションの本文を取得する
                Body body = document.Sections[a].Body;

                // 本文の子オブジェクトを反復処理する
                for (int i = 0; i < body.ChildObjects.Count; i++)
                {
                    // 子オブジェクトが段落かどうかを確認する
                    if (body.ChildObjects[i] is Paragraph)
                    {
                        // 現在の段落を取得する
                        Paragraph paragraph = (Paragraph)body.ChildObjects[i];

                        // 段落の最後の子オブジェクトから逆向きに反復処理する
                        for (int j = paragraph.ChildObjects.Count - 1; j >= 0; j--)
                        {
                            // 現在の子オブジェクトを取得する
                            DocumentObject documentObject = paragraph.ChildObjects[j];

                            // 現在の子オブジェクトが権限開始オブジェクトである場合は削除する
                            if (documentObject.DocumentObjectType == DocumentObjectType.PermissionStart)
                            {
                                paragraph.ChildObjects.RemoveAt(j);
                            }
                            // 現在の子オブジェクトが権限終了オブジェクトである場合は削除する
                            else if (documentObject.DocumentObjectType == DocumentObjectType.PermissionEnd)
                            {
                                paragraph.ChildObjects.RemoveAt(j);
                            }
                        }
                    }
                }
            }

            // 修正されたドキュメントを指定されたパスに保存する
            document.SaveToFile("Word文書の編集許可領域を削除.docx", FileFormat.Docx);

            // ドキュメントを閉じ、ドキュメントオブジェクトによって占有されているリソースを解放する
            document.Close();
            document.Dispose();
        }
    }
}

C#:Word 文書に編集可能領域を追加または削除する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

皆様にお知らせです。Spire.Doc for Python、Spire.PDF for Python、Spire.XLS for Python、Spire.Presentation for Python、Spire.Barcode for Python そして Spire.Office for Python がウェブサイトにて公開されました。ダウンロードしてお試しください。弊社は、皆様の文書処理業務をより良くするために、今後も新製品を継続的に提供してまいります。

Spire.Office for Python

Spire.Office for Python は、Python プログラミング言語を使用してさまざまなファイル形式のドキュメントを処理するための強力で包括的なライブラリです。Spire.Doc for Python、Spire.XLS for Python、Spire.Presentation for Python、Spire.PDF for Python、Spire.Barcode for Python を含んでいます。

Spire.Office for Python を入手するには、こちらをクリックしてください:

Spire.Doc for Python

Spire.Doc for Python は、Python 向けのプロフェッショナルな Word 開発コンポーネントです。これを使用することで、開発者は Word 文書の作成、読み取り、編集、変換などの機能を簡単に自分の Python アプリケーションに統合することができます。

Spire.Doc for Python を入手するには、こちらをクリックしてください:

Spire.PDF for Python

Spire.PDF for Python は、完全に独立した PDF 開発コンポーネントであり、Python プログラム内で PDF 文書の作成、読み取り、編集、変換、保存を行うことができます。開発者は Spire.PDF for Python ライブラリを使用して、新しい PDF 文書を作成したり、既存の PDF 文書を処理することができ、第三者ツールは一切必要ありません。

Spire.PDF for Python を入手するには、こちらをクリックしてください:

Spire.XLS for Python

Spire.XLS for Python は、Python 向けのプロフェッショナルな Excel 開発コンポーネントであり、様々な Python プラットフォームに対応しています。Spire.XLS for Python は、テンプレートに基づいた新しい Excel 文書の作成、既存の Excel 文書の編集、Excel 文書の変換など、様々なプログラミング操作を Python プラットフォーム上で迅速に行うことができるオブジェクトモデル Excel 開発コンポーネントを提供します。

Spire.XLS for Python を入手するには、こちらをクリックしてください:

Spire.Presentation for Python

Spire.Presentation for Python は、PowerPoint と高度に互換性があり、スライドの管理、テキストと画像の追加、表とグラフの作成、ビデオとオーディオの挿入、プレゼンテーションの暗号化と復号、透かしの挿入、注釈の操作などの機能をサポートするプロフェッショナルなプレゼンテーション処理 API です。

Spire.Presentation for Python を入手するには、こちらをクリックしてください:

Spire.Barcode for Python

Spire.Barcode for Python は、多機能なバーコード生成および認識ライブラリです。開発者は直感的な API を利用して、Python プログラムにバーコード機能を統合することができます。1D バーコードと 2D バーコードを含むさまざまなバーコード形式に対応しており、バーコードの生成、読み取り、およびスキャンのタスクを簡素化します。

Spire.Barcode for Python を入手するには、こちらをクリックしてください:

お問い合わせ

メールアドレス

  • 営業:このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。
  • 技術サポート:このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。

複数のワークシートを含む Excel ファイルを扱うとき、いくつかのワークシートが不要になったり、異なる方法で整理する必要があることがあります。そのような場合、ワークシートを移動または削除してスプレッドシートをより適切に管理することができます。この記事では、Spire.XLS for .NET を使用して、C# で Excel ワークブックのワークシートを移動または削除する方法を説明します。

Spire.XLS for .NET をインストールします

まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.XLS

C# で Excel ファイルのワークシートを移動する

Spire.XLS for .NET は、指定したインデックスによって Excel ワークシートを希望の位置に移動するために Worksheet.MoveWorksheet(int destIndex) メソッドを提供しています。詳細な手順は以下の通りです:

  • Workbook インスタンスを作成します。
  • Workbook.LoadFromFile() メソッドを使用して Excel ファイルを読み込みます。
  • Workbook.Worksheets[] プロパティを使用して特定のワークシートを取得します。
  • Worksheet.MoveWorksheet() メソッドを使用してワークシートを別の位置に移動します。
  • Workbook.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
using Spire.Xls;

namespace MoveSheet
{
    class Program
    {
        static void Main(string[] args)
        {
            // Workbookインスタンスを作成
            Workbook workbook = new Workbook();

            // Excelファイルを読み込む
            workbook.LoadFromFile("Sample.xlsx");

            // 最初のワークシートを取得
            Worksheet sheet = workbook.Worksheets[0];

            // ワークシートを3番目の位置に移動
            sheet.MoveWorksheet(2);

            // 結果ファイルを保存
            workbook.SaveToFile("Excelワークシートの移動.xlsx", ExcelVersion.Version2016);
            workbook.Dispose();
        }
    }
}

C#:Excel ファイルのワークシートを移動または削除する方法

C# で Excel ファイルからワークシートを削除する

Workbook.Worksheets.RemoveAt(int index) または Workbook.Worksheets.Remove(string sheetName) メソッドを使用して、シートインデックスまたはシート名で特定のワークシートを Excel から削除できます。詳細な手順は以下の通りです:

  • Workbook インスタンスを作成します。
  • Workbook.LoadFromFile() メソッドを使用して Excel ファイルを読み込みます。
  • Workbook.Worksheets.RemoveAt() または Workbook.Worksheets.Remove() メソッドを使用してファイルから特定のワークシートを削除します。
  • Workbook.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
using Spire.Xls;

namespace RemoveSheet
{
    class Program
    {
        static void Main(string[] args)
        {
            // Workbookインスタンスを作成
            Workbook workbook = new Workbook();

            // Excelファイルを読み込む
            workbook.LoadFromFile("Sample.xlsx");

            // インデックスで特定のワークシートを削除
            workbook.Worksheets.RemoveAt(0);
            // 名前で特定のワークシートを削除
            //workbook.Worksheets.Remove("売上予測");

            // 結果ファイルを保存
            workbook.SaveToFile("Excelワークシートの削除.xlsx", ExcelVersion.Version2016);
            workbook.Dispose();
        }
    }
}

C#:Excel ファイルのワークシートを移動または削除する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

デジタル署名は、電子署名の一種で、デジタルドキュメントの真正性と整合性を確認するために使用できます。受信者は、デジタルドキュメントがどこから来たのか、署名後に第三者によって変更されていないかを確認できます。この記事では、C# で Spire.XLS for .NET を使用して、Excel ファイルにデジタル署名を追加または削除する方法を説明します。

Spire.XLS for .NET をインストールします

まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.XLS

C# で Excel ファイルにデジタル署名を追加する

デジタル署名を追加することで、Excel ファイルの整合性を保護できます。デジタル署名が追加されると、ファイルは読み取り専用になり、さらなる編集を防ぎます。誰かがファイルを変更すると、デジタル署名は直ちに無効になります。

Spire.XLS for .NET は、Workbook クラスの AddDigitalSignature メソッドを提供しており、これを使用して Excel ファイルにデジタル署名を追加できます。手順は以下の通りです:

  • Workbook クラスのインスタンスを初期化します。
  • Workbook.LoadFromFile() メソッドを使用して Excel ファイルを読み込みます。
  • 指定された証明書 (.pfx) ファイルのパスと .pfx ファイルのパスワードを使用して、X509Certificate2 クラスのインスタンスを初期化します。
  • DateTime クラスのインスタンスを初期化します。
  • Workbook.AddDigitalSignature(X509Certificate2, string, DateTime) メソッドを使用してファイルにデジタル署名を追加します。
  • Workbook.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
using Spire.Xls;
using Spire.Xls.Core.MergeSpreadsheet.Interfaces;
using System;
using System.Security.Cryptography.X509Certificates;

namespace AddSignatureInExcel
{
    class Program
    {
        static void Main(string[] args)
        {
            // Workbookインスタンスを作成
            Workbook workbook = new Workbook();
            // Excelファイルを読み込む
            workbook.LoadFromFile("Sample.xlsx");

            // デジタル署名をファイルに追加
            X509Certificate2 cert = new X509Certificate2("gary.pfx", "e-iceblue");
            DateTime certtime = new DateTime(2020, 7, 1, 7, 10, 36);
            IDigitalSignatures signature = workbook.AddDigitalSignature(cert, "e-iceblue", certtime);

            // 結果ファイルを保存
            workbook.SaveToFile("Excelに電子署名を追加.xlsx", FileFormat.Version2013);
            workbook.Dispose();
        }
    }
}

C#:Excel ファイルにデジタル署名を追加または削除する方法

C# で Excel ファイルからデジタル署名を削除する

Spire.XLS for .NET は、Workbook クラスの RemoveAllDigitalSignatures メソッドを提供しており、これを使用して Excel ファイルからデジタル署名を削除できます。手順は以下の通りです:

  • Workbook クラスのインスタンスを初期化します。
  • Workbook.LoadFromFile() メソッドを使用して Excel ファイルを読み込みます。
  • Workbook.RemoveAllDigitalSignatures() メソッドを使用してファイルからすべてのデジタル署名を削除します。
  • Workbook.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
using Spire.Xls;

namespace DeleteSignatureInExcel
{
    class Program
    {
        static void Main(string[] args)
        {
            // Workbookインスタンスを作成
            Workbook workbook = new Workbook();
            // Excelファイルを読み込む
            workbook.LoadFromFile("Excelに電子署名を追加.xlsx");

            // ファイル内の全てのデジタル署名を削除
            workbook.RemoveAllDigitalSignatures();

            // 結果ファイルを保存
            workbook.SaveToFile("Excelから電子署名を削除.xlsx", FileFormat.Version2013);
            workbook.Dispose();
        }
    }
}

C#:Excel ファイルにデジタル署名を追加または削除する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Word ドキュメントは、セキュリティ要件に応じてさまざまな方法で保護できます。文書を開くのを許可されていない人を防ぐために、パスワードで暗号化することができます。文書を開くことは許可しつつ、その内容の編集や変更を禁止する場合は、読み取り専用にする最終版としてマークすることができます。文書の一部を編集可能にする場合は、文書全体をロックしつつも、特定のセクションを編集可能にすることができます。この記事では、を使用して Spire.Doc for .NET を使って C# で Word ドキュメントを保護または解除する方法に焦点を当てています。

Spire.Doc for .NET をインストールします

まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Doc

C# で Word ドキュメントをパスワードで保護する方法

ドキュメントをパスワードで暗号化することで、あなただけでなく特定の人々のみが読み取りや編集が可能になります。以下は Spire.Doc for .NET を使用してパスワードで Word ドキュメントを保護する手順です。

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • Document.Encrypt() メソッドを使用してドキュメントをパスワードで暗号化する。
  • Document.SaveToFile() メソッドを使用してドキュメントを保存する。
  • C#
using Spire.Doc;

namespace PasswordProtectWordDocument
{
    class Program
    {
        static void Main(string[] args)
        {
            // ドキュメントオブジェクトを作成
            Document document = new Document();

            // Wordファイルをロード
            document.LoadFromFile("Sample.docx");

            // ドキュメントをパスワードで暗号化
            document.Encrypt("open-psd");

            // ドキュメントを別のWordファイルとして保存
            document.SaveToFile("Word文書を暗号化.docx", FileFormat.Docx);
            document.Close();
        }
    }
}

C#:Word ドキュメントを保護・解除する方法

C# で Word ドキュメントの権限を変更する方法

開くパスワードで暗号化されたドキュメントは、パスワードを知らない人には開くことができません。文書を閲覧することは許可しつつ、編集や変更の種類を制限したい場合は、文書の権限を設定できます。以下は Spire.Doc for .NET を使用して Word ドキュメントの権限を変更する手順です。

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • Document.Protect() メソッドを使用して文書の権限と権限パスワードを設定する。
  • Document.SaveToFile() メソッドを使用してドキュメントを保存する。
  • C#
using Spire.Doc;

namespace ChangeDocumentPermission
{
    class Program
    {
        static void Main(string[] args)
        {
            // ドキュメントオブジェクトを作成
            Document document = new Document();

            // Wordドキュメントをロード
            document.LoadFromFile("Sample.docx");

            // ドキュメントの権限を設定し、パーミッションパスワードを設定
            document.Protect(ProtectionType.AllowOnlyFormFields, "permission-psd");

            // ドキュメントを別のWordファイルとして保存
            document.SaveToFile("Word文書の権限を変更.docx");
            document.Close();
        }
    }
}

C#:Word ドキュメントを保護・解除する方法

C# で特定のセクションをロックする方法

文書を保護する際に、一部を編集可能にしつつ他の部分を変更不可にすることができます。以下は Spire.Doc for .NET を使用して特定のセクションを保護する手順です。

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • 編集制限を AllowOnlyFormFields に設定する。
  • Document.Sections[index].ProtectFormfalse に設定して特定のセクションの保護を解除する。他のセクションは引き続き保護されます。
  • Document.SaveToFile() メソッドを使用してドキュメントを保存する。
  • C#
using Spire.Doc;

namespace ProtectSpecificSection
{
    class Program
    {
        static void Main(string[] args)
        {
            // ドキュメントオブジェクトを作成
            Document doc = new Document();

            // Wordドキュメントをロード
            doc.LoadFromFile("Sample.docx");

            // 編集制限を「フォームフィールドのみにする」に設定
            doc.Protect(ProtectionType.AllowOnlyFormFields, "permissionPsd");

            // セクション2の保護を解除
            doc.Sections[1].ProtectForm = false;

            // ドキュメントを別のWordファイルとして保存
            doc.SaveToFile("Word文書のセクションを保護.docx");
            doc.Close();
        }
    }
}

C#:Word ドキュメントを保護・解除する方法

C# で Word ドキュメントを最終版としてマークする方法

ドキュメントを最終版としてマークすることで、入力、編集、書式変更の機能が無効になり、読者には文書が最終版である旨のメッセージが表示されます。以下は Spire.Doc for .NET を使用して Word ドキュメントを最終版としてマークする手順です。

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ファイルを読み込む。
  • ドキュメントから CustomDocumentProperties オブジェクトを取得する。
  • カスタムプロパティ "_MarkAsFinal" をドキュメントに追加する。
  • Document.SaveToFile() メソッドを使用してドキュメントを保存する。
  • C#
using Spire.Doc;

namespace MarkAsFinal
{
    class Program
    {
        static void Main(string[] args)
        {
            // ドキュメントオブジェクトを作成
            Document doc = new Document();

            // Wordドキュメントをロード
            doc.LoadFromFile("Sample.docx");

            // カスタムドキュメントプロパティを取得
            CustomDocumentProperties customProperties = doc.CustomDocumentProperties;

            // "_MarkAsFinal" プロパティをドキュメントに追加
            customProperties.Add("_MarkAsFinal", true);

            // ドキュメントを別のWordファイルとして保存
            doc.SaveToFile("Word文書の最終マーク.docx");
            doc.Close();
        }
    }
}

C#:Word ドキュメントを保護・解除する方法

C# で Word ドキュメントのパスワードを削除する方法

暗号化が不要になった場合、暗号化された文書からパスワードを削除することができます。以下はその詳細な手順です。

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • Document.RemoveEncryption() メソッドを使用してパスワードを削除する。
  • Document.SaveToFile() メソッドを使用してドキュメントを保存する。
  • C#
using Spire.Doc;

namespace RemovePassword
{
    class Program
    {
        static void Main(string[] args)
        {
            // ドキュメントオブジェクトを作成
            Document document = new Document();

            // 暗号化されたWordドキュメントをロード
            document.LoadFromFile("Word文書を暗号化.docx", FileFormat.Docx, "open-psd");

            // 暗号化を解除
            document.RemoveEncryption();

            // ドキュメントを別のWordファイルとして保存
            document.SaveToFile("Word文書の復号化.docx", FileFormat.Docx);
            document.Close();
        }
    }
}

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Word ドキュメントからコンテンツを読み取ることは、多くの仕事や学習タスクにおいて重要です。Word ドキュメントからページを読むことは、主要な情報を素早く閲覧し要約するのに役立ち、Word ドキュメントからセクションを読むことは、特定のトピックやセクションを深く理解するのに役立ちます。一方、Word ドキュメント全体を読むことは、全体的な情報を包括的に把握し、総合的な分析と理解を促進します。この記事では、Spire.Doc for .NET を使用して C# プロジェクト内で Word ドキュメントのページ、セクション、および全体のコンテンツを読み取る方法を紹介します。

Spire.Doc for .NET をインストールします

まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Doc

C# で Word ドキュメントからページを読み取る

FixedLayoutDocument クラスと FixedLayoutPage クラスを使用すると、指定されたページのコンテンツを簡単に取得できます。抽出したコンテンツを表示しやすくするために、このサンプルコードでは読み取ったコンテンツを新しい Word ドキュメントに保存します。詳細な手順は以下の通りです:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • FixedLayoutDocument オブジェクトを作成する。
  • ドキュメント内のページの FixedLayoutPage オブジェクトを取得する。
  • FixedLayoutPage.Section プロパティを介してページが存在するセクションにアクセスする。
  • セクション内のページの最初の段落のインデックス位置を取得する。
  • セクション内のページの最後の段落のインデックス位置を取得する。
  • 別の Document オブジェクトを作成する。
  • Document.AddSection() メソッドを使用して新しいセクションを追加する。
  • Section.CloneSectionPropertiesTo(newSection) メソッドを使用して、元のセクションのプロパティを新しいセクションにクローンする。
  • 元のドキュメントから新しいドキュメントにページのコンテンツをコピーする。
  • Document.SaveToFile() メソッドを使用して結果のドキュメントを保存する。
  • C#
using Spire.Doc;
using Spire.Doc.Pages;
using Spire.Doc.Documents;

namespace SpireDocDemo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // 指定されたファイルからドキュメントの内容をロードする
            document.LoadFromFile("Sample.docx");

            // 固定レイアウトドキュメントオブジェクトを作成する
            FixedLayoutDocument layoutDoc = new FixedLayoutDocument(document);

            // 最初のページを取得する
            FixedLayoutPage page = layoutDoc.Pages[0];

            // ページが含まれているセクションを取得する
            Section section = page.Section;

            // ページの最初の段落を取得する
            Paragraph paragraphStart = page.Columns[0].Lines[0].Paragraph;
            int startIndex = 0;
            if (paragraphStart != null)
            {
                // セクション内の段落のインデックスを取得する
                startIndex = section.Body.ChildObjects.IndexOf(paragraphStart);
            }

            // ページの最後の段落を取得する
            Paragraph paragraphEnd = page.Columns[0].Lines[page.Columns[0].Lines.Count - 1].Paragraph;

            int endIndex = 0;
            if (paragraphEnd != null)
            {
                // セクション内の段落のインデックスを取得する
                endIndex = section.Body.ChildObjects.IndexOf(paragraphEnd);
            }

            // 新しいドキュメントオブジェクトを作成する
            Document newdoc = new Document();

            // 新しいセクションを追加する
            Section newSection = newdoc.AddSection();

            // 元のセクションのプロパティを新しいセクションにクローンする
            section.CloneSectionPropertiesTo(newSection);

            // 元のドキュメントのページの内容を新しいドキュメントにコピーする
            for (int i = startIndex; i <= endIndex; i++)
            {
                newSection.Body.ChildObjects.Add(section.Body.ChildObjects[i].Clone());
            }

            // 新しいドキュメントを指定されたファイルに保存する
            newdoc.SaveToFile("Wordのページから内容を読む.docx", Spire.Doc.FileFormat.Docx);

            // 新しいドキュメントを閉じてリソースを解放する
            newdoc.Close();
            newdoc.Dispose();

            // 元のドキュメントを閉じてリソースを解放する
            document.Close();
            document.Dispose();
        }
    }
}

C#:Word 文書からコンテンツを読み取る方法

C# で Word ドキュメントからセクションを読み取る

Document.Sections[index] プロパティを使用すると、ヘッダー、フッター、本文コンテンツを含む特定のセクションオブジェクトを取得できます。この例では、セクションのすべてのコンテンツを別のドキュメントにコピーする簡単な方法を提供します。詳細な手順は以下の通りです:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • Document.Sections[1] プロパティを使用してドキュメントの第二セクションを取得する。
  • 別の新しい Document オブジェクトを作成する。
  • Document.CloneDefaultStyleTo(newdoc) メソッドを使用して、元のドキュメントのデフォルトスタイルを新しいドキュメントにクローンする。
  • newdoc.Sections.Add(section.Clone()) メソッドを使用して、元のドキュメントの第二セクションのコンテンツを新しいドキュメントにクローンする。
  • Document.SaveToFile() メソッドを使用して結果のドキュメントを保存する。
  • C#
using Spire.Doc;

namespace ReadWordSectionContent
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // ファイルからWordドキュメントをロードする
            document.LoadFromFile("Sample.docx");

            // ドキュメントの2番目のセクションを取得する
            Section section = document.Sections[1];

            // 新しいドキュメントオブジェクトを作成する
            Document newdoc = new Document();

            // デフォルトスタイルを新しいドキュメントにクローンする
            document.CloneDefaultStyleTo(newdoc);

            // 2番目のセクションを新しいドキュメントにクローンする
            newdoc.Sections.Add(section.Clone());

            // 新しいドキュメントをファイルに保存する
            newdoc.SaveToFile("Wordのセクションから内容を読む.docx", Spire.Doc.FileFormat.Docx);

            // 新しいドキュメントオブジェクトを閉じてリソースを解放する
            newdoc.Close();
            newdoc.Dispose();

            // 元のドキュメントオブジェクトを閉じてリソースを解放する
            document.Close();
            document.Dispose();
        }
    }
}

C#:Word 文書からコンテンツを読み取る方法

C# で Word ドキュメント全体のコンテンツを読み取る

この例では、元のドキュメントの各セクションを順に繰り返し処理し、各セクションを新しいドキュメントにクローンすることで、ドキュメント全体のコンテンツを読み取る方法を示します。詳細な手順は以下の通りです:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • 別の新しい Document オブジェクトを作成する。
  • Document.CloneDefaultStyleTo(newdoc) メソッドを使用して、元のドキュメントのデフォルトスタイルを新しいドキュメントにクローンする。
  • foreach ループを使用して元のドキュメントの各セクションを順に繰り返し処理し、各セクションを新しいドキュメントにクローンする。
  • Document.SaveToFile() メソッドを使用して結果のドキュメントを保存する。
  • C#
using Spire.Doc;

namespace ReadWordDocumentContent
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // ファイルからWordドキュメントをロードする
            document.LoadFromFile("Sample.docx");

            // 新しいドキュメントオブジェクトを作成する
            Document newdoc = new Document();

            // デフォルトスタイルを新しいドキュメントにクローンする
            document.CloneDefaultStyleTo(newdoc);

            // 元のドキュメントの各セクションを反復処理して新しいドキュメントにクローンする
            foreach (Section sourceSection in document.Sections)
            {
                newdoc.Sections.Add(sourceSection.Clone());
            }

            // 新しいドキュメントをファイルに保存する
            newdoc.SaveToFile("Word文書からコンテンツを読み込む.docx", Spire.Doc.FileFormat.Docx);

            // 新しいドキュメントオブジェクトを閉じてリソースを解放する
            newdoc.Close();
            newdoc.Dispose();

            // 元のドキュメントオブジェクトを閉じてリソースを解放する
            document.Close();
            document.Dispose();
        }
    }
}

C#:Word 文書からコンテンツを読み取る方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Word ドキュメントにページを追加、挿入、削除することは、コンテンツの管理と提示にとって重要です。Word に新しいページを追加または挿入することで、ドキュメントを拡張してより多くのコンテンツを収容し、より構造化され読みやすくすることができます。ページを削除することで、不必要な情報や誤ったコンテンツを取り除いてドキュメントを整理するのに役立ちます。この記事では、Spire.Doc for .NET を使用して C# プロジェクト内で Word ドキュメントにページを追加、挿入、または削除する方法を説明します。

Spire.Doc for .NET をインストールします

まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Doc

C# を使用して Word ドキュメントにページを追加する

Word ドキュメントの末尾に新しいページを追加する手順は、まず最後のセクションを取得し、そのセクションの最後の段落の末尾に改ページを挿入して、後で追加されるコンテンツが新しいページに表示されるようにすることです。以下は詳細な手順です:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • Document.LastSection.Body を使用してドキュメントの最後のセクションの本文を取得する。
  • Paragraph.AppendBreak(BreakType.PageBreak) メソッドを呼び出して改ページを追加する。
  • 新しい ParagraphStyle オブジェクトを作成する。
  • Document.Styles.Add() メソッドを使用して新しい段落スタイルをドキュメントのスタイルコレクションに追加する。
  • 新しい Paragraph オブジェクトを作成し、テキストコンテンツを設定する。
  • Paragraph.ApplyStyle(ParagraphStyle.Name) メソッドを使用して、以前に作成した段落スタイルを新しい段落に適用する。
  • Body.ChildObjects.Add(Paragraph) メソッドを使用して新しい段落をドキュメントに追加する。
  • Document.SaveToFile() メソッドを使用して結果のドキュメントを保存する。
  • C#
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Pages;

namespace AddPageWord
{
    class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // ドキュメントをロードする
            document.LoadFromFile("Sample.docx");

            // ドキュメントの最後のセクションの本文を取得する
            Body body = document.LastSection.Body;

            // 本文の最後の段落の後に改ページを挿入する
            body.LastParagraph.AppendBreak(BreakType.PageBreak);

            // 新しい段落スタイルを作成する
            ParagraphStyle paragraphStyle = new ParagraphStyle(document);
            paragraphStyle.Name = "CustomParagraphStyle1";
            paragraphStyle.ParagraphFormat.LineSpacing = 12;
            paragraphStyle.ParagraphFormat.AfterSpacing = 8;
            paragraphStyle.CharacterFormat.FontName = "Yu Mincho";
            paragraphStyle.CharacterFormat.FontSize = 12;

            // ドキュメントのスタイルコレクションに段落スタイルを追加する
            document.Styles.Add(paragraphStyle);

            // 新しい段落を作成し、テキスト内容を設定する
            Paragraph paragraph = new Paragraph(document);
            paragraph.AppendText("弊社の Spire.Doc for .NET 製品をご利用いただきありがとうございます。試用版では生成されるドキュメントに赤い透かしが追加され、最初の10ページのみ他の形式に変換可能です。ライセンスを購入して適用すると、これらの透かしが削除され、機能制限が解除されます。");

            // 段落スタイルを適用する
            paragraph.ApplyStyle(paragraphStyle.Name);

            // 段落を本文のコンテンツコレクションに追加する
            body.ChildObjects.Add(paragraph);

            // もう一つの新しい段落を作成し、テキスト内容を設定する
            paragraph = new Paragraph(document);
            paragraph.AppendText("製品をより完全に体験していただくために、お客様には1ヶ月の無料仮ライセンスを提供しています。sales @e-iceblue.com にメールを送っていただければ、1営業日以内にライセンスをお送りします。");

            // 段落スタイルを適用する
            paragraph.ApplyStyle(paragraphStyle.Name);

            // 段落を本文のコンテンツコレクションに追加する
            body.ChildObjects.Add(paragraph);

            // 指定されたパスにドキュメントを保存する
            document.SaveToFile("Wordにページを追加.docx", FileFormat.Docx);

            // ドキュメントを閉じる
            document.Close();

            // ドキュメントオブジェクトのリソースを解放する
            document.Dispose();
        }
    }
}

C#:Word 文書にページを追加、挿入、削除する方法

C# を使用して Word ドキュメントにページを挿入する

新しいページを挿入する前に、セクション内の指定されたページコンテンツの終了位置インデックスを特定する必要があります。その後、この位置の後に新しいページのコンテンツを一つずつドキュメントに追加します。最後に、コンテンツを後続のページから分離するために改ページを追加することが重要です。詳細な手順は以下の通りです:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • FixedLayoutDocument オブジェクトを作成する。
  • ドキュメント内のページの FixedLayoutPage オブジェクトを取得する。
  • セクション内のページの最後の段落のインデックス位置を特定する。
  • 新しい ParagraphStyle オブジェクトを作成する。
  • Document.Styles.Add() メソッドを使用して新しい段落スタイルをドキュメントのスタイルコレクションに追加する。
  • 新しい Paragraph オブジェクトを作成し、テキストコンテンツを設定する。
  • Paragraph.ApplyStyle(ParagraphStyle.Name) メソッドを使用して、以前に作成した段落スタイルを新しい段落に適用する。
  • Body.ChildObjects.Insert(index, Paragraph) メソッドを使用して指定された位置に新しい段落を挿入する。
  • もう一つの新しい段落オブジェクトを作成し、そのテキストコンテンツを設定し、Paragraph.AppendBreak(BreakType.PageBreak) メソッドを呼び出して改ページを追加し、以前に作成した段落スタイルを適用し、次にこの段落をドキュメントに挿入する。
  • Document.SaveToFile() メソッドを使用して結果のドキュメントを保存する。
  • C#
using Spire.Doc;
using Spire.Doc.Pages;
using Spire.Doc.Documents;

namespace InsertPageWord
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // サンプルドキュメントをファイルからロードする
            document.LoadFromFile("Sample.docx");

            // 固定レイアウトドキュメントオブジェクトを作成する
            FixedLayoutDocument layoutDoc = new FixedLayoutDocument(document);

            // 最初のページを取得する
            FixedLayoutPage page = layoutDoc.Pages[0];

            // ドキュメントの本文を取得する
            Body body = page.Section.Body;

            // 現在のページの最後の段落を取得する
            Paragraph paragraphEnd = page.Columns[0].Lines[page.Columns[0].Lines.Count - 1].Paragraph;

            // 終了インデックスを初期化する
            int endIndex = 0;
            if (paragraphEnd != null)
            {
                // 最後の段落のインデックスを取得する
                endIndex = body.ChildObjects.IndexOf(paragraphEnd);
            }

            // 新しい段落スタイルを作成する
            ParagraphStyle paragraphStyle = new ParagraphStyle(document);
            paragraphStyle.Name = "CustomParagraphStyle1";
            paragraphStyle.ParagraphFormat.LineSpacing = 12;
            paragraphStyle.ParagraphFormat.AfterSpacing = 8;
            paragraphStyle.CharacterFormat.FontName = "Yu Mincho";
            paragraphStyle.CharacterFormat.FontSize = 12;

            // ドキュメントのスタイルコレクションに段落スタイルを追加する
            document.Styles.Add(paragraphStyle);

            // 新しい段落を作成し、テキスト内容を設定する
            Paragraph paragraph = new Paragraph(document);
            paragraph.AppendText("弊社の Spire.Doc for .NET 製品をご利用いただきありがとうございます。試用版では生成されるドキュメントに赤い透かしが追加され、最初の10ページのみ他の形式に変換可能です。ライセンスを購入して適用すると、これらの透かしが削除され、機能制限が解除されます。");

            // 段落スタイルを適用する
            paragraph.ApplyStyle(paragraphStyle.Name);

            // 指定された位置に段落を挿入する
            body.ChildObjects.Insert(endIndex + 1, paragraph);

            // もう一つの新しい段落を作成する
            paragraph = new Paragraph(document);
            paragraph.AppendText("製品をより完全に体験していただくために、お客様には1ヶ月の無料仮ライセンスを提供しています。sales @e-iceblue.com にメールを送っていただければ、1営業日以内にライセンスをお送りします。");

            // 段落スタイルを適用する
            paragraph.ApplyStyle(paragraphStyle.Name);

            // 改ページを追加する
            paragraph.AppendBreak(BreakType.PageBreak);

            // 指定された位置に段落を挿入する
            body.ChildObjects.Insert(endIndex + 2, paragraph);

            // 指定されたパスにドキュメントを保存する
            document.SaveToFile("Wordにページを挿入.docx", Spire.Doc.FileFormat.Docx);

            // ドキュメントを閉じ、リソースを解放する
            document.Close();
            document.Dispose();
        }
    }
}

C#:Word 文書にページを追加、挿入、削除する方法

C# を使用して Word ドキュメントからページを削除する

ページのコンテンツを削除するには、まずドキュメント内のそのページの開始要素と終了要素のインデックス位置を特定します。その後、これらの要素を一つずつ順に削除するためにループを利用します。詳細な手順は以下の通りです:

  • Document オブジェクトを作成する。
  • Document.LoadFromFile() メソッドを使用して Word ドキュメントを読み込む。
  • FixedLayoutDocument オブジェクトを作成する。
  • ドキュメント内の最初のページの FixedLayoutPage オブジェクトを取得する。
  • FixedLayoutPage.Section プロパティを使用してページが存在するセクションを取得する。
  • セクション内のページの最初の段落のインデックス位置を特定する。
  • セクション内のページの最後の段落のインデックス位置を特定する。
  • for ループを使用してページのコンテンツを一つずつ削除する。
  • Document.SaveToFile() メソッドを使用して結果のドキュメントを保存する。
  • C#
using Spire.Doc;
using Spire.Doc.Pages;
using Spire.Doc.Documents;

namespace DeletePageWord
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 新しいドキュメントオブジェクトを作成する
            Document document = new Document();

            // サンプルドキュメントをファイルからロードする
            document.LoadFromFile("Wordにページを挿入.docx");

            // 固定レイアウトドキュメントオブジェクトを作成する
            FixedLayoutDocument layoutDoc = new FixedLayoutDocument(document);

            // 2ページ目を取得する
            FixedLayoutPage page = layoutDoc.Pages[1];

            // ページのセクションを取得する
            Section section = page.Section;

            // 1ページ目の最初の段落を取得する
            Paragraph paragraphStart = page.Columns[0].Lines[0].Paragraph;
            int startIndex = 0;
            if (paragraphStart != null)
            {
                // 開始段落のインデックスを取得する
                startIndex = section.Body.ChildObjects.IndexOf(paragraphStart);
            }

            // 最後のページの最後の段落を取得する
            Paragraph paragraphEnd = page.Columns[0].Lines[page.Columns[0].Lines.Count - 1].Paragraph;

            int endIndex = 0;
            if (paragraphEnd != null)
            {
                // 終了段落のインデックスを取得する
                endIndex = section.Body.ChildObjects.IndexOf(paragraphEnd);
            }

            // 指定された範囲内のすべてのコンテンツを削除する
            for (int i = 0; i <= (endIndex - startIndex); i++)
            {
                section.Body.ChildObjects.RemoveAt(startIndex);
            }

            // 指定されたパスにドキュメントを保存する
            document.SaveToFile("Wordからページを削除.docx", Spire.Doc.FileFormat.Docx);

            // ドキュメントを閉じ、リソースを解放する
            document.Close();
            document.Dispose();
        }
    }
}

C#:Word 文書にページを追加、挿入、削除する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。