- ベストアンサー
VBAでEXCELに埋め込んだPDFを開く方法
あらかじめPDFファイルをシート内に貼り付けておき、 ユーザーフォーム上のボタンを押した時に、 PDFファイルを開くマクロを探しております。 参照パスを指定のフォルダにしなくても良い方法として あらかじめPDFファイルを貼り付ける事を考えました。 尚、使用しているexcelは2010です。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
そもそもマクロの前に >あらかじめPDFファイルをシート内に貼り付けておき、 この部分は既に実現できているのですか?どうやって(エクセルをどのように操作して)実現しているのでしょうか。 それともまだナニも手をつけていないので,そういうことができる準備の段取りから聞きたいご質問でしょうか。 >PDFファイルを開くマクロを探しております。 手順: 挿入のオブジェクトのファイルから,PDFファイルを(推奨:アイコンで表示)挿入する そういうオブジェクトが1つシートに挿入してあるとすると,マクロは worksheets("Sheet1").oleobjects(1).verb と書いておけば,開いてくれます。
その他の回答 (2)
- kybo
- ベストアンサー率53% (349/647)
挿入→オブジェクト→ファイルから→参照→PDFを選んでOK の操作をマクロ記録すればよいかと思います。
お礼
ご回答有難うございます。 マクロ記録には ActiveSheet.OLEObject.Add(Filename:= _ "アドレス先", Link:=False, _ DisplayAsIcon:=False).Select とありますが、 kybo様の回答はNo.1様のハイパーリンクに対しまして、 ファイルのアドレスが分かるという事で宜しいしょうか?
- bin-chan
- ベストアンサー率33% (1403/4213)
「ハイパーリンク」で良いのでは?
お礼
ご回答有難うございます。 ハイパーリンクとはリンク先のファイルを開く事だと思うのですが、 Private Sub Bottun1_Click() ActiveWorkbook.FollowHyperlink _ Address:=アドレス先, _ '""内はアドレス先 SubAddress:="#2", _ Newwindow:=true End Sub と書いた時、アドレス先が例えばC:\Documents and Settings\All Users\Documents\ABC.PDF であれば、リンク先のPDFが開けるのですが、オブジェクト内に埋めたファイルのアドレスが分からなかったので、 アドレスについて調べてみます。
お礼
ご回答有難うございます。 ファイル挿入の部分は問題なかったのですが、どの様にしてPDFを開くのかが分からなかったので、ご質問しました。 ユーザーフォームを開くボタンがSheet1にあり、PDFファイルをSheet2に貼り付け、 ユーザーフォーム上にButton1を置いて、Button1をクリックした時にSheet2のPDFを開くという 一連の流れを組みたいという質問で、解決いたしました。 Private Sub Button1_Click() Worksheets("Sheet2").OLEObjects(1).Verb Worksheets("Sheet1").select 'sheet2に移動したままになるので、sheet1に戻るための1文 End Sub