excel中如何调用某列非空所有单元格,公式表达

我想调用第K列从K2到第K列非空最后一格整个区域,作为sumproduct函数的选择区域(K1为文字),sumproduct((条件)*(条件)*(选择区域)),该怎么写?谢谢

【调用第K列从K2到第K列非空最后一格整个区域】Excel没有简单地恰好指定这个区域的方法,当然可以通过Indirect函数来生成这个引用或用Offset函数来取得这一叠数据,但是无一例外都需要在公式中获得这个区域中的数据数量,而Excel的【非空】又很奇怪地分为【真空】和【假空(含有计算结果为零的公式)】,并且【真空】和【假空】在CountA函数中的表现是不同的。这就增大了公式的复杂度。

如果楼主只是想应用于SUMPRODUCT,建议取一个能完全覆盖数据的区域既可,如有必要可以加上【*(K2:K10000<>"")】以屏蔽空白区域(不管是真空还是假空都适用)
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-05-25
例如
=SUM(INDIRECT("K2:K"&(COUNTA(K:K)-1)))追问

好像不用减一的,不过我试了下公式应该是没问题的,谢谢!调用本工作表中的列就没问题,调用别的工作表就会报错。。。=SUM(INDIRECT("DATA!K2:DATA!K"&(COUNTA(DATA!K:K)+1)))这样编就会报错是为什么呢?

追答

不减一结果不影响,因为后面都是空白的,但是实际你是多加了一个0

=SUM(INDIRECT("DATA!K2:K"&(COUNTA(DATA!K:K)+1)))

多了一个DATA!

本回答被提问者采纳

excel中如何调用某列非空所有单元格,公式表达
【调用第K列从K2到第K列非空最后一格整个区域】Excel没有简单地恰好指定这个区域的方法,当然可以通过Indirect函数来生成这个引用或用Offset函数来取得这一叠数据,但是无一例外都需要在公式中获得这个区域中的数据数量,而Excel的【非空】又很奇怪地分为【真空】和【假空(含有计算结果为零的公式)】,并...

excel用数组公式获取一列中非空(非零)值
=OFFSET($A$1,SMALL(IF($A$1:$A$10<>0,ROW($1:$10),""),ROW(A1))-1,0)公式完成输入后,按Ctrl+Shift+Enter结束。向下填充以应用到所需单元格。公式解析:A1:A10区域中,第1、2、4、10行包含非零、非空数据。首先利用“IF($A$1:$A$10<>0,ROW($1:$10),"")”生成数列“{1...

excel读取某列单元格非空的数据然后显示
很简单!!!如数据在A2:B100,在C2中输入公式:=IF(ISERROR(INDEX(B$2:B$100,SMALL(IF(B$2:B$100<>"",ROW($1:$99)),ROW(A1))),"",INDEX(B$2:B$100,SMALL(IF(B$2:B$100<>"",ROW($1:$99)),ROW(A1))) , 同时按下ENTER键,SHIFT键,和CTRL键,公式下拉,即可....

excel 取某字段不为空的数据
ctrl+G 选择 定位条件,选择空值,点确定就是。。。

excel里选择随机的非空值数据【如果是 按——列】?
Excel数据随机生成一列非空值

Excel中如何用函数求某一条件下的非空单元格个数
假设甲乙分别在A2,B2单元格 再C2输入以下公式即可 =sumproduct((a3:a10="三")*(b3:b10<>""))其中A3:A10为你截图的范围,实际范围可以更改,改A列的同时要改B列的范围 求别的如四,五,只要改双引号内的值就可,""这个为英文状态下的双引号,不可乱改,代表文本 ...

EXCEL 求一个函数公式 能返回J列非空白行对应的A列中的数据
SHEET2 A2输入 =INDEX(Sheet1!A:A,SMALL(IF(Sheet1!$J$1:$J$1000<>"",ROW(Sheet1!$J$1:$J$1000),4^8),ROW(A2)))&""数组公式 按ctrl+shift+enter结束 鼠标移到A2 右下角变 实心十字 下拉 B2 输入 =VLOOKUP(A2,sheet1!A:J,10,0)下拉 ...

excel函数读取某非空行的A列单元格内容
公式的意思就是:IF(Sheet1!$B$1:$B$999<>"",ROW($1:$999),4^8)用IF函数判断sheet1!B1:B999这个区域是不是空值,如果不是就返回当前的行号,如果是就返回最后一行4^8=65536(这是EXCEL 2003支持最大的行数)。SMALL(IF(...),ROW(A1))然后在外面套个SMALL从小到大排序的函数。把以上...

excel中如何在一列资料中提出非空字元
公式为: =INDEX(1:1,MAX(COLUMN(1:1)*(1:1<>""))) 上述公式输入完毕后,按Ctrl+Shift+Enter结束。 另外,还可以使用下面的公式: 1.查询资料为数值: =LOOKUP(9E+307,A1:A100) 说明:9.99999999999999E+307是Excel允许在单元格中输入的最大数值,为方便书写,公式中写为“9E+...

excel自动显示某列非空值
I2=COUNTA(H$2:H2)向下复制 J2=IFERROR(INDEX($H$2:$H$8,MATCH(ROW(G1),$I$2:$I$8,0)),"")向下复制

相似回答