GASを触っていたのでメモ
GoogleスプレッドシートのIDとGID
- スプレッドシート: Googleドライブ的に見たときの一つのファイル
- シート: スプレッドシート内のシートタブ
って感じになります。
スプレッドシートのURLはこんな感じです。
https://docs.google.com/spreadsheets/d/XXXXXXXXXXXX/edit#gid=YYYYYYYY
XXXXXXXXXXXX
の部分がスプレッドシートのID、YYYYYYYY
の部分がシートのID(GID)になります。
GASでアクティブなシートのIDを取得
getActiveSpreadsheet()
> getActiveSheet()
> getSheetId()
という感じで階層を掘って取得します。
getGid.gs
function pingTest() {
const ss = SpreadsheetApp.getActiveSpreadsheet(); //スプレッドシート
const activeSheet = ss.getActiveSheet(); //スプレッドシート内のアクティブなシート
const gid = activeSheet.getSheetId(); //アクティブなシートのID
}
GIDを取得して他のサーバーに送る
https://hogehoge.hugahuga.com/?gid=YYYYYYYY
という感じでURLのクエリに詰めて飛ばします。 (POSTじゃなくてGETリクエストだけど)
post.gs
function pingTest() {
//GID取得
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getActiveSheet();
const gid = sheet.getSheetId();
//GETリクエストで送る
const APPURL = 'https://hogehoge.hugahuga.com/';
const url = APPURL + '?gid=' + gid; // 監視対象URL
UrlFetchApp.fetch(url, { muteHttpExceptions:true });
}