Skip to content

Instantly share code, notes, and snippets.

@sam-ple

sam-ple/code.gs Secret

Last active March 6, 2019 09:04
Show Gist options
  • Save sam-ple/0be8118c6080fc82e2bad0524e08eaa7 to your computer and use it in GitHub Desktop.
Save sam-ple/0be8118c6080fc82e2bad0524e08eaa7 to your computer and use it in GitHub Desktop.
アクセスログ&変更履歴
//// アクセスログ
function accessLog(e) {
var now = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'yyyy-MM-dd HH:mm:ss');
var email = Session.getActiveUser().getEmail();
if ( email == "xxx@sam-ple.net" ) { return; }
var sheet = SpreadsheetApp.getActive().getSheetByName('アクセスログ');
// sheet.appendRow([now, email]);
sheet.insertRowBefore(1);
sheet.getRange(1,1).setValue(now);
sheet.getRange(1,2).setValue(email);
}
//// 変更履歴
function editHistory(e) {
var now = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'yyyy-MM-dd HH:mm:ss');
var email = Session.getActiveUser().getEmail();
if ( email == "xxx@sam-ple.net" ) { return; }
var logSheetName = '変更履歴';
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ssName = ss.getName();
var sheet = ss.getActiveSheet();
var sheetName = sheet.getName();
if( sheetName == logSheetName ){ return; } // Logシートなら何もしない
var range = sheet.getActiveRange(); // 選択セル範囲
var rowIndex = range.getRowIndex(); // セル範囲の行番号
var colIndex = range.getColumnIndex(); // セル範囲の列番号
var v = sheet.getRange(rowIndex, colIndex, 1, 1).getValue(); // getRange(始点行, 始点列, 取得する行数, 取得する列数)
if (v == '') { v = '削除'; } //内容が空の場合
//Logシートに書き込み
var logSheet = ss.getSheetByName(logSheetName);
// logSheet.appendRow([now, email, sheetName, rowIndex, colIndex, v]);
logSheet.insertRowBefore(1);
logSheet.getRange(1,1).setValue(now);
logSheet.getRange(1,2).setValue(email);
logSheet.getRange(1,3).setValue(sheetName);
logSheet.getRange(1,4).setValue(rowIndex);
logSheet.getRange(1,5).setValue(colIndex);
logSheet.getRange(1,6).setValue(v);
}
//// アラートメッセージ
function alert(msg) {
var ui = SpreadsheetApp.getUi();
ui.alert('一言', msg, ui.ButtonSet.OK);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment