私はGoogleシートで単語を強調表示するために構築したこの小さなコードに問題があります。
このコードは、スクリプトコントロールウィンドウから起動すると完全に機能しますが、シート内のセルからスクリプトをトリガしようとすると機能しません。
私はこのGoogleスプレッドシートの所有者です。ここ は、コードは次のとおりです。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") ;
}
}
}
}
私はM1
を強調するために名前が含まれているセルである=SURLIGNER(M1)
のシートからスクリプトをトリガします。
メッセージエラーは、次のとおりです。
あなたがsetBorder(9行目)