如何将数据验证传播到其他行?

NPS*_*NPS 5 validation autofill google-sheets

Ranges:

在此输入图像描述

Work:

在此输入图像描述

在表Ranges单元格A1:A5,我有一些价值观,让我们说:One,Two,Three,Four,Five.在单元格中,B1我有以下公式:根据表格中的单元格是否为空,用上述值=ARRAYFORMULA(transpose(if(Work!$A1<>"";$A$1:$A$5;"")))填充单元B1:F1格.A1Work

接下来,我选择了单元格B1:F1,然后使用填充手柄将选择拖动到覆盖范围B1:F10.这复制了上述范围,但每行现在取决于工作表中的相应行Work.

基本上,我创建了一个数据范围列表,只有在另一个工作表中的某些单元格非空时才会填充这些数据.

最后,在表单中,Work我添加B1了一个带有下拉列表的单元格的数据验证: Ranges!B1:F1

这样做是创建一个具有值在此单元格的下拉列表:One,Two,Three,Four,Five但只有当细胞A1非空!

现在我的问题 - 我想用填充句柄将这个数据验证传播到其他行(1 - 10),但是下拉列表依赖于每种情况下的不同单元格/行.但是fill-handle只是在每种情况下从第一行复制验证规则.(您可以在第二张图片中看到,即使对于列中具有空单元格的行,A仍然存在具有值的下拉列表.

如何在不必在每种情况下手动更改数据验证规则中的单元格范围的情况下传播此内容?

NPS*_*NPS 2

由于没有人提出更好的建议,我将用评论中的解决方案来结束它。我使用了一个脚本来单独设置每个单元格的数据验证。我不会发布代码,因为我的实际工作表与此示例有很大不同,我必须重写整个内容。

这个解决方案远非理想,主要是因为您必须花时间谷歌搜索语法和函数,而且并不是每个人都希望在他们的工作表中包含脚本。但显然没有什么更好的了。

值得一提的是,填充句柄在 Excel 中实现了我想要的功能。我尝试在 Excel 中创建此工作表并在 Google Sheets 中打开它,但很失望地发现数据验证规则在此过程中丢失/损坏。