こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excel画面をAdobe PDF で出力するには

Windows7、 office2007を使用しています。Excel で作成したテストの成績表を、一人ひとり自動的にプリントアウトしているのですが、これを Adobe PDF でファイル保存したいと思います。マクロで実行することはできるのでしょうか?ファイル名は生徒1、生徒2,生徒3、・・・として連続で自動的に保存したいのですが。

投稿日時 - 2011-03-03 21:38:53

QNo.6565727

すぐに回答ほしいです

質問者が選んだベストアンサー

こんばんは。

PDFファイルを作成するのにPDF作成仮想プリンタを使っているようですが、お使いのExcelはバージョンが2007ですよね?2007からはPDFファイルとして保存できるようになりました。
「名前をつけて保存」にPDFがあります。

No.2さんはその方法を提示しています。

投稿日時 - 2011-03-04 01:43:43

お礼

PDFファイルで保存できるとは知りませんでした。N0.2さんのマクロを参考に、マクロを作成し実行しました。思い通りに実行できました。有り難うございました。助かりました。

投稿日時 - 2011-03-04 22:09:57

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(5)

ANo.5

No.2です

No.4さんありがとうございます!仰るとおりです!

これで作りますと、問題はExcel2003で動きません・・・。

マクロの記録で名前を付けて保存⇒PDF とやってみて、そのソースを見ていただければ
わかると思います。

投稿日時 - 2011-03-04 16:03:04

お礼

有り難うございました。マクロ作成の参考とさせていただきました。PDF保存が出来るとは知りませんでしたので、この方法は助かりました。マクロの記録から作成することが出来ました。有り難うございました。

投稿日時 - 2011-03-04 22:17:09

ANo.3

とりあえず,ウィンドウズの設定で標準のプリンタをAdobe PDFにしておいて,その際に添付図のように各部を調整しておきます。
その後エクセルを起動し,一人ずつマクロで印刷していきます。

ただし,保存されるPDFファイル名はブック名になりますので,

>Excel で作成したテストの成績表を、一人ひとり自動的にプリントアウトしている

の手順を少し手直して

1.1人分の成績表を画面に(1シートに?)表示する
2.一度ブックをその生徒の名前で保存する
3.その一人分の印刷が出るよう,上述設定を施したAdobePDFプリンタで印刷する
4.次の生徒を繰り返す

のように組み立ててみてください。

投稿日時 - 2011-03-04 00:43:17

お礼

ご丁寧な回答有り難うございました。PDF保存の方法で実行することが出来ました。有り難うございました。

投稿日時 - 2011-03-04 22:20:16

ANo.2

出来ますよ。

わが社では請求書をマクロでpdf化して発行しています。

我々がやっている方法です
1.マスターデータのシートを作る。
2.プリントアウト用のシートを作る
3.VBAを作ってでマスターデータから生徒1のデータを取得してプリントアウト用のシートに代入して、
ThisWorkbook.ExportAsFixedFormat xlTypePDF, "保存先\生徒1.pdf", xlQualityStandard, True, True
これを生徒数分繰り返す。


で出来ます。

投稿日時 - 2011-03-03 21:49:10

お礼

早速のご回答を有り難うございます。マスターデータシート、プリントアウト用シートは作成してあります。プリンターで印刷するマクロは作成してあります。これをPDFで保存したいのですが、印刷のプリンター選択で、"Adobe PDF"を選択してPDF ファイルを作成したときのマクロ記録の結果は次の通りになりました。
Application.ActivePrinter ="Adobe PDF on Ne04”
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,,2,""Adobe PDF on Ne04:"",,TRUE,,FALSE)"

これと回答のThisWorkbook・・・とは、どういうように利用したらよいのでしょうか?プログラムの作成方法がわかりません。よろしくお願いします。

投稿日時 - 2011-03-03 22:12:08

ANo.1

一度容量は大きくてもいいので、すべての生徒の成績表を一つのPDFに落とした後、
フリーソフトを使って、すべて分割すれば一発じゃないでしょうか。

投稿日時 - 2011-03-03 21:45:00