列を追加する
Excel VBAで列を追加するには、主に以下の2つの方法があります。
Columnsオブジェクトを使用する
VBA
Columns(列番号).Insert
コードは注意してご使用ください。
この方法は、特定の列番号に列を挿入する場合に便利です。
例:A列の右側に列を挿入する場合
VBA
Columns(2).Insert
コードは注意してご使用ください。
2. RangeオブジェクトとEntireColumnプロパティを使用する
VBA
Range(セル名).EntireColumn.Insert
コードは注意してご使用ください。
この方法は、選択範囲の右側に列を挿入する場合に便利です。
例:B2セルを選択している場合、B列の右側に列を挿入する場合
VBA
Range("B2").EntireColumn.Insert
コードは注意してご使用ください。
オプション
上記のいずれの方法でも、オプション引数を使用して、挿入する列の位置やシフトを指定することができます。
Shift:=xlShiftDown:挿入する列を下にシフトします。(既定値)
Shift:=xlShiftUp:挿入する列を上にシフトします。
例:A列の右側に列を挿入し、既存の列を下に1つシフトする場合
VBA
Columns(2).Insert Shift:=xlShiftDown
コードは注意してご使用ください。
注意点
マクロを実行する前に、ワークシートが選択されていることを確認してください。
複数の列を挿入する場合は、ループを使用して繰り返し処理するのが一般的です。
以下に、上記の方法を組み合わせた列挿入マクロの例を示します。
VBA
Sub 列を挿入()
' 列番号を取得
Dim colNum As Integer
colNum = InputBox("挿入する列番号を入力してください:")
' 列を挿入
Columns(colNum).Insert Shift:=xlShiftDown
End Sub
コードは注意してご使用ください。
このマクロを実行すると、ユーザーに列番号を入力するダイアログが表示され、入力された番号の列に新しい列が挿入されます。
参考情報
【ExcelVBA入門】列を挿入するためのInsertメソッドの使い方とは | 侍エンジニアブログ:https://www.sejuku.net/blog/category/programming-language/excel-vba
【簡単エクセルマクロ・VBA】セル、行、列の挿入|セルの基本操作 #011 | みんなの実用学:https://www.youtube.com/watch?v=DuftSGFhwMI
初心者でもかんたん理解! Excelマクロで行や列を削除・挿入する方法 - ダイヤモンド・オンライン:https://tfwiki.net/wiki/Trickdiamond
上記以外にも、様々な方法で列を追加することができます。
この記事が気に入ったらサポートをしてみませんか?