2014-10-09 80 views
0

当单元格的内容从“否”更改为“是”时,我有一个非常简单的功能,需要显示消息。我写的代码运行良好,只是无论输入什么数据都显示消息。该消息应该显示仅当单元格的内容为“是”Google表格:当单元格内容更改为“是”时显示浏览器msgBox

这里是我的代码:

function onEdit(e){ 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var mftCell = sheet.getRange("E25:E26"); 
    if (mftCell="Yes"); 
    Browser.msgBox('Enter the % in the next cell!'); 
} 

感谢

回答

0

这里有几个问题。

  1. 您的代码写入的方式现在,Browser.msgBox调用不依赖于if语句。换句话说,你的代码检查这个值是否等于yes,然后不管下一行。您应该尝试if (mftCell == "Yes") { Browser.msgBox(whatever); }

  2. getRange()方法返回范围,而不是范围中的值。您应该在呼叫后添加对.getValues()的呼叫以获取范围。看到这一点:https://developers.google.com/apps-script/reference/spreadsheet/range#getValues()

  3. 记住的GetValues返回一个二维数组中,即使只有一个细胞,所以你需要的东西来访问值一样myValues[0][0]以查看特定单元格的值。

  4. 想要在用户在字段中输入文本的比较中调用.toLowerCase()。 “是”==“是”评估为false,因此您应该有类似if (values[0][0].toLowerCase(== "yes"或输入“YE”或“是”或不会触发您的消息的用户。

另外,在if语句中需要'=='不是'='。

+0

谢谢。运作良好。 – 2014-10-11 09:06:09

相关问题