Spreadsheetクラスは、スプレッドシートを操作する機能を提供するクラスです。スプレッドシート自体の情報提供やシートを取得したり作成したりする等のメンバーが提供されています。
メンバー一覧
主な種類を紹介します。
メンバー | 説明 |
addDeveloperMetadata(メタデータ) | スプレッドシートに開発者メタデータを追加します |
addMenu(メニュー名, メニュー項目) | カスタムメニューをスプレッドシートに追加します |
copy(コピー先名) | スプレッドシートをコピーし、新しいシートを作成します |
deleteActiveSheet() | 現在アクティブなシートを削除します |
duplicateActiveSheet() | 現在アクティブなシートを複製します |
getActiveCell() | 現在アクティブなセルを取得します |
getActiveRange() | 現在アクティブな範囲を取得します |
getActiveSheet() | 現在アクティブなシートを取得します |
getId() | スプレッドシートのIDを取得します |
getName() | スプレッドシートの名前を取得します |
getNumSheets() | スプレッドシート内のシート数を取得します |
getRangeByName(範囲名) | 名前付き範囲を取得します |
getSheets() | スプレッドシート内の全てのシートを取得します |
rename(新しい名前) | スプレッドシートの名前を変更します |
setActiveSheet(シート, インデックス) | 指定したシートをアクティブにします |
show(シート) | 指定したシートを表示します |
toast(メッセージ, タイトル, タイプ) | スプレッドシートのUIにメッセージを表示します |
deleteSheet(シート) | 指定したシートを削除します |
getRange(開始行, 開始列, 行数, 列数) | 指定した範囲を取得します |
moveActiveSheet(インデックス) | アクティブなシートを指定した位置に移動します |
プログラミング例
具体的なプログラミング例を紹介します。
addDeveloperMetadata(メタデータ)
function メタデータを追加() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.addDeveloperMetadata('プロジェクト', '学習シート');
Logger.log('メタデータを追加しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.addDeveloperMetadata('プロジェクト', '学習シート');
Logger.log('メタデータを追加しました');
}
addMenu(メニュー名, メニュー項目)
function メニューを追加() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.addMenu('カスタムメニュー', [{name: '項目1', functionName: '項目1処理'}]);
Logger.log('メニューを追加しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.addMenu('カスタムメニュー', [{name: '項目1', functionName: '項目1処理'}]);
Logger.log('メニューを追加しました');
}
copy(コピー先名)
function シートをコピー() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.copy('新しいシート');
Logger.log('シートをコピーしました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.copy('新しいシート');
Logger.log('シートをコピーしました');
}
deleteActiveSheet()
function アクティブシートを削除() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getActiveSheet();
スプレッドシート.deleteActiveSheet();
Logger.log('アクティブシートを削除しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getActiveSheet();
スプレッドシート.deleteActiveSheet();
Logger.log('アクティブシートを削除しました');
}
duplicateActiveSheet()
function アクティブシートを複製() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let 複製 = スプレッドシート.duplicateActiveSheet();
Logger.log('アクティブシートを複製しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let 複製 = スプレッドシート.duplicateActiveSheet();
Logger.log('アクティブシートを複製しました');
}
getActiveCell()
function アクティブセルを取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let アクティブセル = スプレッドシート.getActiveCell();
Logger.log('アクティブセル: ' + アクティブセル.getA1Notation());
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let アクティブセル = スプレッドシート.getActiveCell();
Logger.log('アクティブセル: ' + アクティブセル.getA1Notation());
}
getActiveRange()
function アクティブ範囲を取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let アクティブ範囲 = スプレッドシート.getActiveRange();
Logger.log('アクティブ範囲: ' + アクティブ範囲.getA1Notation());
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let アクティブ範囲 = スプレッドシート.getActiveRange();
Logger.log('アクティブ範囲: ' + アクティブ範囲.getA1Notation());
}
getActiveSheet()
function アクティブシートを取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let アクティブシート = スプレッドシート.getActiveSheet();
Logger.log('アクティブシート名: ' + アクティブシート.getName());
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let アクティブシート = スプレッドシート.getActiveSheet();
Logger.log('アクティブシート名: ' + アクティブシート.getName());
}
getId()
function スプレッドシートIDを取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let ID = スプレッドシート.getId();
Logger.log('スプレッドシートID: ' + ID);
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let ID = スプレッドシート.getId();
Logger.log('スプレッドシートID: ' + ID);
}
getName()
function スプレッドシート名を取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let 名前 = スプレッドシート.getName();
Logger.log('スプレッドシート名: ' + 名前);
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let 名前 = スプレッドシート.getName();
Logger.log('スプレッドシート名: ' + 名前);
}
getNumSheets()
function シート数を取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート数 = スプレッドシート.getNumSheets();
Logger.log('シート数: ' + シート数);
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート数 = スプレッドシート.getNumSheets();
Logger.log('シート数: ' + シート数);
}
getRangeByName(範囲名)
function 名前で範囲を取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let 範囲 = スプレッドシート.getRangeByName('データ範囲');
Logger.log('範囲: ' + 範囲.getA1Notation());
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let 範囲 = スプレッドシート.getRangeByName('データ範囲');
Logger.log('範囲: ' + 範囲.getA1Notation());
}
getSheets()
function シート一覧を取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート一覧 = スプレッドシート.getSheets();
for (let シート of シート一覧) {
Logger.log('シート名: ' + シート.getName());
}
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート一覧 = スプレッドシート.getSheets();
for (let シート of シート一覧) {
Logger.log('シート名: ' + シート.getName());
}
}
rename(新しい名前)
function スプレッドシートをリネーム() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.rename('新しいシート名');
Logger.log('スプレッドシート名をリネームしました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.rename('新しいシート名');
Logger.log('スプレッドシート名をリネームしました');
}
setActiveSheet(シート, インデックス)
function アクティブシートを設定() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getSheets()[0];
スプレッドシート.setActiveSheet(シート, true);
Logger.log('アクティブシートを設定しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getSheets()[0];
スプレッドシート.setActiveSheet(シート, true);
Logger.log('アクティブシートを設定しました');
}
show(シート)
function シートを表示() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getSheets()[0];
シート.show();
Logger.log('シートを表示しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getSheets()[0];
シート.show();
Logger.log('シートを表示しました');
}
toast(メッセージ, タイトル, タイプ)
function トースト通知を表示() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.toast('処理が完了しました', '完了通知', 5);
Logger.log('トースト通知を表示しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.toast('処理が完了しました', '完了通知', 5);
Logger.log('トースト通知を表示しました');
}
deleteSheet(シート)
function シートを削除() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getSheets()[0];
スプレッドシート.deleteSheet(シート);
Logger.log('シートを削除しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
let シート = スプレッドシート.getSheets()[0];
スプレッドシート.deleteSheet(シート);
Logger.log('シートを削除しました');
}
getRange(開始行, 開始列, 行数, 列数)
function 範囲を取得() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
let 範囲 = スプレッドシート.getRange(1, 1, 3, 3);
Logger.log('取得した範囲: ' + 範囲.getA1Notation());
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
let 範囲 = スプレッドシート.getRange(1, 1, 3, 3);
Logger.log('取得した範囲: ' + 範囲.getA1Notation());
}
moveActiveSheet(インデックス)
function アクティブシートを移動() {
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.moveActiveSheet(2);
Logger.log('アクティブシートを移動しました');
}
let スプレッドシート = SpreadsheetApp.getActiveSpreadsheet();
スプレッドシート.moveActiveSheet(2);
Logger.log('アクティブシートを移動しました');
}
まとめ
Spreadsheetクラスは、Googleスプレッドシートを操作するための基本的なクラスです。これを使うことで、スプレッドシートのデータを読み取ったり、編集したり、シートそのものを管理することができます。各メンバーの役割と使用例を理解することで、効率的なスプレッドシート管理が可能になります。