小技集

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ



2025年8月29日【ID:0】

メンバー限定

【ExcelVBA】差し込みで複数のPDFファイルを自動生成

※IT予備メンバーに加入して連携すると、
一部の広告が非表示になります。


以下の表は、セルC2に入力した値に応じてデータが抽出されるように作られています。

今回は、このセルC2の値を「A→B→C」のように好みの値に切り替えながら、このシートの印刷範囲の内容をPDFファイルにして自動で保存する仕組みを実現していきます。

※こちらで実現したファイルは記事の最後にて配布しています。


1. 開発手順

まず初めに、[開発]タブを選択し、[マクロ]を選択します。

表示された以下の画面にて、開発する機能の名前を入力し、[作成]を選択します。
こちらでは、「ExportToPDF」と入力しています。

次に表示される以下の画面の「Sub ○○」から「End Sub」の間にコードを記述します。


2. コードの記述(PDFファイル出力)

以下のコードを記述します。

Sub ExportToPDF()
    
    Dim fPath As String
    fPath = ThisWorkbook.Path
    
    Worksheets("PDF出力").ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=fPath & "\Sample.pdf"
    
End Sub

では、コードについて解説していきます。

    Dim fPath As String
    fPath = ThisWorkbook.Path

「fPath」という変数(入れ物)を用意し、現在開いているExcelファイルの保存先のフォルダのパスを「fPath」に格納しています。
そのため、取得されるパスは環境により異なります。

こちらの環境の場合は、以下のパスが取得されます。

A:\PDF出力
    Worksheets("PDF出力").ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=fPath & "\Sample.pdf"

「PDF出力」というシートの印刷範囲をPDF形式(Type:=xlTypePDF)で保存しています。
保存先とファイル名は、パスで指定します。
こちらでは以下のように、Excelファイルと同じ配下に「Sample.pdf」という名前で保存しています。

Filename:=fPath & "\Sample.pdf"

以上のコードを実行することで、以下のようにPDFファイルを作成することができます。

ただこのままでは、セルC2の値を手動で変更する必要があります。
そこで、次のように修正します。


3. コードの記述(引数の設定)

以下のように修正します。


続きはIT予備メンバー限定です。

メンバー限定コンテンツになります。




IT予備メンバーページと連携することで内容を確認することができます。

メンバーとは


すでにメンバーの方は、
ログインして連携してから、こちらを更新すると閲覧できます。
※連携しても確認ができない場合は、少し時間を置いてご確認ください。

ログイン(新しいタブ)
※[ログイン]→[設定]→[IT予備-連携]で連携できます


パソコンで開く場合は、記事の最後に「リンクコピー」があるためご活用ください。

※IT予備メンバーに加入して連携すると、
一部の広告が非表示になります。


小技集-電子書籍販売ページ 小技集-電子書籍販売ページ
メンバー募集 メンバー募集






リンクの共有はこちらから行えます。

  リンクコピー    X Facebook はてなブックマーク Pocket
トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ


- 人気の記事 -



- メンバー限定 [一覧] -



サイト累計閲覧数

7469742

有料動画講座
(買い切り)

Excel完全制覇


ちょっとした機能 便利ツール
【小技集】

【Excel】月単位の合計を数式で求める

【ExcelVBA】データ変更と同時にピボットテーブルを自動更新

【Excel】数式で年齢を求める方法【2選】

【ExcelVBA】半角文字を自動で全角文字に変換

【Word】自動で現在の日付や時刻を更新する

【ExcelVBA】選択セルの列幅を自動調整

【Excel】期間外のデータを非表示にする

【Excel】開発不要の登録フォーム

【Excel】各フォルダへのハイパーリンクを瞬時に作成

【Excel】表の行列を入れ替えて表示する

【ExcelVBA】チェックしたら行が自動で非表示になる表

【Excel】散布図で値が重複する場合の対策

【Excel】表の中に集計行を瞬時に挿入

【Excel】スピンボタンで文字入力

【ExcelVBA】入力と同時に値を上に詰める

【Excel】吹き出しの図形の三角の幅を自由に調整する方法

【ExcelVBA】VBAを使ってシートの初期設定を自動化

【Excel】条件付き書式で文字数チェック機能を実現

【ExcelVBA】データを入力する度に自動で並べ替え

【ExcelVBA】ボタンを押すだけで「データ削除&上詰め」

【Excel】日付を和暦で表示する

【Excel】予定表から労働時間を色んな形式で求める

【Excel】クイックアクセスツールバーをブック単位で設定

【ExcelVBA】Functionで複数の戻り値を設定

【Excel】BYROW(COL)関数でスピル非対応の関数を対応させる





一覧ページへ

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ

メンバーに加入すると多くの特典が得られます

各プラン特典一覧 各プラン特典一覧

 加入ページへ 
⚠️今が最安値です⚠️

※メンバーページと連携すると表示されなくなります