Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Excel中用坐标列表替换范围?_Excel_Xlsx_Xls - Fatal编程技术网

如何在Excel中用坐标列表替换范围?

如何在Excel中用坐标列表替换范围?,excel,xlsx,xls,Excel,Xlsx,Xls,此代码计算列C中与列B中的数字位于同一行的字符串长度总和: =SUMPRODUCT(ISNUMBER(B2:B1048576)*LEN(C2:C1048576)) 如果不是列C我想放置一组坐标系,该坐标系由列a中的移位索引描述,我应该如何将范围更改为坐标 我发现我可以将shift索引转换为列字母,从而使用以下代码获得每行的列坐标: =SUBSTITUTE(ADDRESS(1;H1;4);"1";"") 但是我不知道如何使用这组坐标来代替列范围C使用索引: =SUMPRODUCT(LEN

此代码计算
列C
中与
列B
中的数字位于同一行的字符串长度总和:

=SUMPRODUCT(ISNUMBER(B2:B1048576)*LEN(C2:C1048576))

如果不是
列C
我想放置一组坐标系,该坐标系由
列a
中的移位索引描述,我应该如何将范围更改为坐标

我发现我可以将shift索引转换为列字母,从而使用以下代码获得每行的列坐标:

=SUBSTITUTE(ADDRESS(1;H1;4);"1";"")

但是我不知道如何使用这组坐标来代替
列范围C

使用索引:

=SUMPRODUCT(LEN(INDEX(C:F,N(IF({1},ROW(B2:B6))),N(IF({1},A2:A6+1))))*ISNUMBER(B2:B6))
根据用户的版本,在退出编辑模式时,可能需要使用Ctrl-Shift-Enter而不是Enter来确认

使用索引:

=SUMPRODUCT(LEN(INDEX(C:F,N(IF({1},ROW(B2:B6))),N(IF({1},A2:A6+1))))*ISNUMBER(B2:B6))
根据用户的版本,在退出编辑模式时,可能需要使用Ctrl-Shift-Enter而不是Enter来确认


非常感谢!你能解释一下函数
LEN
中的这个东西是如何工作的吗?
INDEX
有三个参数,
INDEX(range,row,column)
我只是创建了一个行数组和列数组(基于列a中的索引),它们被传递到索引,然后索引返回这些索引的正确值。如果你使用公式→计算公式您可以按照以下步骤操作。
IF({1}…
)中的
{1}
的含义是什么?它强制使用数组。如果您订阅了Office 365,则不需要
N(IF({1},…)
,因为它们固定了索引以正确获取数组。在所有其他版本中,我们需要“欺骗”索引到接受和使用数组,这就是它正在做的。这在谷歌表单中不起作用。它们是不同的应用程序,具有不同的功能。非常感谢!你能解释一下
LEN
函数中的这个东西是如何工作的吗?
Index
包含三个参数,
索引(范围、行、列)
我只是创建了一个行数组和列数组(基于列A中的索引),这些行和列被传递到索引,然后索引在这些索引处返回正确的值。如果使用公式→计算公式您可以按照以下步骤操作。
IF({1}…
)中的
{1}
的含义是什么?它强制使用数组。如果您订阅了Office 365,则不需要
N(IF({1},…)
,因为它们固定了索引以正确获取数组。在所有其他版本中,我们需要“欺骗”索引到接受和使用数组,这就是它所做的。这在谷歌工作表中不起作用。它们是不同的应用程序,具有不同的功能。