亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

根據復選框顯示和隱藏行

根據復選框顯示和隱藏行

陪伴而非守候 2021-09-17 13:41:40
我首先要說的是,我對編碼非常缺乏經驗,因此將不勝感激任何幫助!我試圖根據是否勾選復選框來顯示/隱藏行。例如,我在 A5 中有一個復選框 - 如果未選中,我希望它隱藏 6:18 行,如果選中,我希望它顯示 6:18 行。A19 中的復選框也是如此,分別隱藏/顯示 20:26 行。A27 用于行 28:37 等。我找到了以前的論壇帖子,其中我將鏈接下面的代碼,但是第一個復選框隱藏所有行(例如,如果未選中 A5,則隱藏行 6:18、20:26 和 28:37。當然后檢查它,它只顯示 6:18 行。function onEdit(e) {  var cfg = { // Please set this object.    A5: {startRow: 6, endRow: 18},    A19: {startRow: 20, endRow: 26},    A27: {startRow: 28, endRow: 37},  };  var activeRange = e.range.getA1Notation();  var ranges = Object.keys(cfg);  if (cfg[activeRange]) {    var sheet = e.source.getActiveSheet();    var values = sheet.getRange(ranges[0] + ":" + ranges[ranges.length - 1]).getValues();    values.forEach(function(e, i) {      if (e[0]) {        sheet.showRows(cfg[ranges[i]].startRow, cfg[ranges[i]].endRow - cfg[ranges[i]].startRow);      } else {        sheet.hideRows(cfg[ranges[i]].startRow, cfg[ranges[i]].endRow - cfg[ranges[i]].startRow);      }    });  }}如前所述,第一個復選框隱藏所有行(例如,如果未選中 A5,則隱藏行 6:18、20:26 和 28:37。然后選中時,它僅顯示行 6:18。
查看完整描述

1 回答

?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

  • 當未選中“A5”復選框時,您想隱藏從 6 到 18 的行。

  • 當未選中“A19”復選框時,您想隱藏 20 到 26 行。

  • 當未選中“A27”復選框時,您想隱藏 28 到 37 行。

  • 當復選框被選中時,您想要顯示行。

  • 您想通過 Google Apps 腳本使用 OnEdit 事件觸發器實現上述目標。

如果我的理解是正確的,這個修改怎么樣?請將此視為幾個答案之一。

從:

var values = sheet.getRange(ranges[0] + ":" + ranges[ranges.length - 1]).getValues();

values.forEach(function(e, i) {

  if (e[0]) {

到:

var values = sheet.getRange(ranges[0] + ":" + ranges[ranges.length - 1]).getValues().filter(String); // Modified

values.forEach(function(e, i) {

  if (e[0] === true) { // Modified

如果我誤解了您的問題并且這不是您想要的結果,我深表歉意。


查看完整回答
反對 回復 2021-09-17
  • 1 回答
  • 0 關注
  • 283 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號