Google Apps Script では、エクセルの場合のように指定したシートを削除することはできなさそう
だが、アクティブになっているシートを削除することはできる。アクティブシートを削除する場合は、Spreadsheet オブジェクトの deleteActiveSheet メソッドを使用する。
【構文】
SpreadsheetObject.deleteActiveSheet()
戻り値 : Sheet 型。削除した後にアクティブになる Sheet オブジェクトを返すようである。
「シートを追加する」の項と同様に、4つのシートをもつスプレッドシートから、アクティブになって
いる「シート1」を削除するサンプルコードを以下に記す。
【例】
function DeleteActiveSheet() {
var objSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var objSheet = objSpreadsheet.deleteActiveSheet();
Browser.msgBox(objSheet.getName());
}
コードの最終行では、deleteActiveSheet メソッドを実行した結果返される Sheet オブジェクト
のシート名をメッセージボックスに表示するようにしている。実行後のサンプルシートは下記
の通り :
また、表示されるメッセージは下記の通り :
この二つの事象から、アクティブシートを削除した場合は、削除したシートの右隣にあるシート
がアクティブとなり、その(新たにアクティブになった)シートが deleteActiveSheet メソッドの戻り
値としてかえされるようである。但し、関連するサイトには、そのような記述がないので、あくまで
も推測の域をでない。deleteActiveSheet メソッドの戻り値は使用しない方が良いような気がする。
0 件のコメント:
コメントを投稿