Google Apps Script(GAS)を使用してスプレッドシートのシートに列を挿入、追加する方法を解説していきます。
なお、列だけではなく、行の挿入方法も知りたい方はこちらの記事がおすすめです。

スプレッドシートのシートに列を挿入する方法一覧
メソッド | 説明 |
---|---|
Sheet.insertColumnBefore() | 指定位置の前に1列挿入。列番号を引数で指定。 |
Sheet.insertColumnsBefore() | 指定位置の前に複数列挿入。始点と列数を引数で指定。 |
Sheet.insertColumnAfter() | 指定位置の後に1列挿入。列番号を引数で指定。 |
Sheet.insertColumnsAfter() | 指定位置の後に複数列挿入。始点と列数を引数で指定。 |
Sheet.insertColumns() | 指定位置に複数列挿入。始点・数を引数で指定。 |
Sheet.insertColumnBefore():指定位置の前に1列挿入

Sheet.insertColumnBefore() 関数は、指定した位置の前に1つの列を追加するための関数です。
GASではこれを使用することで、特定の列の前に新しい列を挿入することができます。
Sheet.insertColumnBefore()の書式
Sheet.insertColumnBefore(列番号)
引数 | タイプ | 内容 |
---|---|---|
列番号 | Integer | 新しい列を追加する前の列番号 |
Sheet.insertColumnBefore()の使用例
let sheet = SpreadsheetApp.getActiveSheet();
sheet.insertColumnBefore(3); // 3番目の列の前に新しい列を挿入
この例では、3番目の列の前に新しい列を挿入しています。
getActiveSheet() メソッドを使用してアクティブなシートを取得し、insertColumnBefore() 関数を呼び出して新しい列を挿入しています。
これにより、指定した位置の前に列が追加されます。
Sheet.insertColumnBefore()の注意点
- 列番号は1から始まることに注意してください。
- 列を挿入すると、既存のデータが右にシフトされることになります。
Sheet.insertColumnsBefore():指定位置の前に複数列挿入

Sheet.insertColumnsBefore() 関数は、指定した位置の前に複数の列を一度に挿入するための関数です。
挿入する最初の列の位置と、挿入する列の数を引数として受け取ります。
Sheet.insertColumnsBefore()の書式
insertColumnsBefore(列番号, 列数)
引数 | タイプ | 内容 |
---|---|---|
列番号 | Integer | 新しい列を追加する前の列番号 |
列数 | Integer | 挿入する新しい列の数 |
Sheet.insertColumnsBefore()の使用例
let sheet = SpreadsheetApp.getActiveSheet();
sheet.insertColumnsBefore(2, 2); // 2番目の列の前に新しい2列を挿入
この例では、2番目の列の前に新しい2列を挿入しています。
getActiveSheet() メソッドを使用してアクティブなシートを取得し、insertColumnsBefore() 関数を呼び出して新しい複数列を挿入しています。指定した位置の前に指定した数の列が追加されます。
Sheet.insertColumnsBefore()の注意点
- 列番号は1から始まります。したがって、1番目の列の前に挿入する場合は、sheet.insertColumnsBefore(1, 2) のように指定します。
- 挿入された列以降の列番号が、挿入した列の数だけ増加します。
Sheet.insertColumnAfter():指定位置の後に1列挿入

Sheet.insertColumnAfter() 関数は、指定した位置の後に1つの列を追加するための関数です。
これを使用することで、特定の列の後に新しい列を挿入することができます。
Sheet.insertColumnAfter()の書式
Sheet.insertColumnAfter(列番号)
引数 | タイプ | 内容 |
---|---|---|
列番号 | Integer | 新しい列を追加する後ろの列番号 |
Sheet.insertColumnAfter()の使用例
let sheet = SpreadsheetApp.getActiveSheet();
sheet.insertColumnAfter(2); // 2番目の列の後に新しい列を挿入
この例では、getActiveSheet() メソッドを使用してアクティブなシートを取得し、アクティブなシートで2番目の列の後に新しい列が挿入しています。
Sheet.insertColumnAfter()の注意点
- 列番号は1から始まります。したがって、1番目の列の後に挿入する場合は、sheet.insertColumnAfter(1) のように指定します。
- 列を挿入すると、その位置以降の列番号が1つずつ増加します。
Sheet.insertColumnsAfter():指定位置の後に複数列挿入

Sheet.insertColumnsAfter() 関数は、指定した位置の後に複数の列を一度に挿入するための関数です。
挿入する最初の列の位置と、挿入する列の数を引数として受け取ります。
Sheet.insertColumnsAfter()の書式
Sheet.insertColumnsAfter(列番号,列数)
引数 | タイプ | 内容 |
---|---|---|
列番号 | Integer | 新しい列を追加する後ろの列番号 |
列数 | Integer | 挿入する新しい列の数 |
Sheet.insertColumnsAfter()の使用例
let sheet = SpreadsheetApp.getActiveSheet();
sheet.insertColumnsAfter(1, 2); // 1番目の列の後ろに新しい2列を挿入
この例では、1番目の列の後ろに新しい2列を挿入しています。
getActiveSheet() メソッドを使用してアクティブなシートを取得し、insertColumnsAfter() 関数を呼び出して新しい複数列を挿入しています。指定した位置の後ろに指定した数の列が追加されます。
注意点
- 列番号は1から始まります。したがって、1番目の列の後ろに挿入する場合は、sheet.insertColumnsAfter(1, 3) のように指定します。
- 挿入された列およびそれ以降の列番号が、挿入した列の数だけ増加します。
Sheet.insertColumns():指定位置に複数列挿入

Sheet.insertColumns() 関数は、指定した位置に複数の列を一度に挿入するための関数です。
挿入する最初の列の位置、挿入する列の数を指定できます。
Sheet.insertColumns()の書式
Sheet.insertColumns(列番号, (列数))
引数 | タイプ | 内容 |
---|---|---|
列番号 | Integer | 新しく追加したい列の番号 |
列数 | Integer | 挿入する新しい列の数 |
※列数を指定しない場合は、1列のみ追加できます。
Sheet.insertColumns()の使用例
let sheet = SpreadsheetApp.getActiveSheet();
sheet.insertColumns(2, 2); // 2番目の列の位置に新しい2列を挿入
この例では、2番目の列の位置に新しい2列を挿入しています。
getActiveSheet() メソッドを使用してアクティブなシートを取得し、insertColumns() 関数を呼び出して新しい複数列を挿入しています。指定した位置に、指定した数の列が追加されます。
注意点
- 列番号は1から始まります。したがって、1番目の列に挿入する場合は、sheet.insertColumns(1, 3) のように指定します。
- 列の幅はピクセル単位で指定します。スプレッドシートのデフォルトの幅は80です。

