みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

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

締切り済みの質問

Access2003で全文検索文書管理したいのですがOLE型データの扱い方を教えて下さい。

Access2003を使用して、全文検索文書管理データベースを作りたいと思います。OLE型のフィールドにWord、Excel、PDF、PowerPoint等のファイルをリンクし、これを一端開いて、この中のテキストデータをコピーし、同レコード内のメモ型フィールドに貼り付けています。
このテキストの取り出しを自動化出来ないでしょうか?
例えば、OLEフィールドにファイルをリンクしたら、非表示でこのファイルを開き、VBAで全選択、コピーを行い、ファイルを閉じ、クリップボードのデータをメモ型フィールドに貼り付けるということです。
データシートビューで、OLEフィールドを見ると、Adobe Acrobat Document、Microsoft Word 文書などの文字が表示されています。これらの文字を取得して、それぞれのアプリケーションを非表示で開き、全選択、コピー操作すればよいと思うのですが、登録されたOLE文書の種類の取得方法が分かりません。どなたか教えて頂ければ幸いです。
アクロバットのVBAでの扱い方も教えて頂ければ幸いです。

投稿日時 - 2008-10-11 17:12:07

QNo.4394028

すぐに回答ほしいです

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

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

回答(2)

ANo.2

#1です。
PDFをテキストに変換する方法(Excel VBAサンプル)
http://pdf-file.jugem.jp/?eid=114
Acrobat限定ですが。

投稿日時 - 2008-10-12 00:53:12

お礼

早速回答いただき有難う御座います。いろいろ御調べ頂き、感謝に堪えません。
教えて頂いたコードを応用して、先ず自動的に、テキストを取り出し貼り付けるコードを作成してみます。OLEオブジェクトの操作は意外と難しいのですね。

投稿日時 - 2008-10-12 08:57:56

ANo.1

数年前にOLE型のフィールドにファイルをVBAで貼付、取り出しをしようとチャレンジした事があります。
久しぶりに調べてみましたが、Accessの機能を使って、OLE型で貼り付けたファイルの取り出しは、一部Microsoftから情報が公開されているBMPなどを除いて、非公開の管理用の情報が付与されていて困難な様です。(「そんなことないよ」という情報をお持ちの方はご指摘下さい)
http://www.amy.hi-ho.ne.jp/jbaba/access1.htm
それで当時は結構調べまくって、AppendChunk、GetChunkを使って実現しました。今検索してみると、サンプルコードが直ぐに見つかりました...
http://www.remus.dti.ne.jp/~shenron/access/knowhow/GetBinary.html
しかしながら、結局重たくて嫌になり、ハイパーリンクに方針を変更しました。
AcrobatまたはAcrobat ReaderをVBAから制御する方法は、WEB検索すると結構ヒットします。pdfを開いた後、指定ページを開く程度ですが。

投稿日時 - 2008-10-11 23:25:12

あなたにオススメの質問