【问题标题】:FILTER() problems with integrity with other columns in Google SheetsFILTER() 与 Google 表格中其他列的完整性问题
【发布时间】:2020-03-17 09:04:54
【问题描述】:

这是我在这里的第一篇文章,我需要一些关于 Google 表格的帮助。我正在尝试动态过滤()数据,然后对它们进行排序,但这就是问题所在。我得到带有 filter() 函数的第一列 (D),其余的直接输出到列 E 和 F。

=FILTER('TEST'!A:A;'TEST'!J:J="I")

但我需要稍后对它们进行排序,并使行与其他 TRUE 和 FALSE 数据保持一致。 问题是当有人在过滤数据的中心添加一个值时,TRUE 和 FALSE 值不会与其“父级”一起“下拉”。

之前的数据:

之后的数据:

我需要的数据:

【问题讨论】:

  • 您好@RafałMeler,所以您正在尝试根据它们的TRUE 或FALSE 值对过滤器函数的结果 进行排序?干杯!
  • 这是棘手的部分。我想对 FILTER() 函数的结果进行排序,但如果 D 列中出现新值,我还想保持列之间的行中的“关系”。我很难描述它。 D 列完全由 filter() 函数制作,但可见的 TRUE 和 FALSE 值是用户手动放置的,需要在排序时自动与 D 列索引一起移动。
  • 为什么 我需要的数据中的 E9:F9 为空?
  • 回滚是因为不清楚这三个屏幕截图各自的含义。
  • 退后一步,重新处理导致此解决方案的原始问题(例如,将复选框放在源表 TEST 中)。实际上,您需要一个复杂的脚本来实现您想要实现的目标(如果您想这样做,您至少必须了解基本脚本)。

标签: google-sheets


【解决方案1】:

您可以使用脚本来扩展范围:

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");                   // SHEET NAME HERE
var range = sheet.getRange("D7:F");                        // RANGE TO BE SORTED

function onEdit(e)  {                                      // COLUMN NUMBER AND SORTING
range.sort([{column: 1, ascending: true}, 
            {column: 2, ascending: false}]);
}

【讨论】:

  • 对我不起作用,我需要以某种方式将这些真假值链接到过滤索引。
  • FILTER1, FILTER2, FILTER 3, FILTER4是FILTER()函数返回的值
  • 你能分享一份你的工作表吗?
  • 当然link
  • JavaScript 布尔类型为 true 和 false。没有TRUE和FALSE(注意大小写)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-01
  • 2021-11-16
  • 2021-10-05
  • 2017-03-28
相关资源
最近更新 更多