#8105
Yutaka Emura
キーマスター

Thomasさんは書きました:
OS:Windows Xp Professional 64Bit Edition version 2003 SP2
EmEditor Professional x64 Edition Version 8.06 を使用しています。

マクロの動作についての質問です。

どのように表現すればよいかわからないので、キーボードマップ中のカテゴリとコマンドを次のように表現します。
[カテゴリ、コマンド]

質問:キーボードマクロで登録した次マクロの動作は正しいのでしょうか。

キーボードマクロの登録内容
[検索、検索コマンド]
検索文言:ならば
[検索、次を検索]
[検索、検索文字列の強調を解除]

動作詳細:
上記のようにマクロを登録して次の例文の文頭でマクロを実行します。

例文
Aならば”テスト1”、Bならば”完成品1”
Cならば”テスト2”、Dならば”工事中2”

この段階では、Bならば…の「ならば」が選択された状態になります。
ここまでは普通です。

この後、「工事中」を検索します。
文頭へ戻って、先ほどのマクロを実行します。
ここでは2行目の”工事中2”の「工事中」が選択された状態になります。

つまり、マクロ中で文言指定したはずの「ならば」ではなく、後から指定した「工事中」が検索されています。

この動作が正しいかどうかということを教えてください。

ちなみに
上記キーボードマクロを編集でjava scriptに変換すると次のようになります。

document.selection.Find(“ならば”,eeFindNext);
document.selection.FindRepeat(eeFindRepeatNext);
document.HighlightFind=false;

実使用上は、2個目の”ならば”にカーソルを移動させたいので、マクロを以下のように書き直しました.

document.selection.Find(“ならば”,eeFindNext);
document.selection.Find(“ならば”,eeFindNext);
document.HighlightFind=false;

確かに、ご指摘のような動作になりますね。これが正しい動作かどうか、というのは検討させてください。ご意見ありがとうございます。