Created
January 28, 2015 04:42
-
-
Save zaki-yama/eca95458364230d6850b to your computer and use it in GitHub Desktop.
セル編集時に行の色を変更するApps Script
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Enum | |
var Status = { | |
FINISHED: '完了', | |
PROCESSING: '対応中', | |
PENDING: '保留', | |
CANCELED: '対応しない' | |
}; | |
var Color = { | |
FINISHED: '#ead1dc', | |
PROCESSING: '#E8FFBD', | |
PENDING: '#dddddd', | |
CANCELED: '#999999' | |
}; | |
var STATUS_COL = 10; | |
/** | |
* ステータスが編集された時に背景色を変更する | |
* @param e events {@see https://developers.google.com/apps-script/understanding_events?hl=ja} | |
*/ | |
function onEdit(e) { | |
var sheet = e.source.getActiveSheet(), | |
range = sheet.getDataRange(), | |
dataLength = range.getValues()[0].length, | |
row = e.range.getRow(), | |
col = e.range.getColumn(); | |
// var sheet = SpreadsheetApp.getActiveSheet(); | |
Logger.log('Edited at (' + row + ',' + col + ')'); | |
if (col !== STATUS_COL) { | |
return; | |
} | |
Logger.log(row); | |
switch (e.value) { | |
case Status.FINISHED: | |
sheet.getRange(row, 1, 1, dataLength).setBackground(Color.FINISHED); | |
break; | |
case Status.PROCESSING: | |
sheet.getRange(row, 1, 1, dataLength).setBackground(Color.PROCESSING); | |
break; | |
case Status.PENDING: | |
sheet.getRange(row, 1, 1, dataLength).setBackground(Color.PENDING); | |
break; | |
case Status.CANCELED: | |
sheet.getRange(row, 1, 1, dataLength).setBackground(Color.CANCELED); | |
break; | |
default: | |
sheet.getRange(row, 1, 1, dataLength).setBackground('white'); | |
break; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment