• ベストアンサー

Excelで埋め込んだPDFを開く

Excelで埋め込んだPDFを開く Acrobat7で作成したPDFを、Excelファイルに下記の操作で埋め込みました。 Excel2003で、「挿入」「オブジェクト」「ファイルから」 埋め込んだPDFをダブルクリックで開こうとすると、 「このオブジェクトの作成元アプリケーションを起動できません。」とメッセージが出ますが、 Acrobat7で開いてくれます。 しかし、キーワード検索して検索結果をクリックしてもそのページに飛びません。 Reader9を起動したまま、埋め込んだPDFをダブルクリックすると、起動しているReader9で開きます。 検索も正常です。 PDFの関連付けはReader9になっていて、デスクトップにあるPDFを単体で開くときはReader9になります。 Excel内のPDFをReader9で開く、Acrobat7でも正常に開く、どちらかにする方法はあるでしょうか?

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

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.5

>前の質問の時と同じように、二つとも削除してReader9入れてからAcrobat7入れたのですが、 >エクスプローラの異常終了が起きてしまい、直らなくなってしまいました。 誠に申し訳ありません。 私の安直なアドバイスの所為ですね。深く反省致します。 そちらのほうが大きな問題で、解決しないと先に進めないですよね、済みません。 別カテゴリで改めて質問されたほうが識者の方に見て頂けるかもしれません。 adobe.comを見てみましたがこれ、といった情報は見つからないようです。 #アップデイトの適用やインストールの修復などは試されてます..よね。 http://kb2.adobe.com/jp/cps/225/225338.html http://kb2.adobe.com/jp/cps/234/234070.html 現状の不具合が解消した後の事だと思いますが、 一応、ExcelのOLEObjectに関するレジストリ修正について書いておきます。 基本は 『Office アプリケーションのパスを調べる方法』 http://support.microsoft.com/kb/240794/ja ここと一緒です。 Excel[挿入]-[オブジェクト]で挿入されるのはOLEObjectというものです。 pdfファイルに関連付けされてるOLEObjectのprogIDは『AcroExch.Document.7』です。 kb240794に書かれてる手順で調べると、 HKEY_LOCAL_MACHINE\Software\Classes\AcroExch.Document.7\CLSID ここにCLSIDがあります。 {B801CA65-A1FC-11D0-85AD-444553540000} です。 このキーを検索すると HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{B801CA65-A1FC-11D0-85AD-444553540000}\LocalServer32 ここにOLEObject『AcroExch.Document.7』で開くプログラムのパスが書かれてますので Reader9.0のフルパスに書き換えれば良い..はずです。 私の環境ではこれで指定できますが、他に影響が出ないかどうか、正直なんとも言えません。 ..参考になれば良いのですが。

yurielna
質問者

お礼

Reader9入れ直してもダメなら、また前回と同じ方法でインストールすれば 同じようにエラーが出なくなると思っていたので、実行しました。 アドバイスはとても参考になります。 レジストリを変更してExcelからReader9で起動できました。 バックアップは取ってあるので、もし他に何か影響が出ましたら戻します。 エクスプローラの件は、インストールし直したりしてしばらく様子をみて 解決できない場合は、別途質問する事に致します。 ありがとうございました。  

その他の回答 (4)

  • end-u
  • ベストアンサー率79% (496/625)
回答No.4

>ダメのようです。 んー…そうでしたか、そんな不具合が...orz 申し訳ありません。 じゃレジストリ修正について書きますが、ちょっと時間ないのでしばらくお待ちください。

yurielna
質問者

補足

前の質問の時と同じように、二つとも削除してReader9入れてからAcrobat7入れたのですが、 エクスプローラの異常終了が起きてしまい、直らなくなってしまいました。

  • end-u
  • ベストアンサー率79% (496/625)
回答No.3

>#他の簡単な方法があるのかもしれませんが、私にはちょっとわかりませんでした。 WinXP/XL2003/Reader9.0/Acrobat9.0 の環境で確認したところ、Reader9.0を一度アンインストールして インストールし直せば良いようです。 >Reader9で開ければ一番良いのですが・・・ との事なので、Readerインストール時にPDFの関連付けをReader9にしてください。 インストール直後はExcel側でオブジェクトが追加できない不具合が出ましたが、 PCを再起動してレジストリが更新されれば大丈夫なようです。

yurielna
質問者

お礼

ありがとうございます。 Reader9を再インストールしました。 関連付けはReader9になっていました。 Excel内のPDFを開くと、Reader9で起動します。 ただ、Reader9を入れ直したので、Acrobat7を入れてからReader9を入れた状態になりました。 下記の症状が出るか心配で様子をみてみます。 http://okwave.jp/qa/q6179609.html さきほどReader9を削除して、Acrobat7だけが入っている状態になったとき、 エクスプローラが異常終了してしまって同じ事が起きました。

yurielna
質問者

補足

投稿した直後、エクスプローラ操作をしたら早速異常終了しました。 ダメのようです。 ですので、これからどちらとも削除してReader9を入れてからAcrobat7を入れます。 そうするとNo.2のお礼の状態の戻りますが。

  • end-u
  • ベストアンサー率79% (496/625)
回答No.2

ReaderとAcrobat混在環境で、 "Acrobat Document"オブジェクトからReaderを開くように設定するには どうもレジストリを直接弄る必要がありそうです。 #他の簡単な方法があるのかもしれませんが、私にはちょっとわかりませんでした。 ただ、レジストリを修正する事で他に影響があるかもしれませんし、 私はそちら方面もあまり詳しくないのであまりおすすめできないかな、とも思います。 自己責任で構わないのでどうしても実現させたい、という場合は追記も考えてみます。 一応、できるだけ安全な策として別案を提示しておきます。(駄案かもしれませんが) アイコンは表示されません。それでも構わないなら、 マクロを登録したTextBoxを追加する事で実現できそうです。 そのTextBoxを追加する事もマクロで行います。 ・Excel[Alt]キー+[F11]キー同時押し。 ・VBE(VisualBasicEditor)が起動。 ・VBE[Alt]、[i]、[m]キーの順押し。 ・標準モジュールが挿入される。 ・挿入された無地のモジュール部分に以下コピーペースト。 Option Explicit Sub pdfObjectAdd()   Dim x As Variant   x = Application.GetOpenFilename("pdfFiles,*.pdf")   If VarType(x) = vbBoolean Then Exit Sub   With ActiveSheet.TextBoxes.Add(ActiveCell.Left, ActiveCell.Top, 72, 54)     .Text = CStr(x)     .OnAction = "pdfOpen"   End With End Sub Sub pdfOpen(Optional dummy As Boolean)   'Reader9本体のフルパス   Const pName = """C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe"""   Dim fName As String   fName = ActiveSheet.TextBoxes(Application.Caller).Text   Shell pName & " """ & fName & """", vbNormalFocus End Sub '以上をコピー。 必要があればReader9本体のフルパスを修正しなければいけません。 あとは、[挿入]-[オブジェクト]の代わりに pdfObjectAdd を実行します。 VBEウィンドウ内で[F5]キーあるいはExcel[Alt]+[F8]でマクロ実行です。 使えるようなら、個人用マクロブックpersonal.xlsに置いたりツールバーに登録したりもできます。

yurielna
質問者

お礼

Acrobat6が入っている他の端末だとAcrobat6で正常にPDFが開けるので Acrobat7の問題かなと思いました。 そこで下記の問題で再インストールした事を思い出しました。 http://okwave.jp/qa/q6179609.html #ちなみにその後もエラーは出ず正常です。 バージョンをみると7.0.0だったので7.1にあげました。 アップデートの有無で毎回7.1が出るのは変わりませんでしたが、 7.1にしたことで、ExcelのPDFをAcrobat7で正常に開けました。 お騒がせしてすみません。 Reader9で開ければ一番良いのですが・・・ ありがとうございました。

yurielna
質問者

補足

レジストリはバックアップとるので、レジストリ変更で直るなら試したいです。 検索してもなかなか見つからず、現在方法が解かりません。 よろしくお願いします。

  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

Acrobat7を持ってないので検証できませんが [挿入]-[オブジェクト]の[新規作成]タブから オブジェクトの種類を指定して(AdobeAcrobatDocument?)挿入しても一緒でしょうか。 また、[ファイルから]挿入する時に、Reader9本体ごと指定したり。 ファイル名欄に、例えば "C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe" "C:\test\test.pdf" とします。 #[参照]からファイル名をセットした後に、ファイル名の前に #"C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe" を付加します。

yurielna
質問者

補足

ありがとうございます。 [新規作成]は「Adobe Acrobat 7.0 Document」がありましたが、 「アイコンで表示」をしなければAcrobat7で正常に開けました。 「アイコンで表示」で埋め込むと最初と同じ現象です。 アイコンのファイル名はC:\WINDOWS\Installer\~とありますが、フォルダは存在しません。 アイコンは表示されます。 [ファイルから]でReader9を指定した場合、「このオブジェクトの作成元アプリケーションを起動できません。」と メッセージが出て、Acrobat7で開きます。 最初の現象と同じでした。 これも「アイコンで表示」です。 アイコンを指定する際に、Acrobat7の「Acrobat.exe」やReader9の「AcroRd32.exe」を指定して 出てくるアイコンに変更しても同じ現象でした。 「アイコンで表示」から埋め込むと出る現象のようですが、Reader9を起動したまま、 埋め込んだPDFをダブルクリックすると、起動しているReader9で正常に開きます。

関連するQ&A