我正在嘗試通過應用程式腳本有條件地將邊框應用于單元格,但我的代碼沒有注冊這兩個(顯然滿足)條件。尋找邏輯和語法檢查 <3
作業表: stackoverflow noobs 無法附加影像,所以這里有一個鏈接
代碼:
function doBorders() {
let ss = SpreadsheetApp.getActiveSpreadsheet();
let sss = ss.getActiveSheet();
let doBorder = sss.getRange("A5");
let checkBox = sss.getRange("B5");
let checkState = checkBox.isChecked();
let bRow1 = sss.getRange("A1:B1");
let bRow2 = sss.getRange("A2:B2");
let bRow3 = sss.getRange("A3:B3");
if (doBorder == "Do Borders:" && checkState == true) {
bRow1.setBorder(false, false, true, false, false, false,'Black', SpreadsheetApp.BorderStyle.SOLID);
bRow2.setBorder(false, false, true, false, false, false,'Black', SpreadsheetApp.BorderStyle.SOLID);
bRow3.setBorder(false, false, true, false, false, false,'Red', SpreadsheetApp.BorderStyle.SOLID);
Logger.log('Conditions met. Borders added.');
} else
bRow1.setBorder(false, false, false, false, false, false);
bRow2.setBorder(false, false, false, false, false, false);
bRow3.setBorder(false, false, false, false, false, false);
Logger.log('Conditions not met. No borders.');
}
我已經嘗試過 checkBox == true 和 checkState == true。結果相同。
執行日志: “條件不滿足。沒有邊界。”
uj5u.com熱心網友回復:
let checkBox = sss.getRange("B5")獲取一個 Range 物件,該物件與該單元格中的值不同。要測驗該值,請使用Range.getValue(),如下所示:
const checkBox = sss.getRange('B5');
const checkBoxValue = checkBox.getValue();
if (checkBoxValue === true) {
// do sfuff...
} else {
// do other stuff...
}
還要觀察.之后的{花括號。}else
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/493942.html
