根据单元格内容隐藏/取消隐藏行
Hide/unhide Rows Based on Content of a Cell
我想要我的当前脚本,它为我提供了一个自定义菜单、侧边栏和基于值隐藏单元格,如果单元格从值更改为取消隐藏。
例如
function onOpen() {
SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
.createMenu('x Tools')
.addItem('Instructions', 'showSidebar')
.addItem('Change y Form', 'openform')
.addToUi();
}
function showSidebar() {
var html = HtmlService.createHtmlOutputFromFile('Page')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.setTitle('Instructions')
.setWidth(300);
SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
.showSidebar(html);
}
function openform() {
showURL("https://docs.google.com/a/xxx/viewform")
}
function showURL(href) {
var app = UiApp.createApplication().setHeight(50).setWidth(200);
app.setTitle("Add Project to x");
var link = app.createAnchor('Open x Form ', href).setId("link");
app.add(link);
var doc = SpreadsheetApp.getActive();
doc.show(app);
}
function onEdit(e) {
Logger.log('e.value: ' + e.value);
var cellEdited = e.range.getA1Notation();
Logger.log('cellEdited: ' + cellEdited);
if (cellEdited === "C12" && e.value === "X") {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var theSheet = ss.getActiveSheet();
theSheet.hideRows(13, 4);
};
}
我的问题是,我试着添加了第二个if语句——没有得到错误,只是没有取消隐藏。尝试使用else,但出现错误。基本思想是,如果单元格c12是X,那么行13、14、15、16应该被隐藏,如果是其他内容,则单元格应该是可见的。我现在所做的是隐藏,但如果你把X改成其他的,它不会取消隐藏单元格。
您只需要以相同的方式取消隐藏,只需将表达式更改为!=="X",并使用.showRows方法。
if (cellEdited === "C12" && e.value !== "X") {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var theSheet = ss.getActiveSheet();
theSheet.showRows(13, 4);
}
为此,您只需要编写代码来取消隐藏行。
以这种方式在其他块中尝试:
else if (cellEdited === "C12" && e.value !== "X") {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var theSheet = ss.getActiveSheet();
theSheet.showRows(13, 4);
}
希望能有所帮助!
相关文章:
- 根据单元格内容隐藏/取消隐藏行
- 我如何才能获得隐藏/取消隐藏按钮来同时发送帖子请求
- 在其他元素的基础上隐藏/取消隐藏jsp元素
- 如何隐藏/取消隐藏窗体
- 聚合物 IronRessizeableBehavior 当“可调整大小”元素被隐藏/取消隐藏时,不会触发 Iron 调整
- 使用挖空.js隐藏/取消隐藏时不应用 jquery UI 主题
- 无法隐藏/取消隐藏表单内的按钮
- 在给定行索引和表 ID 的情况下隐藏/取消隐藏表行
- 使用 jQuery 隐藏取消隐藏列
- JS使用CSS格式隐藏/取消隐藏
- 关于django模板中表单字段值的动态隐藏/取消隐藏选项卡
- 如何隐藏/取消隐藏代码镜像
- 带有隐藏/取消隐藏选项的Javascript图像滑块
- 使用Javascript隐藏/取消隐藏带有文本输入的表行,具体取决于所选的下拉选项
- 隐藏/取消隐藏带有密码的菜单链接
- 通过悬停来隐藏/取消隐藏HTML部分
- 隐藏/取消隐藏面板的JavaScript函数
- 移动(不是滚动)锚点使用javascript,在函数中的元素被隐藏/取消隐藏
- 如果单击按钮,则使用Jquery隐藏/取消隐藏文本框
- 使用 Jquery 或 Javascript 隐藏/取消隐藏 html 元素