話をパソコンソフトに限定するなら、この場合のマクロというのは「任意に設定された判断・処理条件に基づいて自動処理を行わせる手段のひとつ」とでもしておきましょうか。
「マルナガさん、この表計算の数字、三桁ごとにカンマじゃなくて読点(、)を入れたでしょ! だからアタシ、これ全部カンマ(,)に打ち直したんだよー! 手作業で!」
その昔、職場で作業してたときに聞こえてきた会話の一部。そんなん何十ページあったところで『検索・置換』で『読点を検索しヒットしたらカンマに置換せよ』を実行すりゃ一瞬で終わりだろうに、と思いましたが、同僚ですらない部外者がしゃしゃり出ることでもないので黙っていました。
このような単純なケースでは、対象になる原稿がたとえ何万ページに及んだとしても、検索・置換を使えばほぼ瞬時に完了することでしょう。
#でもこういうケースで、半ベソかきながら徹夜して手作業で直すひとはきっと実在する:p。
人間様が一晩かかってやることを、適切な条件さえ与えれば一瞬で処理してしまうのがマシンの凄いところです。
では単純な検索・置換一発で処理できないときはどうしましょう? 『アラビア数字→漢数字』にするとかその逆という場合は。
ケタにこだわらず1を一に、2を二に、という具合に置換するなら、0から9まで十回置換を繰り返せばよさそうですが、そういった創造的とはいえない単純作業を人間様が九回も繰り返すのは時間のムダです。マクロに代行させましょう。
本稿で公開しているマクロは、エムソフト製のテキストエディタ・EmEditor Professional v4(シェアウェア)用にJavaScript(正確には互換スクリプトのJScriptですが)を用いて作ったものです。Standard版も含めてそれ以外の環境では動きませんので、ご注意下さい。
尚作者はJavaScriptに限らずプログラムの基本的な素養がないため、先達が公開したマクロを参考にして、動きゃいいよな程度の作りしかできません。プログラムの書法として不適切な個所は指摘していただけたら幸いですし、始まりはなんであれ、これを機にテキストの自動処理に関心を持っていただけたらうれしいですし、更にはウチのマクロの余りのあんまりさ加減に『こんなものは本物の……』とばかりに、より効率的で処理速度も速いマクロを作って広く公開していただけるのならば、ものすごくうれしいです。
その昔『原稿の枚数を稼ぎたければ兵隊を出して点呼を取らせれば良い』と言ったのはSF作家の筒井康隆だったでしょうか。このマクロはそれを自動で実現するために作りました。
号令をかける以外にも、数字以外は共通の文字列を一行に一件ずつ、連番で作るのにもきっと便利です。
[OK]を選択すると漢数字になります。
「番号!」 「一」 「二」 「三」 「四」 「五」 「六」 「七」 「八」 「九」 「一〇」
[キャンセル]を選択すると半角数字のままです。
「番号!」 「1」 「2」 「3」 「4」 「5」 「6」 「7」 「8」 「9」 「10」
「番号!」をなくし、漢数字で、20〜40まで、三つずつ大きくすることもできます。
「二〇」 「二三」 「二六」 「二九」 「三二」 「三五」 「三八」
「番号!」をなくし、10〜1まで、一つずつ小さくすることもできます。
10 9 8 7 6 5 4 3 2 1
20〜1まで、二つずつ小さくすることもできます。
「番号!」 「20」 「18」 「16」 「14」 「12」 「10」 「8」 「6」 「4」 「2」
冗談マクロ:「号令一番」 (1KB)