Adobe社のHPを見るとDDEをサポートしている言語は
- C
- VB
- VB.NET 2003 又は 2005
- Java
の4つになっています。
SDKのサンプルからも推測しました。
VBに関してはバージョン記述は見てませんが、多分バージョン6だと思われます。
Office VBAが使えるかの記述はないのでサポート対象外になるのかな?
しかし、誰もが簡単にテスト出来ることを考えて、当サイトではExcel VBA をサンプルにしています。
時間が出来たら、将来はVB.NET と Java のサンプルも付け足したいと思っています。
< TOPへ >
おかげ様でVBAからPDFファイルを操作できるようになり助かっています。
しかし、PDFファイルの操作はできるのですが、Office文書(WrodですがExcelでも同様)に埋め込まれたPDFを操作することはできなくて困っています。
名前をつけてファイルとして保存するだけでいいので、
埋込オブジェクトがWORDやExcelであれば以下のコードで保存できました。
Sub WordSave()
With ActiveDocument.InlineShapes(1).OLEFormat
.Object.Application.Documents(1).SaveAs “c:\temp\test.doc”
.Object.Application.Documents(1).Close
End With
End Sub
Sub ExcelSave()
With ActiveDocument.InlineShapes(3).OLEFormat
.Activate
.Object.Application.Workbooks(1).SaveAs “c:\Temp\test.xls” ‘保存
.Object.Application.Workbooks(1).Close ‘閉じる
End With
End Sub
オブジェクトがPDFの場合はアクティブにして開くことはできても、埋込オブジェクトをPDDOC変数に渡して保存することができません。
何か方法があるのでしょうか、それとも不可能なのでしょうか?
よろしくご教示ください。
竹内さん。初めまして。
Excel 2003でシートにPDFファイルを埋め込んでみました。
この問題はExcel(Word)側を解決しないと出来ない様な・・。
>埋め込まれたPDFを操作することはできなくて困っています。
>名前をつけてファイルとして保存するだけでいいので、
上記の2点で再確認させて下さい。
<1点目>
Excelに埋め込まれたPDFファイルをOLE等で操作するのは無理だと考えられます。一旦HDD上に吐き出して、それで操作し、そして元のExcelファイルに戻す。てな感じなら予想では出来そうです。※あくまでも予想の世界。
<2点目>
埋め込まれたPDFファイルを名付けて保存はExcel 2003だけ見た感じではその様な機能(メニュー上)が見当たりません。
コードのサンプルは自分のファイル(Word,Excel)を名前を付けて保存しているもの。
これを埋め込みPDFにも出来ないか? っと言う事でしょうか。
内容は大体理解しました。
逃げ手がないか、明日以降、出来るだけ早く検討してみます。(眠
早速の返信、ありがとうございます。
<1点目>
実業務ではWORDに各種ファイル(WORD、Excel、PDF)を埋め込まれたものが回覧されてきます。
その埋め込まれた各オブジェクトを一発でHDDにファイルとして保存したいというのが目的です。保存だけでいいので操作や元に戻す必要はありません。
<2点目>
InlineShapes(1)とInlineShapes(3)がそれぞれ埋め込まれたオブジェクトです。1がWORD、3がExcelで、それぞれを1ファイルとして保存しています。
おっしゃる通り、これがPDFオブジェクトでもできないかということです。
できないとはっきりすればもちろんそれでもいいのですが、なにかできそうな気がして未練が残ります(開くまではできるので、それを操作できないかとか→これも結局わかりませんでした)
お忙しいところ恐縮ですが、よろしくお願いします。
遅くなりました。
(現時点での)結論から先に。
結論:分らない。
出来そうで出来ない。
VBA、特にWordのVBAの専門家では無いのでオブジェクトの扱いが不明。
操作をマクロで記録させて、内容を見るが納得いかない。
いや、理解できないが正解でしょう。
Office 2003と2007での違いは無いようです。
埋め込まれたファイル(オブジェクト)のドキュメント属性でもわかるかとプロパティを探してみたがHelpにはそれらしきは見つからない。
なんか出来そうが気がするのですが、知識と時間が追い付かない。
VBA専門サイトで一度聞いてみてはどうでしょうか。(ニゲゴシ
申し訳ない。
質問したサイトを間違ったかも。(汗
時間を取らせてしまって恐縮です。
アドバイス通り、もうひとふんばりVBA専門サイトで聞いてみます。
もし、解決策がわかったら書き込みます。
ありがとうございました。
Acrobatでさえ、簡単そうでOLEでは出来ない。
メーカーはバージョンアップより内部機能の充実をもっと測って欲しい。
と思うこの頃です。