Wordファイル内を検索するには?


やま  2003-02-11 20:51:42  No: 2894

こんにちは。
Wordのファイルを開いて、こちらの指定した文字列がないか検索をしたいのですが、何か良い方法はないのでしょうか?
Editに入力→パスの指定→ボタンをクリック→ヒットした回数を表示  という流れにしたいのです。
検索をしたらVBでの例は見つかったのですが・・・
http://www.users.gr.jp/ml/archive/vb/3131.asp
(↑勝手にリンクを貼っていけなかったら削除して下さい。)
よろしければアドバイスお願いします。


にしの  2003-02-12 21:12:59  No: 2895

TWordApplicationを使えば、ほぼ同じ記述でできますよ。
そのURLを例にしてみれば、

var
  varTrue: OleVariant;
begin
  varTrue := True;
  WordApplication1.Documents.Open(FullPath, EmptyParam, varTrue, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
  WordApplication1.Selection.Find.Execute(strWord, EmptyParam, EmptyParam,EmptyParam,EmptyParam, EmptyParam, varTrue,
  EmptyParam, EmptyParam, EmptyParam, TmptyParam);

  if WordApplication1.Selection.Find.Found then
  begin
    //見つかった
  end;
  WordApplication1.Quit;

こんな感じです。


やま  2003-02-14 03:25:26  No: 2896

>にしのさん
レスありがとうございます。返事が遅れて申し訳ありません。

FullPathにはExtractFileDir関数を利用し、strWordには検索語のEdit1.Textを入れようとしたのですが、「変数実パラメータと変数仮メータとは同一の型でなければなりません」「実パラメータが足りません」と出ます。
両方ともString型で宣言したのですが、型の宣言が間違っているのでしょうか?  初心者なので的外れなことを言っていたらすいません。  今調べて色々試していますので、よろしかったらアドバイスをお願いします。


たかみちえ  URL  2003-02-14 03:39:06  No: 2897

> 「変数実パラメータと変数仮メータとは同一の型でなければなりません」
  このエラーは、引数と変数の型が微妙に異なるとき
> 「実パラメータが足りません」
  このエラーは、引数の数が足りないとき

  にそれぞれ出ます。
前者の"微妙に異なるとき"というのは、困ったことにTCaptionとStringなどの、
実際には変わりのない型も、含まれてしまいます。
  面倒ですけど、Edit.Textを、
いったん別の変数に入れておけばいいと思います。

  あと、後者のエラーですけど、わたしはTWordAppliocationを使ったことないので、
わかりません。
  でも、エラーメッセージをダブルクリックすると、
キャレットがエラーの付近に移動します。
これを使えば、多分原因が見つけられると思います。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加