• 締切済み

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

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

みんなの回答

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.2

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

psgrade
質問者

お礼

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

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.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を開いた後、指定ページを開く程度ですが。

関連するQ&A

  • 文書データを検索する方法

    技術文書などをPDFファイルにして電子管理しようと考えているのですが、キーワードで文書内容を検索して必要な文書を取り出すようにするには、アクロバットキャプチャーという6万円くらいするソフトを買わないとできないようで困っています。  フリーソフトで画像データをサムネイルごとに分けてHTML文書にするものがありますが、文書内の検索は出来ません。安価でこのような管理が出来るものがありますか?

  • ワードパットのデータをアクセスへインポートしたい

    OSはWindowsNT4.0です。よろしくお願いします。 (1)CSV形式で70000件を超えるリスト(名前をAとします)があります。リストのフィールドは、コード、名前、時間、金額の4つです。 (2)Aをメモ帳で開くと、リストが4つごとに改行されていなくて、ひたすら横に連なっています。フィールドとフィールドの間にはカンマが、データとデータの間には■が入っていて、最大文字数まで横に連なった後、次の行に移るようです。 (3)Aをワードパットで開くと、リストがちゃんと4つごとに改行されて表示されています。 (4)ワードパットで開いたAをそのままテキスト形式で保存し直しても、(1)の状態になります。 ・あとでアクセスにインポートして作業をしなければならないのですが、(1)と(2)の状態では改行されていないからか、インポートができません。 ・(3)で表示されたワードパットのデータもインポートできないようです。 ・(3)で表示されたワードパットのデータを全コピーしようとすると、データが多すぎるのか、PCが止まってしまいます。 アクセスにインポートする方法はないでしょうか? よろしくお願いします。

  • Accessにてデータの更新

    Accessにて、フォームにボタンを作成し、クリックすると フォームのテキストボックスのデータを取得し、 テーブルのデータを更新するVBAを作りたいのですが、 mySQL = "UPDATE テーブル名 SET フィールド名 = '1234'" このようにすると、フィールドが1234のデータに更新されるのですが、 これを namae =Me!テキストボックス名 mySQL = "UPDATE テーブル名 SET フィールド名 = namae" とするとうまくいきません。 正しい書き方をお願いします。

  • アクセス2000でデータの追加がうまくいかないんですけど

    アクセス2000を使ってます。 基礎データというテーブルを作って、そこに「テキスト」というメモ型のフィールドを作り、 参照追加フォームというフォームを作って、その中に二つのテキストボックスを配置し、一方のテキストボックス1には「基礎データ」の「テキスト」をコントロールソースとして設定し、他方のテキストボックス2は非連結にし、コマンドボタンを二つ配置して、一方のコマンドボタン1を押すと、テキストボックス1のデータがテキストボックス2のデータにコピーされるようにVBAコードを書き、さらに、もうひとつのコマンドボタン2を押すと、非連結のテキストボックスのデータを、基礎データテーブルの「テキスト」というフィールドに追加する追加クエリを動かすようにしました。  このような状況で、コマンドボタン2を押すと、非連結のテキストボックス2のデータが、全角126文字までなら正常に動作するのですが、それ以上(全角127文字以上)になると、「引数が無効です。」というエラーが出てしまいます。 基礎データテーブルの「テキスト」はメモ型に設定してあるのに、どうしてこのようなエラーが出てしまうのでしょうか?誰か教えてください。  ※ためしに、追加クエリ単独で動かして、全角127文字以上のデータを入れた場合には、追加クエリは正常に動作します。これって、フォーム側の問題なんですか?  

  • PDFファイルの表を含む文書をエクセルのセルにコピペする方法

    ワードで作成された文書(テキストと罫線程度の簡単な文書)がPDFに変換さたデータがあります。ワードの元文書データは手元にありません。 そのPDFの内容のテキストをすべてエクセル上に入れたいのですが、そのPDFファイルに含まれる表(例えば3列X4行程度の一覧表)を1つのセルごとエクセルのセルに入れ込みたいのですが、できません。一度txtにペーストして、エクセルでtxtを開く際に「カンマやスペースで区切った・・・」という開き方をしても微妙にずれました。 AcrobatはReaderでなく、Acrobat5.0を使用しています。エクセルは2002です。 Acrobatでテキストの選択をして、エクセルにコピー&ペースト、コピー&形式を選択してペースト、などやってみたのですが、PDFの表の中のテキストは、エクセルにペーストすると罫線を関係なく結合され、すべて左詰めで1つのセルに入ってしまいます。 なにか良い方法はありませんでしょうか。 できれば、エクセルやアクロバットにすでにある機能だけで行いたいのです。OCRソフトはありません。 ワード、Dreamweaverであれば使えます。 わかりづらい質問で申し訳ないのですが、 どうぞ教えてくださーい。

  • Wordの文書にExcelデータを差込印刷で入れたい!!

    現在、仕事で手紙のような文書をWordで作っています。 そこにExcelのデータで作ったお客様の名簿を、差込印刷で出したいと試みているのですが 方法がわかりません。。。 どなたか教えて頂けないでしょうか!? 差込印刷ヘルパー   ↓ カタログ   ↓ 作業中のウインドウ   ↓ データファイル指定   ↓ データファイルを開く   まですると メイン文書に差込フィールドが見つかりません。メイン文書に差込、フィールドを挿入するにはメイン文書の編集をクリックして下さい。 と、出て、メイン文書をクリックすると、また元のWordの画面に戻ってしまいます。 方法が違うのでしょうか? 困っています。。。是非、ご存知の方は教えて下さい!                 

  • ワードでつくった文書を、テキストデータにするには?

    ワードで文書をつくったのですが、それをテキストデータにするには、どうすればいいのでしょうか。 教えてください。よろしくお願いします。

  • ACCESS2000 あいまい検索の結果からデータをフォームに取得

    MSACCESS2000にてフォームを作り、テキストボックスに入力された文字で、データをあいまい検索し、複数表示するようになってます。like [テキストボックス]&"*" 複数表示されたデータから1つを選択し、フォームのテキストボックスに取得することは可能なのでしょうか? ACCESSを始めたばかりで、いろいろ調べたりしているのですが、可能かどうかが知りたいのです。どうか宜しくお願いします。

  • pdfファイルをtxtファイルにするには?

    私は今Windows2000を使用して、Adobe Acrobat Readerで文章が掲載されているファイルを開いています。 このAdobe Acrobat Readerで見れるファイルをtxtファイルにすることはできるのでしょうか? txtでなくても、Wordでもかまいません。 Adobe Acrobat Readerで見れるファイルを[Ctl+A]してから、コピーしてメモ帳に保存しようと思っても、テキストが表示されるのではなく文字化けしたようになって表示されます。 よろしくお願いします。

  • 【namazu全文検索】ファイル名(URL)の長さについて

    はじめまして。 namazuを使って文書内検索を行っています。 検索対象の文書ファイルは日本語のファイル名でもOKなのですが、日本語のファイル名だとどうしてもindex作成時にエンコードした(された)時に保存先までのURLが長くなってしまい、NAMAZU.field.uriにファイル名が最後まで入りきっていませんでした。 なので、文書を検索したときヒットはするのですが、文書のリンクをクリックしても「ページが表示できません」となってしまいます。 インターネットで調べたところ、mknmzrcの$MAX_FIELD_LENGTHの値を変えればよいとあったので、変えてインデックスを作成しなおしたのですが改善されず。 また、そのサイトとは別のサイトで調べると$MAX_FIELD_LENGTHは要約文の長さと説明してありました。 ファイル名(URL)の長さをnamazuの設定で変えることは可能でしょうか?その場合、どこで設定すればよいでしょうか? ご存知の方がいらっしゃいましたらご教授願います。 宜しくお願い致します。

専門家に質問してみよう