見出し画像

列を追加する

 Excel VBAで列を追加するには、主に以下の2つの方法があります。

  1. 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
上記以外にも、様々な方法で列を追加することができます。

この記事が気に入ったらサポートをしてみませんか?