请问EXCEL中怎么把符合条件的一系列值传递到另一个表内?

如图所示,我现在想把符合B列(也就是序号列)单元格的值为空的A列所有单元格内的值传递到另一个表内,因为这个值在另一个关联表内有一步重要的计算,请问这要怎么操作?

若是想要实现数据的提取并复制粘贴到另一个表中,只要使用EXCEL自带的“高级筛选”功能就可以直接提取了,操作上只要鼠标点几下即可。追问

我就是懒得点才想着让它自动传递的,不然我只要修改一个数据再往下一拖就完事了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-02-25
另一个表内,要传递到的第1个单元格中:
=INDEX(截图中的工作表名称!B:B,SMALL(IF(截图中的工作表名称!A:A="",ROW(A:A),4^10),ROW(1:1)))&""
同时按Ctrl+Shift+Enter三键输入数组公式,下拉到出现空白单元格。追问

有没有别的,这个太影响效率了,执行一次能卡个四五秒

追答

当然有,如Power Qurey,把数据源导入到Power Qurey中,对B列筛选,保留B列为空的数据,删除标题为“A”的列以外的所有列(只是在Power Qurey中对数据进行处理,并不会真正删除数据),上载到目标工作表中需要的列中。这种操作对于Power Qurey完全是小儿科。

再或者用SQL:在目标工作表中,需要数据的第1个单元格,数据菜单——获取数据——现有连接,查找这个文件(工作簿),选择数据源工作表——其实哪个都无所谓——最终由SQL语句决定从哪得到数据,选择“属性”,在定义的命令文本中输入类似于:

select A from [数据源工作表名称$] where 序号 is null

命令的意义很接近英语的普通语言,从数据原工作表中选择标题为A的数据列,条件是序号列为空(null)

确定后立马得到结果,SQL查询是效率最高的,且与数据源是链接的,数据源变化,查询结果只需右击后选择刷新即可更新。但SQL语句的编写要求极高,不能有任何错误。如图是你所说的问题的一个类似模拟。



PS:前面的回答中把“A”和“序号”弄反了。

第2个回答  2022-02-25
数据量大就加辅助列,方便提供下文件不