• 締切済み

和文字を選択しておいて和文字+符号を探すには?

 和文字を選択しておいて、With Selection.Findを使って、和文字+符号を検索したいのですが、符号は、数字4桁までの場合、数字4桁まで+アルファベット1文字の場合があります。  この場合、.Text = myText & "[0-90-9]{0,3}" & "[A-Za-zA-Za-z]{0,1}" & "['" '”]{0,1}"としたところ、Selection.Find.Executeが黄色になりました。  .Text = myText & "[0-90-9]{1,3}[A-Za-zA-Za-z]"にしたところ、例えば装置10Aにマッチし、続くSelection.Copyもできますが、装置10や装置Aにはマッチできず、Selection.Copyが黄色になりました。解決するのは、、.Text = myText & のあとをどのようにすればよいでしょうか。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 前回のこともありますが、ご自身が分かる程度でしか、こちらの話を受けつけてもらえず、こちらの書いたコードは参考程度でしかないのなら、何を書いても無駄になってしまいます。今回、その内容自体が、私のものとは違うようですから、直接には、お答えができません。 ピンポイントの解答としては、 >[0-90-9]{0,3} ワイルドカードは、{1,3}のように1からで、{0,3}では、エラーが発生します。 ですから、そのコードを生かすなら、別々に書くしかありません。一緒にはできません。 enunokokoroさんがお勧めになっているPerlの話も前回書いたのですが、あくまでも、テキスト処理のみでお考えになるように、改めてお勧めします。よほどWord VBAに自信があるならともかく、記録マクロレベルでは、Word VBAは諦めて、あくまでも仕上げ用としたほうがよいです。 http://oshiete1.goo.ne.jp/qa4248545.html 前回、こちらの回答は、最終的には否定されてしまいました。そういう形では、ここの掲示板では、継続的に同様の内容をお聞きになるのは、かなり難しいと思います。私が、前回、回答を続けたのは、本来、Word VBAの知らない方の回答が評価されてしまったことに対する私なりの回答でした。 私自身は、だいたいのWord VBAの質問に対応はできるつもりではいますが、このようなことになったのは、ここの掲示板では、ご質問者さんが初めてです。 たぶん、ご自身のイメージが先行してしまっているのだと思います。スティーブン・ジョブスなりの天才的なこだわりというのは、デザインなどの世界では通りますが、それを実現するためのプログラミングの基礎的知識が必要です。Word以前の問題なのに、Word自体に固執してしまったからではないでしょうか。ここには、Excel VBAだけしか知らないで、経験者だのと称して、Word VBAのコードを書く人がいますが、それでは本当は分かっているとはいいません。 ここの回答に満足いかないようでしたら、あくまでも、ご自身でWord VBAを極めるようにしてください。今のままでは、おそらく、私の知っている方の有料サイトでも、断られてしまう可能性があります。 同じくオライリーの ライティング Word Macro http://oreilly.com/catalog/9781565927254/?CMP=OTC-KW7501011010&ATT=writewordmacro という本があります。(Word 2003まで)古い本ですが、この内容はインターネットで確認することができます。この邦訳は出ていませんが、平易な英文で書かれています。

azuma3chom
質問者

補足

違うアプローチで 装置10、装置10A、装置102A、装置10Ab、装置A10、装置a101、 などの全てに対応できる処理ができました。 この質問を閉じさせていただきます。 ありがとうございました。

回答No.1

Wordのマクロですよね? 半年前に Wendy02 さんがアドバイスしていたのをお見かけしたことが あったので。 VBAの回答については、質問者が納得できるわものを提示できるほどの 能力を持っていないので、別のアドバイス。 検索条件を条件式としてCase別に分けて条件を指定してはいかが。 そうすれば、Caseを増やすことで、検索する条件を増やすことも減らす ことも楽になりますし、別々の対応もしやすいですしメンテナンスも楽 になると思います。 以前の質問でも複数条件で対応できない旨を書いていましたが、回答者 はあくまでもボランティアで回答を寄せているようなものなので、仕事 として利用するなら、有料で対応してくれるところを探されてはいかが。 それから、検索する作業をWordだけにこだわらないで、正規表現が簡単 にできるエディタを使って作業したほうが、テキストなどを検索するの なら簡単だと思います。Wordでも設定方法で正規表現やPerlなどの指定 を活用できるようですので、こちら↓の本を買って読まれてはいかが。 http://www.oreilly.co.jp/books/4873112389/

azuma3chom
質問者

お礼

違うアプローチで 装置10、装置10A、装置102A、装置10Ab、装置A10、装置a101、 などの全てに対応できる処理ができました。 この質問を閉じさせていただきます。 ありがとうございました。

関連するQ&A

専門家に質問してみよう