• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:秀丸マクロ insertで複数行を追加するとき)

秀丸マクロで複数行を挿入する方法

このQ&Aのポイント
  • 初心者向けの秀丸マクロの使い方です。
  • insert命令で複数行の文字列を追加する際に、挿入位置がうまくならない問題について解説します。
  • タブに合わせて行を挿入する方法を紹介します。

質問者が選んだベストアンサー

  • ベストアンサー
  • hirotn
  • ベストアンサー率59% (147/246)
回答No.1

タブ文字は\tが該当しますので、insertの引数の中に入れてご利用ください。 「1つとは限らない」場合は、「あいうえお」のinsert前に、あらかじめ入力されているタブを取得してしまいます。 $tabs = gettext(0,y,x,y); insert "あいうえお\n"; insert $tabs; insert "かきくけこ\n"; こういうイメージです。ただ、問題が1つあり、あいうえおの挿入行の手前にタブ以外の文字があっても、すべて受け入れ、すべての行の初めに挿入してしまうマクロになっているので、タブであることは保証しなくてはいけません。

tatapatank
質問者

お礼

すみません。ちょっと勘違いしていました。 正しく動作しました。 ありがとうございました。

tatapatank
質問者

補足

回答、ありがとうございます。 説明が足らずに申し訳なかったのですが、 この方法ですと、タブではなく、スペースが 連続して入ってしまうような気がします。 左端からカーソル位置まで、いくつタブが 入っているかなどを求めたりなどはできないでしょうか? 半端な文字数分は、この際無視してしまうとします。 細かな注文で申し訳ありません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 秀丸マクロについて

    行頭にスペースやタブが0~n個あり、続いて「//」がある行の行頭に 「p」と付与する秀丸マクロを作成したいのですが、 このような場合はどうすればよいでしょうか? 参考になるコードやサイトなどあれば教えて頂けないでしょうか? 例: <タブ><半角スペース><半角スペース>//AAA <タブ><タブ>BBB<タブ>//CCC //DDD EEE<半角スペース><半角スペース>//FFF ↓ p<タブ><半角スペース><半角スペース>//AAA <タブ><タブ>BBB<タブ>//CCC   ←条件に合わないので「p」はつけない p//DDD EEE<半角スペース><半角スペース>//FFF   ←条件に合わないので「p」はつけない

  • 秀丸マクロについて

    1行目から3行目までを1、4行目から6行目までを2、7行目から9行目までを3、と3行で1増えていくような数値を出力するマクロを書きたいと思います。 [作成したいデータ]------------------ 1, 1, 1, 2, 2, 2, 3, 3, 3, 4... ------------------------ 下記のマクロの<>部の記述方法をアドバイス下さい。 [Macro]------------------------------- disabledraw; gofiletop; #a =1; while(#a < 100){ insert <aを3で割った整数部+1> insert "\n"; #a=#a+1; } enabledraw; endmacro; -------------------------------------- 他によい案があればそれでも結構ですが。。 宜しくお願いします。

  • エクセルで行を追加するマクロ

    いつもお世話になります。 エクセルのマクロでこんなことは可能でしょうか。 (1)ある「不特定のセル」に値が入ったとき(そのセルの列は決まっています) (2)自動的にそのセルの「行」全体をコピーし (3)ひとつ下の行に「コピーしたセルの挿入」で行の追加をする 「不特定のセル」というところでつまづいています。 お詳しい方、ご教授宜しくお願い致します。

  • word。複数行の頭をタブで揃えたい

    いつもご丁寧に回答をありがとうございます。  word2007を利用しています。  タブで行頭をそろえる方法は学びました。しかし、それが複数行になると、1行目のみ行頭がそろい、2行目以降はタブ位置は無視されます。  2行目以上にわたる文章に、タブで行頭をそろえる方法はあるでしょうか。 ご回答、どうぞよろしくお願いします。

  • 文字列の数抽出、行挿入マクロ

    急きょ下記処理を実施することになったのですが、本やネットで下記処理ができるような マクロを色々探していもなかなか見つからず…。(T_T) どなたか詳しい方がいらっしゃいましたら教えていただけませんでしょうか? ・A列に特定の文字列(;)があった場合、その列をコピー。 ・その列の下に文字列(;)の数と同数の行を挿入。 ・挿入した行のAセルに、文字列(;)のすぐ後ろの1ケタを貼り付け。 ・(挿入行が2行の場合) さらに下に挿入した行のAセルに、左から2つ目の文字列(;)の  すぐ後ろの1ケタを貼り付け。 なお、A列の行数は、現時点で500行ほどあり、今後増える可能性もあります。 【処理する前】       A列      B列    C列 1行目  1;32     555   AAA 2行目  29;1;4   222   GGG 3行目  600      111   FFF 【マクロ実行後】       A列    B列   C列 1行目  1     555   AAA 2行目  32    555   AAA 3行目  29    222   GGG 4行目  1     222   GGG 5行目  4     222   GGG  6行目  600   111   FFF どうぞよろしくお願いいたします。

  • ExcelVBA 複数のシートへの行挿入

    現在下記の操作を行いたい為、Excelマクロを作成しています。 Sheet1のアクティブセルの行に(AからN列の)行の挿入 Sheet2から4はSheet1のアクティブセルの行+2の(AからN列の)箇所に行の挿入 Sheet5は行挿入を行わない。 このような操作をマクロで行う事は可能でしょうか。 またどのように記述すればよろしいでしょうか。 よろしくお願い致します。 例: Sheet1のアクティブセル = A3の場合 Sheet1 = A3からN3まで行挿入 Sheet2から4はA5からN5まで行挿入 Sheet5は行挿入を行わない。 現在ここまで作成しています。 Sub Add() ActiveCell.Offset().Activate ActiveCell.EntireRow.Range("a1:n1").Insert Shift:=xlDown End Sub

  • 秀丸マクロについて質問です。

    秀丸マクロについて質問です。 秀丸で編集されたテキスト文書の中でabcdefgという文字列がある行を検索し、 その行情報を取得し、その行の隣にある文字列(下記の例では123456)を返す にはどのようにすればよいでしょうか? ご回答よろしくお願いします。 (例) 567行目に以下の文があるとします。 abcdefg,123456,goukaku

  • ExcelVBA : 一定範囲の行追加

    いつもお世話になっております。 現在表を作成しており、項目を随時追加できるマクロを作成したいと思っております。 下記の条件でのマクロ記述を教えて頂けないでしょうか。 ・現在アクティブになっているセルと同じ列の特定範囲の行を追加したい。 例: 列1のどこかのセルがアクティブの時、A1からK1までの行を追加。 以上、よろしくお願い致します。

  • エクセルで複数行のデータを1行にする方法

    エクセルで複数行のデータを列挿入--切り取り--貼り付けで1行にしたいのですが、 その様なセルの並びが沢山あります。 VBAマクロなどで一度に出来る方法が有りましたらどうか教えて下さい。 データはこんな感じです。 ┌─┬─┬─┬─┬─┐ │01│04│07│10│13│ ├─┼─┼─┼─┼─┤ │02│05│08│11│14│ ├─┼─┼─┼─┼─┤ │03│06│09│12│15│ ├─┼─┼─┼─┼─┤ │16│19│22│25│28│ ├─┼─┼─┼─┼─┤ │17│20│23│26│29│ ├─┼─┼─┼─┼─┤ │18│21│24│27│30│ ├─┼─┼─┼─┼─┤ この様に並び替えたいのです。 ┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐ │01│02│03│04│05│06│07│08│09│10│11│12│13│14│15│ ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ │16│17│18│19│20│21│22│23│24│25│26│27│28│29│30│ ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ 何卒宜しくお願いいたします。

  • エクセル 行追加マクロについて

    エクセル 行追加マクロについて 2007エクセルマクロ初心者です。 スケジュール表を作成、行追加マクロを作ろうとしてます。 シートの上下に表があり、上の表に行追加です。 関数式を壊したくないので、一部セルへロックをかけています。 以下の点についてご教授をお願いいたします。 行追加マクロを実行するとパスワードを要求されます。 聞かれないようにできないでしょうか。? パスワードを入力した以降は要求されませんが シートの保護解除を選択すると保護が解除されてしまいます。 パスワード記載のマクロを試したことがありますが、 表へオートシェイプが描写できなかったので断念しました。 Sub 行追加() With ActiveSheet 'シート保護解除 .Unprotect Range("A65536").End(xlUp).Offset(-8).Select ActiveCell.Resize(1, 79).Select Selection.Copy Selection.Insert Shift:=xlDown Range("A65536").End(xlUp).Offset(-8).Select ActiveCell.Resize(1, 9).Select Selection.ClearContents 'シート保護 .Protect DrawingObjects:=False, Contents:=True, Scenarios:= _ True End With End Sub