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

Validation 如何将数据验证传播到其他行?,validation,google-sheets,autofill,Validation,Google Sheets,Autofill,表范围: 工作表工作: 在表范围单元格A1:A5中,我有一些值,比如:1,2,3,4,5。在单元格B1中,我有以下公式:=ARRAYFORMULA(转置(if(Work!$A1“;$A$1:$A$5;”)),它根据工作表Work中的单元格A1是否为非空,用上述值填充单元格B1:F1 接下来,我选择了单元格B1:F1,然后使用填充手柄将选择向下拖动到覆盖范围B1:F10。这复制了上述范围,但每一行现在取决于工作表中的相应行 基本上,我已经创建了一个数据范围列表,只有当另一个工作表中的某些单元格

范围

工作表
工作

在表
范围
单元格
A1:A5
中,我有一些值,比如:
1
2
3
4
5
。在单元格
B1
中,我有以下公式:
=ARRAYFORMULA(转置(if(Work!$A1“;$A$1:$A$5;”)
),它根据工作表
Work
中的单元格
A1
是否为非空,用上述值填充单元格
B1:F1

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

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

最后,在工作表
Work
中,我用下拉列表为单元格
B1
添加了数据验证:
范围!B1:F1

这将在该单元格中创建一个下拉列表,其中包含以下值:
1
2
3
4
5
,但仅当单元格
A1
为非空时才可以

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


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

因为没有人提出更好的建议,所以我用注释中的解决方案来结束它。我使用了一个脚本,分别为每个单元格设置数据验证。我没有发布代码,因为我的实际工作表与从这个例子,我将不得不重写整个事情

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

值得一提的是,fill handle在Excel中实现了我想要的功能。我曾尝试在Excel中创建此工作表并在google sheets中打开它,但失望地发现数据验证规则在此过程中丢失/被破坏。

函数a(str)
{
如果(str.uname.value==“”)
{
document.getElementById(“msg1”).innerHTML=“!Plz输入用户名”;
str.uname.focus();
返回false;
}
如果(str.pass.value==“”)
{
document.getElementById(“msg1”).innerHTML=“Plz输入密码…”;
str.pass.focus();
返回false;
}
如果((str.pass.value.length8))
{
document.getElementById(“msg1”).innerHTML=“Plz输入密码3到8”;
str.pass.focus();
返回false;
}
}

无标题文件
*用户名
密码

我使用了一个脚本来实现这一点(这有点像手动完成…:P)。如果有人知道不使用脚本的方法,请分享。这与我的问题有什么关系?