Google Apps Script (GAS) でスプレッドシートのアクティブなシートの行・列を追加・挿入する方法、また削除する方法を説明します。
SpreadSheetクラスのメソッドを利用した手順について説明します。
アクティブなシートではなく、シートを指定したい場合は、下記のSheetクラスのメソッドを利用する方法をご覧ください。
Google Apps Scriptの基本的な使い方については下記をご覧ください。
GASによるスプレッドシート操作の概要
GASでスプレッドシートを操作するための「SpreadSheetサービス」は、主に下記のクラスで構成されています。
クラス | 説明 |
---|---|
SpreadSheetApp | SpreadSheetサービスの親クラス |
Spreadsheet | スプレッドシートを操作するクラス |
Sheet | シートを操作するクラス |
Range | セル範囲を操作するクラス |
それぞれ下記のような位置付けになります。
「SpreadSheetApp」→「SpreadSheet」→「Sheet」→「Range」という順の階層構造になっています。操作対象に応じて、下の階層にたどってオブジェクトを取得して利用します。
このページでは、上記の中のSpreadSheetクラスの下記のメソッドについて説明します。
メソッド | 戻り値 | 説明 |
---|---|---|
insertRowBefore(beforePosition) | Sheet | 指定した行の前に行を挿入する |
insertRowsBefore(beforePosition, howMany) | Sheet | 指定した行の前に複数の行を挿入する |
insertRowAfter(afterPosition) | Sheet | 指定した行の後に行を挿入する |
insertRowsAfter(afterPosition, howMany) | Sheet | 指定した行の後に複数の行を挿入する |
insertColumnBefore(beforePosition) | Sheet | 指定した列の前に列を挿入する |
insertColumnsBefore(beforePosition, howMany) | Sheet | 指定した列の前に複数の列を挿入する |
insertColumnAfter(afterPosition) | Sheet | 指定した列の後に列を挿入する |
insertColumnsAfter(afterPosition, howMany) | Sheet | 指定した列の後に複数の列を挿入する |
deleteRow(rowPosition) | Sheet | 指定した行を削除する |
deleteRows(rowPosition, howMany) | void | 指定した複数の行を削除する |
deleteColumn(columnPosition) | Sheet | 指定した列を削除する |
deleteColumns(columnPosition, howMany) | void | 指定した複数の列を削除する |
アクティブなシートに行を挿入する
アクティブなシートに行を挿入するメソッドを説明します。
指定した行の前に行を挿入する:insertRowBefore(beforePosition)
指定した行の前に行を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertRowBefore(3); } |
下記のファイルに対して実行すると、
下記の結果になります。もともとの3行目の上に新しい行が挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertRowBeforeメソッドを利用します。
指定した行の前に複数の行を挿入する:insertRowsBefore(beforePosition, howMany)
指定した行の前に複数の行を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertRowsBefore(3, 3); } |
下記のファイルに対して実行すると、
下記の結果になります。もともとの3行目の上に新しい行が3行挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertRowsBeforeメソッドを利用します。
指定した行の後に行を挿入する:insertRowAfter(afterPosition)
指定した行の後に行を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertRowAfter(3); } |
下記のファイルに対して実行すると、
下記の結果になります。3行目の下に新しい行が挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertRowAfterメソッドを利用します。
指定した行の後に複数の行を挿入する:insertRowsAfter(afterPosition, howMany)
指定した行の後に複数の行を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertRowsAfter(3, 3); } |
下記のファイルに対して実行すると、
下記の結果になります。3行目の下に新しい行が3行挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertRowsAfterメソッドを利用します。
アクティブなシートに列を挿入する
アクティブなシートに列を挿入するメソッドを説明します。
指定した列の前に列を挿入する:insertColumnBefore(beforePosition)
指定した列の前に列を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertColumnBefore(3); } |
下記のファイルに対して実行すると、
下記の結果になります。もともとの3列目の左に新しい列が挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertColumnBeforeメソッドを利用します。
指定した列の前に複数の列を挿入する:insertColumnsBefore(beforePosition, howMany)
指定した列の前に複数の列を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertColumnsBefore(3, 3); } |
下記のファイルに対して実行すると、
下記の結果になります。もともとの3列目の左に新しい列が3列挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertColumnsBeforeメソッドを利用します。
指定した列の後に列を挿入する:insertColumnAfter(afterPosition)
指定した列の後に列を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertColumnAfter(3); } |
下記のファイルに対して実行すると、
下記の結果になります。3列目の右に新しい列が挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertColumnAfterメソッドを利用します。
指定した列の後に複数の列を挿入する:insertColumnsAfter(afterPosition, howMany)
指定した列の後に複数の列を挿入する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.insertColumnsAfter(3, 3); } |
下記のファイルに対して実行すると、
下記の結果になります。3列目の右に新しい列が3列挿入されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのinsertColumnsAfterメソッドをします。
アクティブなシートの行を削除する
アクティブなシートの行を削除するメソッドを説明します。
指定した行を削除する:deleteRow(rowPosition)
指定した行を削除する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.deleteRow(3); } |
下記のファイルに対して実行すると、
下記の結果になります。指定した3行目が削除されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのdeleteRowメソッドを利用します。
指定した複数の行を削除する:deleteRows(rowPosition, howMany)
指定した複数の行を削除する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.deleteRows(3, 2); } |
下記のファイルに対して実行すると、
下記の結果になります。指定した3行目から2行分が削除されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのdeleteRowsメソッドを利用します。
アクティブなシートの列を削除する
アクティブなシートの列を削除するメソッドを説明します。
指定した列を削除する:deleteColumn(columnPosition)
指定した列を削除する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.deleteColumn(3); } |
下記のファイルに対して実行すると、
下記の結果になります。指定した3列目が削除されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのdeleteColumnメソッドを利用します。
指定した複数の列を削除する:deleteColumns(columnPosition, howMany)
指定した複数の列を削除する方法です。
下記のように実行します。
1 2 3 4 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); testSpreadSheet.deleteColumns(3, 2); } |
下記のファイルに対して実行すると、
下記の結果になります。指定した3列目から2列分が削除されます。
アクティブなシートのデータを取得します。
シートを指定したい場合は、SheetクラスのdeleteColumnsメソッドを利用します。
まとめ
Google Apps Script (GAS) でスプレッドシートの行・列を追加・挿入する方法、また削除する方法を説明しました。
GASは無料で利用できてとても便利なツールです。
Googleスプレッドシート等のGoogleアプリケーションを利用されている方は、GASを習得することで作業を大きく効率化できます。
GASの基本構文を知りたい方は、下記もご覧ください。