
秀丸エディタのマクロを使って以下の処理を行おうとしました。
1.検索した文字の一行下の行をコピーし、
そのコピーした行末にコピーしたデータを貼り付ける。
2.最初に検索した文字に該当する次の文字の一行下の行をコピーし、
そのコピーした行末にコピーしたデータを貼り付ける。
(繰り返し。)
3.文末(EOF)まで2.の処理を繰り返す。
以下のマクロを作ってみました。
while(code != eof){
setcompatiblemode 15;
searchdown "検索文字" , hilight;
down 1;
copyline;
paste;
finddown;
すると、2.の処理まで正常に実行されるのですが、
検索文字がなくなった時点で2の処理がストップされる事がなく、
それ以降の行のすべてが文末(EOF)まで、コピー&ペーストの処理が
繰り返されます。
例:______________________________________________________
(元の文)
○○
×××
△△
■■■
○○
□□□□
☆☆
(検索する文字)
○○
(マクロ実行後の文)
○○
×××
×××
△△
■■■
○○
□□□□
□□□□
☆☆
☆☆
______________________________________________________
上記の例でいうと、(元の文)の☆☆の部分が、(マクロ実行後の文)で
☆☆
☆☆
となってしまってます。
この部分を
☆☆
のままにしたいのです。
マクロをどのように組めば実現できるのでしょうか。
よろしくお願いします。

No.2ベストアンサー
- 回答日時:
以下のようにしてください
----------------------------------------------------
setcompatiblemode 15;
//ファイルの先頭へ移動(カーソルがどこにあっても良いようにするため)
gofiletop
searchdown "検索文字" , hilight;
while(1){
if (result == 0) { break;}
//行頭へ移動(しないと正しくコピーできない)
golinetop;
down 1;
copyline;
paste;
finddown;
}
------------------------------------
不明点は、聞いてください。動作確認済みです。
No.1
- 回答日時:
searchdownの実行のあとの行で、検索対象が見つかったかどうかを
チェックすればよいのでは?
マクロヘルプから
成功したかしなかったかによって結果コードを返します。結果コードはresultキーワードで参照することができます。
成功した場合は1(TRUE)になり、失敗した場合は0(FALSE)になります。
この回答への補足
マクロの文の組み方がわかりません。
今回の場合、どのような文になるのでしょうか。
因みに先ほどの文で記載間違いがあったので訂正させていただきます。
finddown;の後の
}
が入ります。
以上、よろしくお願いします。
マクロヘルプを見て以下に書き換えてみましたが上手くいきません。
while文を使うのでしょうか。どのような文になるのでしょうか。
searchdown "検索文字/" , hilight;
down 1;
copyline;
paste;
finddown;
if( result == 0 ) {
endmacro;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
プログラミングを学べる!?進化している子どものおもちゃについて専門家に聞いた!
プログラミングを学べるレゴブロックがあることはご存知だろうか。レゴに限らず最近のおもちゃには、プログラミングの要素がどんどん取り入れられているようだ。「教えて!goo」にも、「プログラミングを学べる子供...
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
UWLSの記録でマクロを作成し使...
-
エクセルで別のセルにあるふり...
-
メッセージボックスのOKボタ...
-
VBSからエクセルのマクロを起動...
-
Excel_マクロ_現在開いているシ...
-
特定のPCだけ動作しないVBAマク...
-
エクセルVBA イベントプロシー...
-
Excel・Word リサーチ機能を無...
-
既存のマクロをコンボボックス...
-
エクセルで縦に並んだデータを...
-
TERA TERMを隠す方法
-
Sub ***( ) と Private Sub ***...
-
エクセルのマクロについて教え...
-
【EXCEL VBA】オートシェイプを...
-
プリプロセッサのエラー対策が...
-
テニス(ダブルス)乱数表 Exc...
-
レポートで空データ時に印刷しない
-
ExcelのVBA。public変数の値が...
-
エクセルのマクロについて教え...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
Excel_マクロ_現在開いているシ...
-
一つのTeratermのマクロで複数...
-
マクロの連続印刷が突然不可能...
-
ExcelのVBA。public変数の値が...
-
Excel マクロ VBA プロシー...
-
Excel・Word リサーチ機能を無...
-
エクセルに張り付けた写真のフ...
-
Excelのセル値に基づいて図形の...
-
TERA TERMを隠す方法
-
マクロ実行時エラー
-
ExcelVBAでPDFを閉じるソース
-
wordを起動した際に特定のペー...
-
特定文字のある行の前に空白行...
-
Excel マクロでShearePoint先の...
-
エクセルで縦に並んだデータを...
-
マクロ実行時、ユーザーフォー...
-
ソース内の行末に\\
おすすめ情報