我正在嘗試以粗體更改某些范圍的字體
為了獲得時間,我想使用函式 getRangeList 來同時修改所有范圍
我用回圈檢測要修改的范圍串列,并將它們連接到一個變數中,如下所示:
for(i = 0; i <= mytab.length -1; i ){
if(condition){
if(coord == ''){
coord = coord '\'A' i '\'' ', \'F' i '\'';
}
else{
coord = coord ', \'A' i '\'' ', \'F' i '\'';
}
}
}
Logger.log(coord)外觀如下:
10:56:48 AM Notice Execution started
10:56:58 AM Info 'A3', 'F3', 'A6', 'F6', 'A8', 'F8', 'A12', 'F12', 'A18', 'F18'
當我嘗試將我的坐標變數與 getRangeList 一起使用時出現問題
sheet.getRangeList([coord]).setFontWeight('bold');
回傳“例外:未找到范圍”
但是當我在函式中手動寫入所有值時,它就可以作業了。
sheet.getRangeList(['A3', 'F3', 'A6', 'F6', 'A8', 'F8', 'A12', 'F12', 'A18', 'F18']).setFontWeight('bold');
我認為問題可能來自逗號在字串變數和函式本身中的處理方式不同,但我無法解決問題
uj5u.com熱心網友回復:
使用陣列而push不是字串并附加范圍。看起來像陣列的字串仍然是一個字串,并且不會僅僅因為您能夠將它放在括號內而使其成為陣列。
coord = [];
for(i = 0; i <= mytab.length -1; i ){
if(condition){
coord.push(`A${i}`)
coord.push(`F${i}`)
}
}
// use coord directly as it is an array now
sheet.getRangeList(coord).setFontWeight('bold');
在您的代碼中,找不到 Range,因為它無效。
'A3', 'F3', 'A6', 'F6', 'A8', 'F8', 'A12', 'F12', 'A18', 'F18'被計為一個元素并且不是有效范圍。
筆記:
- 無需使用
elsecoord 是否有內容。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/442360.html
