首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数据验证选择修改条件格式,同时保留函数。

数据验证选择修改条件格式,同时保留函数。
EN

Web Applications用户
提问于 2018-03-08 22:08:40
回答 1查看 278关注 0票数 0

下面是我正在处理的文档的副本:https://docs.google.com/spreadsheets/d/1amIjjQsA8sNKf7mZvE1GjsF-377YOWxVIRk6HRgQjfA/edit?usp=sharing

我希望下拉菜单(紫色-D3-L3)可以根据所选内容修改一个单元格的范围。下面是我理想结果的图表(数据验证选择是粗体,后面是预期的结果):

2小时延迟清晰的细胞值和灰色-行4-18-没有收集数据。

没有明确的单元格值和灰色行4-18-没有收集数据。

活动自动填充绿色细胞(第4-8行)与2保持“和”函数。

指定明确的单元格值和灰色的第4-18行--没有收集数据,咨询室自动调节绿色细胞(第4-8行),0保留"sum“函数。

早期解雇,明确的单元格值和灰色-行4-18-没有收集的数据。

外地旅行自动填充绿色细胞(第4-8行)与2保持“和”函数。

学习自动填充绿色细胞(第4-8行)与2保持“和”功能。

在类中,自动填充绿色单元格(第4-8行)为空白,保留"sum“函数。

学校干预自动调节绿色细胞(第4-8行),并保留“和”功能。

会议自动填充绿色细胞(第4-8行)与2保持“和”函数。

治疗自动填充绿色细胞(第4-8行)与2保持“和”功能。

我一个人走了这么远。充其量,我可以让它对单元格进行灰色化,但它也会清除格式。如果下拉选择被还原回另一个选择,则格式不会返回。

代码语言:javascript
运行
复制
function onEdit(e) {
  var ss = SpreadsheetApp.getActiveSpreadsheet()
  var s=ss.getActiveSheet()
  var nota=e.range.getA1Notation()
  if(nota=="D3"){
  var stat=e.range.getValue()
    if(stat=="2hr Delay", 'Absent', 'Appointment', 'Early Dismissal'){
      s.getRange("D4:D18").clearContent(null)
      s.getRange("D4:D18").clearContent("D4:D18");
  }
      else{
        s.getRange("D4:D18").clearContent("D4:D18");      
        var cell = s.getRange("D4:D18");
   }}}
EN

回答 1

Web Applications用户

发布于 2018-03-09 03:30:30

有界脚本包含两个onEdit函数--这不是一个很好的实践,因为这可能导致混淆,而另一个脚本通常只执行一个,通常是在最后一个gs文件上执行。

另一个观察,在这个例子中,关于问题中的代码,clearContent语法不包括参数。换句话说,而不是

代码语言:javascript
运行
复制
s.getRange("D4:D18").clearContent(null)

正确的语法是

代码语言:javascript
运行
复制
s.getRange("D4:D18").clearContent();

而不是

代码语言:javascript
运行
复制
s.getRange("D4:D18").clearContent("D4:D18");

正确的语法是

代码语言:javascript
运行
复制
s.getRange("D4:D18").clearContent();

注意:当将模板!D3更改为2hr Delay时,执行记录显示以下错误

执行失败:无法找到方法clearContent(null)。(第8行,文件"WIP")

票数 1
EN
页面原文内容由Web Applications提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://webapps.stackexchange.com/questions/115248

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档