マクロ記録でVBA
行の挿入・削除

Excelマクロの自動記録を使って、エクセルVBAの初心者向け入門解説
最終更新日:2014-12-01

第16回.行の挿入・削除


行の挿入と、行の削除をやってみましょう、


では、マクロの記録です。


1.マクロの記録

2.1行目を選択

3.「挿入」・・・Ctrl + Shift + +

4.A列を選択

5.「挿入」・・・Ctrl + Shift + +

6.1行目を選択

7.「削除」・・・Ctrl + Shift + -

8.A列を選択

9.「削除」・・・Ctrl + Shift + -

10.記録終了


作成れたマクロは、




Sub Macro1()
'
' Macro1 Macro
'

'
  Rows("1:1").Select
  Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
  Columns("A:A").Select
  Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
  Rows("1:1").Select
  Selection.Delete Shift:=xlUp
  Columns("A:A").Select
  Selection.Delete Shift:=xlToLeft
End Sub


見ずらいので、まずは消し込み


SelectとSelectionの消し込みは良いですね。


Sub Macro1()
  Rows("1:1").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
  Columns("A:A").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
  Rows("1:1").Delete Shift:=xlUp
  Columns("A:A").Delete Shift:=xlToLeft
End Sub


Rows("1:1")

これは、行全体の選択になります。

Rows("1:3")とすれば、1~3行の選択になります。


Columns("A:A")

列全体の選択になります。

Columns("A:C")とすれば、A~C列の選択になります。


Insert

挿入になります。

行挿入も、列挿入も、このInsertになります。


Shift:=xlDown

Shift:=xlToRight
挿入行・列以降の移動方向です。

ここでは、

行挿入は、xlDownで下

列挿入は、xlToRightで右


CopyOrigin:=xlFormatFromLeftOrAbove
挿入した行・列に適用する書式のコピー元を指定します。

この指定は、左の列、または、上の行ということです。

右の列、または、下の行の場合は、xlFormatFromRightOrBelow

省略した場合は、xlFormatFromLeftOrAboveになります。


Delete

行削除も、列削除も、このDeleteになります。


Shift:=xlUp
Shift:=xlToLeft
挿削除・列削除の移動方向です。

ここでは、

行削除は、xlUpで上

列削除は、xlToLeftで左



上のプログラム、よく考えると無駄が多いですよね。


行の挿入したら、それ以降は下に移動するに決まっているし、


行削除すれば、上に移動すねに決まっていますから。


そうです、これらの指定は不要です。


つまり、




Sub Macro1()
  Rows("1:1").Insert

  Columns("A:A").Insert

  Rows("1:1").Delete

  Columns("A:A").Delete

End Sub


.Insert、.Delete


これだけで良いのです、簡単ですね。


マクロでは、使う頻度が高いので、ぜひ覚えて下さい。




同じテーマ「マクロの記録でVBA」の記事

第13回.罫線を引く
第14回.行列を入れ替えて貼り付け
第15回.いろいろな消去
第16回.行の挿入・削除
第17回.並べ替え
第18回.オートフィルタ
第19回.オートフィルタ2
第20回.ジャンプのセル選択
第21回.条件付き書式
第22回.シートの移動コピー
第23回.セルの結合


新着記事NEW ・・・新着記事一覧を見る

シート関数のCOUNTIFS,SUMIFS,MAXIFSと同じ処理|Power Query(M言語)入門(2023-02-28)
新旧マスタの差異比較|Power Query(M言語)入門(2023-02-28)
有効な最新単価の取得|Power Query(M言語)入門(2023-02-26)
有効な最新単価の取得|Power Query(M言語)入門(2023-02-21)
グルーブ内の最小・最大|Power Query(M言語)入門(2023-02-17)
2つのテーブルのマージ|Power Query(M言語)入門(2023-02-15)
「売上」が数値の行のみ取り込む|Power Query(M言語)入門(2023-02-13)
A列のヘッダー名を変更する|Power Query(M言語)入門(2023-02-11)
CSVのA列が日付の行だけを取り込む|Power Query(M言語)入門(2023-02-10)
列数不定のCSVの取り込み|Power Query(M言語)入門(2023-02-09)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.マクロって何?VBAって何?|VBA入門
7.並べ替え(Sort)|VBA入門
8.エクセルVBAでのシート指定方法|VBA技術解説
9.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
10.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ