Leeには、2つのドキュメントを段落ごとに比較するマクロがあります。彼は、段落内のスマートクォートの使用を割り引く方法を必要としています。言い換えると、2つの段落がすべての点で類似している場合(一方がスマート引用符を使用し、もう一方が使用しない場合を除く)、リーは依然として段落を同等と見なしたいと考えています。

この状況を処理する最も簡単な方法は、スマートクォートを通常のクォートに置き換えてから比較することです。たとえば、マクロがドキュメントをステップスルーし、段落のテキストを変数(sThisParなど)に割り当てると仮定すると、次のコードを使用して、テキスト内のスマート引用符を取り除くことができます。

sThisPar = RepText(sThisPar, Chr(145), "'")

sThisPar = RepText(sThisPar, Chr(146), "'")

sThisPar = RepText(sThisPar, Chr(147), Chr(34))

sThisPar = RepText(sThisPar, Chr(148), Chr(34))

これらの行は、引用符とアポストロフィの開始と終了のスマートバージョンを「プレーン」な同等のものに置き換えます。このコードは、このヒントには示されていないRepTextと呼ばれる関数に依存しています。このルーチンは、あるテキストの出現を別のテキストに置き換えるだけです。 VBAの一部のバージョンでは、代わりに、それらのバージョンの言語に組み込まれている置換コマンドを使用できます。

その間、他のWord固有の文字をそれらの単純な同等の文字に置き換えることもできます。次の行は、それぞれ、ダッシュ、ダッシュ、および省略記号を置き換えます。

sThisPar = RepText(sThisPar, Chr(150), "-")

sThisPar = RepText(sThisPar, Chr(151), "--")

sThisPar = RepText(sThisPar, Chr(133), "...")

置換が完了すると、段落内のテキストをより自信を持って比較できます。

何らかの理由でマクロコードを変更できない場合は、マクロを実行する前に、ドキュメント内のスマート引用符を通常の引用符に置き換えることをお勧めします。ドキュメントを開き、(オートコレクトダイアログボックスで)自動スマートクォートをオフにしてから、2つの検索と置換操作を実行して、最初に各クォートをクォートに置き換えます([何を検索]ボックスと[置換]ボックスの両方にクォートを入力します)。 、2番目に、各アポストロフィをアポストロフィに置き換えます。その後、マクロを実行すると、比較がスムーズになります。

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(11983)は、Microsoft Word 2007、2010、2013、および2016に適用されます。Wordの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。