【发布时间】:2016-04-06 07:41:23
【问题描述】:
我为突出显示 Google 表格中的单词而构建的这段小代码存在问题。
当我从脚本控制窗口启动此代码时,它运行良好,但当我尝试从工作表中的单元格触发脚本时,它不起作用。
我是这个谷歌电子表格的所有者。
这是代码:
function Surligner(nom) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet() ;
var mois = sheet.getRange("A4").getValue().getMonth() ;
var listeNbrJours = new Array(31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31) ;
// nom = sheet.getRange("M1").getValue() ;
sheet.getRange(4, 5, listeNbrJours[mois],9).setBorder(true, true, true, true, true, true, "black", null ) ;
sheet.getRange(4, 5, listeNbrJours[mois],9).setFontColor("black") ;
for (var i=4 ; i<listeNbrJours[mois]+3 ; i++)
{
for (var j=5 ; j<14 ; j++)
{
if (sheet.getRange(i,j).getValue().match(nom) )
{
sheet.getRange(i,j).setBorder(true, true, true, true, true, true, "red", null ) ;
sheet.getRange(i,j).setFontColor("red") ;
}
}
}
}
我从带有=SURLIGNER(M1) 的工作表中触发脚本,其中M1 是包含要突出显示的名称的单元格。
消息错误是:
你不能调用 setBorder(第 9 行)
【问题讨论】: