私は Google スクリプトを初めて使用するので、この質問が既に回答されている場合は申し訳ありません。
複数のワークシートを含むスプレッドシートがあり、そのうちのいくつかにはステータス列がどこかにあります。
既に見つけたコードを使用すると、ステータス列のセルの値に応じて行全体の色を設定できます。
私が抱えている問題は、コードを単一のシートでしか機能させられないことです。
次のコード (ScampMichael による) は、Status 列の値に基づいて行全体を更新したいのとまったく同じように機能しますが、同じワークブック内の複数のシート (異なる名前) で機能させることはできません。
それぞれが個々のシートを参照するように、編集されたシート名と列番号を持つ個別のスクリプトとしてコードを試しましたが、それでも 1 つのシートのみが更新されます。
このコードを編集する方法、または複数のシートで機能するように複製する方法を教えてください。
function onEdit(e) {
var statusCol = 2; // replace with the column index of Status column A=1,B=2,etc
var sheetName = "Services"; // replace with actual name of sheet containing Status
var cell = e.source.getActiveCell();
var sheet = cell.getSheet();
if(cell.getColumnIndex() != statusCol || sheet.getName() != sheetName) return;
var row = cell.getRowIndex();
var status = cell.getValue();
// change colors to meet your needs
var color;
switch(status ) {
case "Down":
color = "red";
break;
case "":
color = "White";
break;
case "Up":
color = "green";
break;
}
sheet.getRange(row + ":" + row ).setBackgroundColor(color);
}
ありがとうございました。