• ベストアンサー

VBAで、指定したセルの文字のPDFファイルを印刷したいのですが。

VBAで、指定したセルの文字のPDFファイルを印刷したいのですが。 VBAの起動時に、指定したセルの文字をファイル名として読み取って、 そのファイル名のPDFファイルを自動印刷させたいのですが、 セルの文字を、PDFの起動パスにセットする方法が分かりませんので ご教授いただけませんでしょうか。 具体的にはこの様な処理を考えています。 A1セルの文字を、PDFのファイル名にします。 PDFファイルは、C:¥PDFファイル に保存されています。 A1に「てすと」の文字があれば、「てすと.pdf」が印刷されます。 お手数ですが宜しくお願いいたします。

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

  • ベストアンサー
  • 0909union
  • ベストアンサー率39% (325/818)
回答No.1

意味不明なことが多々ありますが、PDFファイルにするには2つ法方があります。 とりあえず仕組みだけ。 まず印刷対象の取得をします。これは印刷対象を作成した、又は表示できるソフトがCOMに対応していないとだめですね。 Visual Basicのヘルプで getobject で検索して、リファレンスと使用例を見ましょう。 次にそのオブジェクトのメソッドに印刷メソッドが使えるか探ります。MicrosoftOffice系ならほとんどの場合大丈夫です。 例: Set MyXL = Getobject("c:\vb4\MYTEST.XLS") ActiveSheet.PrintOut エクセルなら同じようにヘルプで印刷とすれば、印刷の指定の仕方がでます。リファレンスを見ましょう。上記は当然PrintOutメソッドのオプションを指定しないとPDFになりませんね。 GetObject対象がCOMを公開又は未対応であれば、エクスプローラーのCOMを使用して、GUIの操作をスクリプトレベルで行えばいいです。 ネット上で"Shell.Application"で検索してください。 あなたの場合ファイル名だけ気にしているようですが、その前にたくさん解決しなければ、いけない問題がありますね。

wise123
質問者

お礼

過去の投稿などを見て解決できました。 ご回答していただきありがとうございました。

wise123
質問者

補足

さっそくのご回答ありがとうございます。 意味不明な説明で申し訳ありませんでした。 補足説明をさせていただきます。 印刷対象のPDFファイルは既に、c:¥PDFファイル に存在しています。 VBAの処理で、A1セルの文字を読み取って該当の PDFファイルの自動印刷を行うようにしたいと考えております。 例えば、c:¥PDFファイルのフォルダ内に、 「AAA.pdf」、「BBB.pdf」、「CCC.pdf」が存在している状態で、 VBAを起動させて、A1セルに「BBB」の文字があれば 「BBB.pdf」が印刷されます。 以上宜しくお願い致します。

すると、全ての回答が全文表示されます。

関連するQ&A

このQ&Aのポイント
  • フリーウェイ経理で、売上と仕入れの残高が帳簿に反映されず、更新ができない状況が発生しています。
  • 経理ソフトを使用しているが、元帳以外の帳簿に情報が反映されておらず、解決方法を模索中です。
  • フリーウェイジャパンの製品を使用しているユーザーが、残高更新の方法についての情報を求めています。
回答を見る

専門家に質問してみよう