在尝试根据特定单元格中的值隐藏/取消隐藏行的 google 表格上,并尝试在 AppsScript 中为此编写脚本。发现一个独立工作的(如果 B55=NO 它隐藏了下一行 64):
function onEdit(e) {
var activeSheet = e.source.getActiveSheet();
var range = e.range;
if (activeSheet.getName() !== 'Inputs' || range.getA1Notation() !== 'B55') return;
if (e.value === 'No') {
activeSheet.hideRows(56, 64);
} else if (e.value === 'Yes') {
activeSheet.showRows(56, 64);
}
}
但是对于多个单元格和多行,我需要相同的内容,一旦我展开它,只有代码的最后一部分有效,而不是第一部分:
function onEdit(e) {
var activeSheet = e.source.getActiveSheet();
var range = e.range;
if (activeSheet.getName() !== 'Inputs' || range.getA1Notation() !== 'B55') return;
if (e.value === 'No') {
activeSheet.hideRows(56, 64);
} else if (e.value === 'Yes') {
activeSheet.showRows(56, 64);
}
}
function onEdit(e) {
var activeSheet = e.source.getActiveSheet();
var range = e.range;
if (activeSheet.getName() !== 'Inputs' || range.getA1Notation() !== 'B121') return;
if (e.value === 'No') {
activeSheet.hideRows(122, 67);
} else if (e.value === 'Yes') {
activeSheet.showRows(122, 67);
}
}
从这里 Cell B121 正在工作,但我的 B55 停止工作。有小费吗?谢谢!
你需要在onEdit上合并2个函数,试试
function onEdit(e) {
var activeSheet = e.source.getActiveSheet();
var range = e.range;
if (activeSheet.getName() !== 'Inputs') return;
if (range.getA1Notation() == 'B55'){
if (e.value === 'No') {
activeSheet.hideRows(56, 64);
} else if (e.value === 'Yes') {
activeSheet.showRows(56, 64);
}
}
if (range.getA1Notation() == 'B121') {
if (e.value === 'No') {
activeSheet.hideRows(122, 67);
} else if (e.value === 'Yes') {
activeSheet.showRows(122, 67);
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句