- 作成者投稿
- 2008年9月15日 7:23 am #6503totasutaメンバー
EmEditorはそこそこ使っていましたが、マクロは全然使っていなかったものです。すごく初心者で申し訳ございません。
今回、特定の文字列に連番を付与する必要性がでてきたため、下記のようなマクロを作りました。
例えば、
という言葉を、 のように連番を追加していくとして、
————–
var no = 1;while (document.selection.Find(“
“, eeFindNext) > 0) {
document.selection.Replace(““,” “,eeFindNext);
no++;
}
————–
とすると、なぜか、一つ置きに追加されていってしまいました。何が足りない要素か、どなた様か、大変申し訳ないですが、教えていただけますでしょうか。
ちなみに、現在応急処置として、3番目以降が正しく連番が振られるように、下記のようにしました。
————–
var no = 2;while (document.selection.Find(“
“, eeFindNext) > 0) {
document.selection.Replace(““,” “,eeFindNext);
document.selection.Find(““, eeFindPrevious);
no++;
}
————–
この場合、なぜか、2番目の特定文字列(例で言うと)が飛ばされて、3番目以降が正常に連番を付与されていきます。 何卒よろしくお願いいたします。
2008年9月15日 11:27 am #6504匿名ゲストFind => 次のを検索
Replace => 次のを検索してに置換という動作なので、Findを無くしてReplaceだけにすればうまく動作すると思います。
for(var i = 1; document.selection.Replace(“”,””,eeFindNext) > 0; ++i) {}
- 作成者投稿
- このトピックに返信するにはログインしてください。