• 公開日:

VBAでPDFを分割する無料ソフト

VBAを使ってPDFを分割する方法ををご紹介します。

VBAはコードを用いることで複雑な操作を簡略化し、作業効率を向上させることができるツールです。

ページ数が多い文書の場合には、ぜひVBAを使って、面倒な手間をかけずにPDFを分割してみてください。

Adobe Acrobat Readerの基本情報

Adobe Acrobat Reader

Adobe Acrobat Reader

評価: 0.0 (0)
評価をする:

☆を押した後にレビューができます

レビュー: (0)

    日本語: 〇
    オンライン(インストール不要): 〇
    オフライン(インストール型): 〇

    Adobe Acrobat Readerを使ってVBAでPDFを分割する方法

    VBAでPDFを分割する方法をご紹介します。

    Adobe Acrobat Readerの有料版である「Acrobat Pro」とExcelを連携することで、PDFの分割がVBAで行えるようになります。

    まずは初回の無料トライアル期間で機能性を確かめてから、有料版の導入もご検討ください。

    以下ではWindows 11を使って、VBAでPDFを分割する方法をご説明します。

    visualbasicを選択する

    Excelを起動します。

    開発タブ、②「Visual Basic」の順に選択します。

    参照設定を選択する

    「Microsoft Visual Basic for Applications」が開きました。

    今回のマクロでは、「Adobe Acrobat」という外部機能にアクセスする必要があるため、まず参照設定に「Acrobat」を追加します。

    「ツール」タブ、②「参照設定」の順に選択します。

    Acrobatにチェックマークを付ける

    「参照設定 – VBAProject」ダイアログボックスが表示されました。

    「Acrobat」にチェックマークを付け、②「OK」ボタンを押します。

    標準モジュールを選択する

    参照設定に「Acrobat」を追加できました。次に、VBAコードを入力します。

    「挿入」タブ、②「標準モジュール」の順に選択します。

    コードを入力する

    以下のVBAコードをコピーして貼り付けます。

    Sub PDFを分割する()
        Const folderPath As String = "フォルダーパス"
        Const inputFilePath As String = folderPath & "ファイル名"
        Dim acrobatPDDocObj As Object, i As Integer
        Dim pageRanges As Variant, outputFilePath As String
        
        pageRanges = Array(Array(1, 3), Array(4, 6)) ' 分割するページ範囲
    
        For i = 0 To UBound(pageRanges)
            Set acrobatPDDocObj = CreateObject("AcroExch.PDDoc")
            If acrobatPDDocObj.Open(inputFilePath) Then
                With acrobatPDDocObj
                    ' 最初の範囲の後ろを削除
                    If pageRanges(i)(1) < .GetNumPages Then .DeletePages pageRanges(i)(1), .GetNumPages - 1
                    ' 最初の範囲の前を削除
                    If pageRanges(i)(0) > 1 Then .DeletePages 0, pageRanges(i)(0) - 2
                    outputFilePath = folderPath & "出力ファイルの基本名" & (i + 1) & ".pdf"
                    .Save PDSaveFull, outputFilePath
                    .Close
                End With
            End If
            Set acrobatPDDocObj = Nothing
        Next i
    End Sub

    なお「フォルダーパス」「ファイル名」には、PDFを保存しているファルダーパスやファイル名を入力する必要があります。

    また、「Array(Array(1, 3), Array(4, 6))」にて分割する際のページを指定しています。このコードでは「1~3」「4~6」ページで、2つのファイルに分割されます。

    そして、「出力ファイルの基本名」には分割後のファイル名を入力しましょう。例えば今回は「分割ファイル」と入力しているため、分割後のファイルは「分割ファイル1」「分割ファイル2」となります。

    上書き保存を選択する

    作成したマクロを保存します。

    「ファイル」タブ、②「上書き保存」の順に選択します。

    VBAを保存する

    「名前を付けて保存」ダイアログボックスが表示されました。

    任意の保存先(例:デスクトップ)を選択し、②ファイル名(例:VBAでPDFを分割する)を入力します。

    ③「ファイルの種類」で「Excel マクロ有効ブック」を選択し、④「保存」ボタンを押します

    以上の操作で作成したマクロが保存されます。次に、Excelシートに戻り、マクロを実行しましょう。

    マクロを選択する

    Excelシートに戻りました。

    「開発」タブ、②「マクロ」の順に選択します。

    マクロを実行する

    「マクロ」ダイアログボックスが表示されました。

    作成したマクロ(例:PDFを分割する)を選択し、②「実行」ボタンを押します

    以上の操作で、作成したマクロによりPDFが分割されます。

    分割されたファイルを開く

    次に、PDFが正しく分割されているか確認します。

    「エクスプローラー」、②元のPDFの保存先(例:デスクトップ)を順に開きます。

    1つ目の分割されたPDF(例:分割ファイル1)をダブルクリックします。

    PDFが分割されている

    PDFが表示され、コードで指定した通り(例:1~3ページ)に分割されていることを確認できました。

    その他のPDFも指定した通りに分割されているか、同じように確認してください。

    以上で、VBAを使ってPDFを分割することができました。

    問題は解決できましたか?

    記事を読んでも問題が解決できなかった場合は、無料でAIに質問することができます。回答の精度は高めなので試してみましょう。

    質問例1
    PDFを結合する方法を教えて
    質問例2
    iLovePDFでできることを教えて
    あなた

    あと100文字

    コメント

    この記事へのコメントをお寄せ下さい。