• 締切済み

macroコードを短縮できるでしょうか。

下記のコードで、実行できます。大部分はマクロを記憶し、同じ処理を重ねただけのものです。 目的は、ワードで選択した文字列の中から数字を削除します。 ただし、下記のような場合は削除しません。 【請求項1】、項2、ないし3、いずれか1、【0019】、第3の、 この処理を行うために、差別化しました。 まず、数字を赤字で太字にしました。 次に、上記の、削除しては具合が悪い数字については、明朝で標準に戻すようにしてから、赤字で太字の数字を削除しました。 2000文字を超えるので、途中大幅にカットしました。 以下は、コードです。 ~~~~~~~~~~~~~~~~~~~~~~~~ Private Sub 符号削除() Selection.Find.ClearFormatting Selection.Find.Font.Bold = True Selection.Find.Replacement.ClearFormatting With Selection.Range.Find .ClearFormatting .Text = "第1" .Replacement.Text = "" .Replacement.Font.Color = 1 .Replacement.Font.Bold = False .Execute Replace:=wdReplaceAll End With Selection.Find.ClearFormatting Selection.Find.Font.Bold = True Selection.Find.Replacement.ClearFormatting With Selection.Range.Find .ClearFormatting .Text = "第2" .Replacement.Text = "" .Replacement.Font.Color = 1 .Replacement.Font.Bold = False .Execute Replace:=wdReplaceAll End With Selection.Find.ClearFormatting Selection.Find.Font.Bold = True Selection.Find.Replacement.ClearFormatting With Selection.Range.Find .ClearFormatting .Text = "又は2" .Replacement.Text = "" .Replacement.Font.Color = 1 .Replacement.Font.Bold = False .Execute Replace:=wdReplaceAll End With ↓以下、20まで繰り返し Selection.Find.ClearFormatting Selection.Find.Font.Bold = True Selection.Find.Replacement.ClearFormatting With Selection.Range.Find .ClearFormatting .Text = "乃至20" .Replacement.Text = "" .Replacement.Font.Color = 1 .Replacement.Font.Bold = False .Execute Replace:=wdReplaceAll End With Selection.Find.ClearFormatting Selection.Find.Font.Bold = True Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "1" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = False End With Selection.Find.Execute Replace:=wdReplaceAll ↓以下、9,0まで繰り返し Selection.Find.ClearFormatting Selection.Find.Font.Bold = True Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "9" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Font.Bold = True Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "0" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = False End With Selection.Find.Execute Replace:=wdReplaceAll End Sub ~~同じ繰返しを短くする部分の正規表現の使い方やloopを指南していただけたら幸甚です。

みんなの回答

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

こんにちは。 >依田 茂さんと言う方(特許事務所勤務) Vector にマクロを登録している方ですね。たぶん、その方ご自身の中でされていることであって、ユーザーリクエスとはしないのかもしれません。出版業界で、ツールを出している人もいるのですが、それぞれ分野が違うと、そのルールも異なるようです。少し、調べてみましたが、一般の人にとって、秀丸エディタのマクロがあまり簡単とは言えません。 ただ、基本的に、テキストファイルを処理するものでしたら、MS-Wordのマクロに関わらず、もっと簡単に作れるはずだとは思います。 「正規表現の対照表」では、単なるメタ・キャラクタだけですから、あまり有用性が高いわけではありません。それが最低の基礎知識というところだと思います。 >もっといいものをと考えています。 それは同感です。いろいろ検討してみると、私の知っている範疇ですと、Perl に収まりそうな気がします。ただ、Perl は、本来、Unix系のツールで、コマンドラインです。 一旦、組み込めば、後は、スクリプトのリストを書き換えるだけですみます。 入門書: はじめてのPerl入門 日本理工出版会 戸内 順一 (著) http://www.amazon.co.jp/exec/obidos/ASIN/4890194940 他の本に比べて簡単で、教科書のような感じです。 ツールは、このようなものがあります。 他のものに比べて、安定しています。 http://homepage3.nifty.com/aokura/#Perlを始めよう! Perl が習得できなかったとしても、VBAに応用できるようになります。 VBAのPerl系のツールとしては、BASP21の中の、BRegExp というものがあります。 BASP21 http://www.hi-ho.ne.jp/babaq/basp21.html BREGEXP.DLL http://www.hi-ho.ne.jp/babaq/bregexp.html

azuma3chom
質問者

お礼

 Wendy02さん、いろいろ調べていただきましてありがとうございます。明細書作りに役立つプログラムを作って見たいと思うようになって、11ヶ月が立ちますが、周りを見ますと、VBAを知っている弁理士や特許技術者は殆どいません。どんなソフトを作れば、便利であるかについて、意識すらしていないようです。今日も、家で仕事をしていて、新しく思いついたものがあります。この質問の、「Private Sub 符号削除()」とは、逆の処理をするソフトです。符号を入れた権利範囲を作りますと、構成要素の取り違いが無く、間違いが生じにくいので、私も、符号を入れた権利範囲を作ります。ですが、権利範囲から符号を外さないと、大手企業の知財部へは納品できません。したがって、 Pivate Sub 符号削除()」のソフトがあったら便利だな、とある日思い立って作りました。  ところが、他人が作成した明細書に記載された発明についての改良発明を新たに出願したいということで、明細書作成を頼まれることがあります。このとき、効率的な理解ができるようにするために、権利範囲の用語に図面に使われている符合を付けます。このために便利なソフトは、「Private Sub 符号削除()」のソフトが行う処理とは逆の処理を行うソフトです。このソフトは、拒絶理由通知が来たときにも十分に役立ちます。拒絶理由通知に示される引例(先行特許文献)は、4件くらいあります。その、権利範囲を読解するには、やはり、請求範囲の用語と符号との照合による理解が不可欠です。  このようなことから、新しいテーマが見つかったので、これから毎日、マクロつくりに時間をかけ、躓いた時には、質問を投稿しようと思います。そのときには、宜しくお願いします。

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

こんにちは。 しばらく間が空きましたが、 >今度のマクロの狙いは、用語+符号の文書で符号を消すことです。 全体を通してみてみると、正規表現つきエディタなどの応用をしたほうがよいかもしれないなって思います。 正規表現のテキストは、いくつかありますから、それにズバリというものはないのですが、それに近いものは、何社からか出ています。 例:『正規表現 ケーススタディブック』(毎日コミュニケーションズ)\2,200.(税抜) http://www.amazon.co.jp/exec/obidos/ASIN/4839913870 エディタのマクロ自体は、VB系のものやC言語系のもの、もっと平易なものなど、エディタはいろんな種類のマクロ言語が使われています。 MS-Wordのマクロは、その中では比較的易しいのですが、MS-Wordの問題点は、32MB の制限というだけではなく、見えないアドインやらOLE などいろんなものがつながって、他のトラブルが派生して、大事な書類を損なう可能性があるからです。MS-Wordのマクロは、本格的にコードを書く人が少ないです。(前にも書いたように、Selection.Text を使ったのでは、MS-Wordとしてはあまり意味がないと思います。オブジェクトで扱わなければ、意味がありません。) なお、私の場合は、納品先より、特許関係は原稿用紙記載義務がありましたが、最初はテキストエディタで、文字数などの数えながら処理をしていき、それを、原稿用紙専用のエディタに移し変えるだけです。WordはMS-Word納品が決まっているもののみ使用します。あまり、MS-Wordを常用しません。JustSytemの製品には良いものがあるとも聞き、展示会でみましたが、校正ツールは、編集者のプロ用のものという印象でした。慣れれば、それも良いのかもしれません。

azuma3chom
質問者

お礼

>今度のマクロの狙いは、用語+符号の文書で符号を消すことです。 マクロをそっくり記憶したものと、正規表現を使って処理できるものとをまぜこぜにしていますが、結構間違いなく、処理できています。コードを見ると、ダサいのですが、しばらくはこのままで行こうかと思います。 正規表現の対照表(http://homepage2.nifty.com/zaco/rexp/rexpt.html)というのを見つけたので、参考にしてジックリ検討します。 なお、依田 茂さんと言う方(特許事務所勤務)とメールでやり取りしたことがありますが、一部の事務所では、秀丸エディタを使っているようです。依田 茂さんがつくられたものは、あまり有用性が低いので、もっといいものをと考えています。

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

こんにちは。 基本的には、私は、もうここのカテゴリでは書く意欲自体を失ってしまったのですが、気になった個々の方に関しては、ある程度まで、サポートはさせていただくことにしています。 もし、記録マクロで出来ているのでしたら、そのままお使いになればよいと思います。あえて、コードをまとめようと欲をかいても、こちらの書いたコードが、出来ない-->分からない-->そのまま ということでは、まったく意味がありません。 >2000文字を超えるので、途中大幅にカットしました。 ExcelでもWordでも、VBEditor 内のひとつのプロシージャとしては、一般的に、100行程度までです。 ですから、それ以上の行数では、基本的なマクロの形態を有していない可能性が強いです。その場合は、プロシージャを分散させて、Call マクロ名、とすればよいです。 質問のご要望は、同じような内容のマクロを一つにしてほしいということだと思いますが、残念ながら、ご質問の要点が良く分かりません。分からない部分は、コードを読めということだと思います。それでは、少し乱暴です。それに、本来、マクロの基礎的なものですから、それをする以前の部分が、ネックとなる可能性があるかもしれません。 >削除しては具合が悪い数字については、明朝で標準に戻すようにしてから、赤字で太字の数字を削除しました。 でも、コードを見る限りは、そうはなっていないようです。規定の太字で数字が含まれた文字を削除する、ということでしょうか。 サンプルを示しておきます。「太字」になっている、リストの文字を削除します。 削除したりする内容や仕様が変わるなら、内容を変えて、もう一つ、ループを作ればよいです。 元のコードでは、なぜ、Private ステートメントなど付けたのでしょうか、そういう部分がわかりません。 '------------------------------------------- Sub 符号削除2() Dim blFound As Boolean Dim arData1 As Variant Dim v As Variant '一覧のリストを以下に、「,(コンマ)」で切って入れます。 Const fDATA1 As String = "第[0-9],又は[2-9],又は1[0-9],乃至20,[0-9]" arData1 = Split(fDATA1, ",") blFound = True For Each v In arData1 Do   With Selection.Range.Find     .ClearFormatting     .Font.Bold = True     .Text = v     .Replacement.Text = ""     .Format = True     .Wrap = wdFindContinue     .MatchCase = False     .MatchWholeWord = False     .MatchByte = False     .MatchAllWordForms = False     .MatchSoundsLike = False     .MatchFuzzy = False     .MatchWildcards = True          blFound = .Execute(Replace:=wdReplaceAll)   End With Loop While blFound = True Next v End Sub '----------------------------

azuma3chom
質問者

お礼

>基本的には、私は、もうここのカテゴリでは書く意欲自体を失ってしまったのですが、気になった個々の方に関しては、ある程度まで、サポートはさせていただくことにしています。 こんにちは、Wendy02さん、ちょっとさみしいですね。 >もし、記録マクロで出来ているのでしたら、そのままお使いになればよいと思います。あえて、コードをまとめようと欲をかいても、こちらの書いたコードが、出来ない-->分からない-->そのまま ということでは、まったく意味がありません。 今度のマクロの狙いは、用語+符号の文書で符号を消すことです。 特許明細書は、実施形態の記載欄より上側の部分は符号を入れないことになっています。符号を入れると、裁判で争いになったときに、狭く解釈される恐れがあるからです。ですが、明細書作成中は、符号がないことには、なかなか頭の中に入りません。それで、全文を通じて符号を入れて作成します。クライアントへ送るときに、実施形態の記載欄より上側の部分は符号を全部取り除きます。権利範囲のボリュームが多いときは、符号が半端ではないほど多く入っています。消し忘れも起きることがあります。3,4年経って、出願について審査が行われ、拒絶理由通知がきたときには、自分が書いた文章でもすっかり忘れていて、権利範囲の用語に符号をつけることから、解釈し反論します。ですから、符号を消さない文書もストックしておけば、後々楽になりますが、出願用には符号を外す必要があります。それで、今度のマクロを考えました。マクロ作成は、検索置換のウインドウで部分的の操作してコードを拾って積み重ね、実行を繰り返しましたので、問題なく動きます。ですが、同じ処理を延々と書くのは、どうなのか?、と疑問に思った次第です。それに、権利範囲を30以上書く場合もある(私は20位までです)のでまとめられたらいいと考えていました。1つの出願が1000頁というのも過去にありました。 Wendy02さんの示されたサンプルコードに従って、マクロ記録したコードをいじってみます。

関連するQ&A

  • 特定の色のマーキングだけを解除するマクロ

    Wordのマクロについての質問です 複数の色でマーキングしている文書があり、 特定の色のマーキングだけを解除するマクロを 作成していますが、マーキングの色の指定の仕方がわかりません。 マーキングの色の指定はどのよう(どこ)にすれば、よいのですか。 Sub マーキングなし() ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Highlight = False With Selection.Find .ClearFormatting .Highlight = True .Text = "" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True End With Selection.Find.Execute Replace:=wdReplaceAll end sub

  • ワードで選択範囲だけの改行を削除するマクロ

    こんにちは いつもお世話になっています ワード2010で、選択範囲だけの部分の改行を削除するマクロを記録マクロで作ったのですが、選択部以外もすべて改行してしまいます。どこがいけないのでしょうか。あるいは、操作の仕方でしょうか。以前は使えていたと思うのですが、仕様が変わったのでしょうか。 任意の範囲を選択しておいて、記録を開始しました。 よろしくお願いします。 Sub Macro1() ' ' Macro1 Macro ' ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "^p" .Replacement.Text = "" .Forward = True .Wrap = wdFindAsk .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = False End With Selection.Find.Execute Replace:=wdReplaceAll End Sub ネット上で見つけた以下のマクロでもすべての改行が削除されます。 http://okwave.jp/qa/q960285.html Sub Macro14() Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "^p" .Replacement.Text = " " End With Selection.Find.Execute Replace:=wdReplaceAll End Sub

  • Wordマクロ

    Wordでワイルドカードを使った置換マクロを作ったのですが、 「MatchWildcardsとMatchSoundsLike、MatchAllWordForms、MatchFuzzyは、同時にTrueに設定することはできません。」 というエラーが出てしまいます。 MatchSoundsLike、MatchAllWordForms、MatchFuzzyは、 ソースに書いてないしTrueにもしていません。 どこが悪いのでしょうか? 以下がソースファイルです、よろしくお願いいたします。 Sub substitute() ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "[!a-f]{1,}" .Replacement.Text = "@" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = True .MatchFuzzy = False End With Selection.Find.Execute Replace:=wdReplaceAll End Sub

  • Word2010特定の名前を置き換えるマクロ

    例えば、Wordの文章で「田中」とあるものを「山田」に変えたい場合は、置き換えの機能を使ってマクロの記録ができると思います。 しかし、こうするとテキストボックスやヘッダフッタに記載された文字は変更できないように思います。 どうすれば、これらの文字も含めて置換の対象とすることができるか教えてください。 Sub Macro() Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "山田" .Replacement.Text = "田中" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = True End With Selection.Find.Execute Replace:=wdReplaceAll End Sub

  • word2007 マクロ

    下記マクロは蛍光ペン部分を消して、その文字数分にアンダーラインを引くマクロになります これを改造して、赤文字を消して、その文字数分を空欄にしたいのです。 ですが、wdColorRedの入れ方が分かりません。ご教授お願いします。 Sub Problem() '蛍光ペン部分を消して、アンダーラインを引く Selection.Find.ClearFormatting Selection.Find.Highlight = True Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Highlight = False With Selection.Find.Replacement.Font .Underline = wdUnderlineSingle .StrikeThrough = False .DoubleStrikeThrough = False .Outline = False .Shadow = False .Hidden = False .AllCaps = False .Superscript = False .Subscript = False End With With Selection.Find .Text = "*" .Replacement.Text = " ^z" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchFuzzy = False .MatchWildcards = True End With Selection.Find.Execute Replace:=wdReplaceAll End Sub

  • MicrosoftWordのページ指定置換マクロ

    お世話になります。 MicrosoftWordの文章の中の『SYSTEMS』と単語を XXXXXXXに置換するマクロを作ってみましたが これですとWordの文章ファイルの 全てページの『SYSTEMS』とゆう単語を置換してしまいます。 Wordの文章ファイルの1ページ目だけの全ての『SYSTEMS』 とゆう単語を置換するマクロはどのようにすればよいでしょうか? Sub Macro2() ' ' Macro2 Macro ' ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "SYSTEMS" .Replacement.Text = "XXXXXXX" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = True End With Selection.Find.Execute Replace:=wdReplaceAll End Sub

  • 以下のようなマクロを作成しましたが、文章の最後まで連続置換をしたい場合

    以下のようなマクロを作成しましたが、文章の最後まで連続置換をしたい場合はどうすればよいのでしょうか。 ご教示をお願い致します。 ************************ Selection.Find.ClearFormatting With Selection.Find .Text = "<G>*<M>" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchFuzzy = False .MatchWildcards = True End With Selection.Find.Execute Selection.Font.Name = "MS ゴシック" Selection.Find.ClearFormatting With Selection.Find .Text = "<G>*<M>" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchFuzzy = False .MatchWildcards = True End With End Sub ************************

  • ワードでマクロがうまくいきません。

    よろしくお願いします。 マクロの知識はほとんどないのですが、 「マクロの記録」の機能を使い、ワードで 「スペースを探し出し、そのスペースにアンダーラインを引く。」 ために、 -------------------- 編集ー置換ー 検索する文字列にスペースをタイプ、 置換後の文字列にスペースをタイプ、 オプションの書式で、フォント、下線、一重下線 すべて置換 -------------------- マクロの記録を選択した後、上のように作業しました。 そしてマクロの記録をとめました。 マクロの記録中の操作では、思い通りに置換されるのですが、 次にそのマクロを作動させると、なにもおこりません。 なにか変な操作をしたのか、と五度くらい試したのですが、 やはり動きません。 中身は、↓のようでした。 -------------------- Sub Macro2() ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = " " .Replacement.Text = " " .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = True End With Selection.Find.Execute Replace:=wdReplaceAll End Sub -------------------- どうしてうまく動かないのでしょうか。 教えていただけるとありがたいです。よろしくお願いします。

  • wordで選択した部分の前後に文字列を挿入するマクロを作成したいと思っ

    wordで選択した部分の前後に文字列を挿入するマクロを作成したいと思っています。 Word文章中から二重下線を検索しマーカーを付けています。 その検索したマーカーが付いている前に例えば"あいう"後に"ABC"と入れる場合どうすれば良いのでしょうか? Selection.InsertBefore Selection.InsertAfter 等を使って入れられる事はわかりましたがうまく入れる事が出来ません。 どなたかご教授頂けると幸いです。 他のやり方もあれば是非宜しくお願い致します。 Sub UnderlineDouble() ' ' 検索条件で二重下線、置換条件で蛍光ペン ' With Selection.Find .ClearFormatting .Replacement.ClearFormatting '検索で二重下線 .Font.Underline = wdUnderlineDouble .Text = "" '置換で蛍光ペン .Replacement.Highlight = True .Replacement.Text = "^&" 'その他の条件 .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = False .CorrectHangulEndings = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = False End With Selection.Find.Execute Replace:=wdReplaceAll MsgBox "完了" End Sub

  • myText = Selection.Range.Textについて

    任意の文字列を選択することを含むワードのマクロでは、検索置換ウインドウを使うと、以後、正常な置換が行われないようなのですが、どうしたら、正しい置換が行われるように確保できますでしょうか。どなたか、お教え願います。例えば、以下のコードです。 Dim myText As String myText = Selection.Range.Text With Selection.Find With .Replacement.Font .Name = "明朝" .Color = 255 .Bold = True End With .ClearFormatting .Text = myText .Format = True .Forward = True .Wrap = wdFindAsk '.Wrap = wdFindContinue .MatchFuzzy = False Selection.Find.Execute Replace:=wdReplaceAll End With ある文字列を選んで実行すると、赤字で太字になります。別の文字列をを選んで実行すると、同様に赤字で太字になります。ところが、検索置換ウインドウを使ってしまうと、その後は、検索置換ウインドウの入力状態に支配されてしまいます。 このようなことは、他のマクロでも確認しています。例えば次のマクロもそうです。 Dim myText As String myText = Selection.Range.Text Options.DefaultHighlightColorIndex = wdBrightGreen With Selection.Find With .Replacement .ClearFormatting .Highlight = True End With End With With Selection.Find With .Replacement .ClearFormatting .Highlight = True End With .ClearFormatting .Text = myText .Format = True .Forward = True .Wrap = wdFindAsk '.Wrap = wdFindContinue '.MatchFuzzy = True Selection.Find.Execute Replace:=wdReplaceAll End With myText = Selection.Range.Textはだめなようです。 通常の検索置換は、検索置換ウインドウが作動するようです。検索置換ウインドウが作動しない検索置換のコードがあれば教えてください。 For~Nextによる一文字ずつの繰り返し処理では時間がかかるので、一ワードずつFor Eachの繰り返し処理で検索置換ウインドウが作動しない検索置換のコードがあれば教えていただけると幸甚です。

専門家に質問してみよう