我昨天開始使用 Google Apps 腳本,當我嘗試獲取一系列單元格而不是一個單元格時,我正在努力成功運行代碼。
這是完整的代碼,如果條件為真,它將顯示一個彈出訊息:
function CheckPlanNumber() {
// Fetch the monthly sales
var planNumbersRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Plan Numbers").getRange("B2");
var planNumbers = planNumbersRange.getValues();
var ui = SpreadsheetApp.getUi();
// Check totals sales
if (planNumbers == "XXXX") {
ui.alert('Contact - Plan Number missing!');
}
}
但是,當我嘗試將范圍擴展到更多單元格以通過至少 10 個單元格并驗證它們時,它不會顯示彈出訊息。
function CheckPlanNumber() {
// Fetch the monthly sales
var planNumbersRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Plan Numbers").getRange("B2:B10");
var planNumbers = planNumbersRange.getValues();
var ui = SpreadsheetApp.getUi();
// Check totals sales
if (planNumbers == "XXXX") {
ui.alert('Contact - Plan Number missing!');
}
}
uj5u.com熱心網友回復:
Range.getValues 回傳二維陣列中的值,所以如果你有這樣的表
| | A | B |
| --- | --- | ------------ |
| 1 | | Plan numbers |
| 2 | | 123 |
| 3 | | XXX |
| 4 | | 456 |
Range.getValues( 'B2:B4' ) 將回傳
[
[ "123" ]
, [ "XXX" ]
, [ "456" ]
]
您將不得不遍歷每個值并比較它們。
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Plan Numbers");
var planNumbersRange = sheet.getRange("B2:B10");
var planNumbers = planNumbersRange.getValues();
var ui = SpreadsheetApp.getUi();
for ( var row = 0; row < planNumbers.length; row ) {
if ( planNumbers[ row ][ 0 ] == "XXXX" ) {
ui.alert( 'Contact - Plan Number missing at row ' ( row 2 ) );
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/412582.html
標籤:
上一篇:使用Google表格中的陣列以html格式創建資料串列,該串列可提供給GoogleApps腳本以自動完成文本輸入
