メインコンテンツへスキップ

Word文書を複数の文書に分割する方法は?

Author: Amanda Li Last Modified: 2025-05-23

大きなWord文書を複数の小さな文書に分割する必要がある場合、このチュートリアルでは3つの効果的な方法を紹介します。特定の区切り文字やページごとにVBAを使用して分割する方法、またはKutools for Wordの簡素化された機能を利用する方法など、ニーズに合った解決策が見つかります。


VBAを使用して指定した区切り文字でWord文書を分割する

手動で文書を分割する代わりに、VBAを使用して特定の区切り文字でWord文書を分割できます。以下の手順に従ってください:

  1. Alt + F11を押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。
  2. クリックします 挿入 > モジュールそして、以下のVBAコードをモジュールウィンドウに貼り付けます。
    Sub SplitNotes(delim As String, strFilename As String)
    Dim doc As Document
    Dim arrNotes
    Dim I As Long
    Dim X As Long
    Dim Response As Integer
    arrNotes = Split(ActiveDocument.Range, delim)
    Response = MsgBox("This will split the document into " & UBound(arrNotes) + 1 & " sections. Do you wish to proceed?", 4)
    If Response = 7 Then Exit Sub
    For I = LBound(arrNotes) To UBound(arrNotes)
    If Trim(arrNotes(I)) <> "" Then
    X = X + 1
    Set doc = Documents.Add
    doc.Range = arrNotes(I)
    doc.SaveAs ThisDocument.Path & "\" & strFilename & Format(X, "000")
    doc.Close True
    End If
    Next I
    End Sub
    Sub test()
    'delimiter & filename
    SplitNotes "///", "Notes "
    End Sub
  3. 実行ボタンをクリックするか、F5キーを押してVBAを実行します。
  4. Microsoft Wordのポップアップで、[はい]をクリックして確認します。

    Confirmation dialog

注意:

  • スクリプトは、文書内の「///」(コードの22行目)を探して、テキストを別々のファイルに分割するポイントを識別します。文書内の区切り文字が「///」と異なる場合は、正しい区切り文字を反映するようにVBAコードを更新するか、文書に「///」を追加する必要があります。
  • コードの22行目の「Notes」を任意のテキストに置き換えることで、分割文書により意味のあるファイル名の接頭辞を作成できます。
  • 分割された文書は、元のファイルと同じ場所に保存されます。
  • 文書の最後に区切り文字は不要です。そうでない場合、空白のファイルが作成されます。

Kutools for Wordを使用して見出し/ページ/セクション区切り/改ページでWord文書を分割する

Kutools for Wordは、手動での方法やVBAと比較して、より便利で柔軟な文書分割方法を提供します。見出し、ページ、セクション区切り、改ページ、nページごと、またはカスタムページ範囲で文書を分割する複数のオプションがあり、ニーズに合わせて分割プロセスを調整できます。

Kutools for Wordについて、AI 🤖を搭載し、100 以上の便利な機能を提供して作業を簡素化します。
  1. [Kutools Plus] > [分割]をクリックして、分割機能を有効にします。

    Split option on the Kutools Plus tab on the ribbon

  2. [文書の分割]ダイアログで、次のオプションを設定します:
    Kutools Split Document dialog box
    1. [分割方法]ドロップダウンリストから分割方法を選択します。利用可能なオプションには、見出し 1、改ページ、セクション区切り、ページ、nページごと、またはカスタムページ範囲が含まれます。

      Split by options

    2. クリックします 参照 ボタン Path selection button 分割文書の保存先フォルダーを選択します。
    3. 新しい文書名の接頭辞として使用するキーワードを入力します。 文書の接頭辞 フィールドに記入します。 ヒント: クリックすると 更新 ボタン Refresh button 分割文書名をプレビューできます。 プレビュー ボックスに表示されます。
    4. [OK]をクリックします。

文書は指定された方法で分割され、新しいファイルは指定されたフォルダーに保存されます。

注意:

  • 「nページごと」で分割する場合、関連するボックスに数字を指定します。

    Split by Every n pages

  • カスタムページ範囲の場合は、カンマで区切って入力します(例:1,3-5,12)。

    Custom Page Ranges

Kutools for Word は、作業を効率化し、文書処理スキルを向上させる究極の Word アドインです。今すぐ入手してください!

複数のWord文書をChromeやEdgeのようにタブで閲覧・編集!

Chrome、Safari、Edgeで複数のウェブページを閲覧するように、Office Tabを使えば、一つのウィンドウで複数のWord文書を開き、管理できます。文書間の切り替えは、タブをクリックするだけで簡単に行えます!
今すぐOffice Tabを無料で試してみましょう!

Browse multiple word documents in one window just like in Chrome


VBAを使用してページ単位でWord文書を分割する

Word文書を各ページごとに複数の文書に迅速に分割する必要がある場合、VBAマクロを使用してこのタスクを自動化できます。以下の手順に従ってください:

  1. Alt + F11を押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。
  2. クリックします 挿入 > モジュール次に、次のVBAコードを新しいモジュールウィンドウに貼り付けます:
    Sub SplitIntoPages()
    Dim docMultiple As Document
    Dim docSingle As Document
    Dim rngPage As Range
    Dim iCurrentPage As Integer
    Dim iPageCount As Integer
    Dim strNewFileName As String
    Application.ScreenUpdating = False 'Makes the code run faster and reduces screen flicker a bit.
    Set docMultiple = ActiveDocument 'Work on the active document
    Set rngPage = docMultiple.Range 'Instantiate the range object
    iCurrentPage = 1
    'Get the document's page count
    iPageCount = docMultiple.Content.ComputeStatistics(wdStatisticPages)
    Do Until iCurrentPage > iPageCount
        If iCurrentPage = iPageCount Then
            rngPage.End = ActiveDocument.Range.End 'Last page (no next page)
        Else
            'Find the beginning of the next page
            'Must use the Selection object. The Range.Goto method will not work on a page
            Selection.GoTo wdGoToPage, wdGoToAbsolute, iCurrentPage + 1
            'Set the end of the range to the point between the pages
            rngPage.End = Selection.Start
        End If
        rngPage.Copy 'Copy the page into the Windows clipboard
        Set docSingle = Documents.Add 'Create a new document
        docSingle.Range.Paste 'Paste the clipboard contents to the new document
        'Remove any manual page break to prevent a second blank
        docSingle.Range.Find.Execute Findtext:="^m", ReplaceWith:=""
        'Build a new sequentially numbered file name based on the original multi-paged file name and path
        strNewFileName = Replace(docMultiple.FullName, ".doc", "_" & Right$("000" & iCurrentPage, 4) & ".doc")
        docSingle.SaveAs strNewFileName 'Save the new single-paged document
        iCurrentPage = iCurrentPage + 1 'Move to the next page
        docSingle.Close 'Close the new document
        rngPage.Collapse wdCollapseEnd 'Go to the next page
    Loop 'Go to the top of the do loop
    Application.ScreenUpdating = True 'Restore the screen updating
    'Destroy the objects.
    Set docMultiple = Nothing
    Set docSingle = Nothing
    Set rngPage = Nothing
    End Sub
  3. 実行ボタンをクリックするか、F5キーを押してVBAを実行します。

注意: 分割された文書は、元のファイルと同じ場所に保存されます。


関連記事:


最高のオフィス生産性ツール

Kutools for Word - Wordの体験を100以上の素晴らしい機能で向上させましょう!

🤖 Kutools AI機能: AIアシスタント / リアルタイムアシスタント / スーパー ポリッシュ (形式を保持) / スーパー トランスレート (形式を保持) / AI編集 / AI校正...

📘 文書のマスタリー: ページの分割 / 文書の結合 / 様々な形式で選択をエクスポート (PDF/TXT/DOC/HTML...) / 一括PDF変換...

内容の編集: 複数ファイルにわたる一括検索と置換 /すべての画像をリサイズ / 表の転置 / 表をテキストに変換...

🧹 簡単なクリーンアップ:余分なスペース / セクション区切り / テキストボックス / ハイパーリンクを一掃 / その他の削除ツールは削除グループへ...

創造的な挿入: 千の区切りを挿入 / チェックボックス / ラジオボタン / QRコード / バーコード / 複数の画像 / 挿入グループでさらに発見...

🔍 精密な選択: 特定のページ / / 図形 / 見出し段落を特定 / より多くの 選択 機能でナビゲーションを強化...

スター強化: 任意の場所に移動 / 繰り返しテキストを自動挿入 / 文書ウィンドウ間を切り替え /11 変換ツール...

Kutools and Kutools Plus tabs on the Word Ribbon
👉これらの機能を試してみませんか?今すぐKutools for Wordをダウンロード!🚀