共有している商品管理表の各商品が、現在どの状態にあるかを自動で色付けして確認できるようにする。
・メニューバーに「ツール」を追加。その中にある「色付け」を押す。
・以下コード
コード.gs
var validColNum = 5;
var checkPaymentCol = 3;
var soldDateCol = 4;
var checkSoldCol = 5;
var lightPink = "#FFB6C1";
var lightYellow = "#FAFAD2";
var lightBlue = "#87CEFA";
var grey = "#797979";
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
//メニューバーに追加
function onOpen() {
var menus = [
{name: "色付け", functionName: "putColor"},
];
ss.addMenu("ツール", menus);
}
//色付け
function putColor(){
for(var i = 2; i <= sheet.getLastRow(); i++) {
if(!sheet.getRange(i, 1).isBlank()) { //商品入力あり
if(sheet.getRange(i, checkPaymentCol).isBlank()) { //支払まだ:ピンク
for(var x = 1; x <= validColNum; x++) {
sheet.getRange(i, x).setBackground(lightPink);
}
}
if(!sheet.getRange(i, checkPaymentCol).isBlank()) { //支払済:ブルー
for(var x = 1; x <= validColNum; x++) {
sheet.getRange(i, x).setBackground(lightBlue);
}
}
if(!sheet.getRange(i, soldDateCol).isBlank()) { //売上あり:イエロー
for(var x = 1; x <= validColNum; x++) {
sheet.getRange(i, x).setBackground(lightYellow);
}
}
if(!sheet.getRange(i, checkSoldCol).isBlank()){ //入金あり:グレー
for(var x = 1; x <= validColNum; x++) {
sheet.getRange(i, x).setBackground(grey);
}
}
}
}
}