首页 > 解决方案 > 相当于 Excel 上的 SELECT FROM WHERE

问题描述

我在 Excel 表上有一个数据集,其中每一行都有一个 Id 和其他几列。在其他一些工作表中,我需要根据给定的 ID 选择一些列。

我正在使用 Excel 2016,所以我尝试了“dget”功能,但它似乎不是最好的解决方案。

对于数据集,它接近于:

id  Name    birth date  gendre
1   Sara    10/05/1997  F
2   Edward  01/08/1994  M
3   Anna    06/10/1993  F

为了获取我使用的数据

=DGET(Table1[#All];Table2[[#Headers];[Name]];A1:A2)

在每一列中(A1:A2 用于 id 和 2)

id  Name    salary 
2   Edward  5000

然后我添加了一些我不希望它们出现在第一个数据集中的新列。

此解决方案仅适用于第一行,因为它需要 Criteria(DGET 函数中的最后一个字段)作为范围,官方定义:Criteria Required。包含您指定的条件的单元格区域。您可以为条件参数使用任何范围,只要它包含至少一个列标签和在您指定列条件的列标签下方的至少一个单元格。

从第二行开始,Criteria 不再是一个范围,它就像“A1;A3”(对于第一行“A1:A2”)

有没有其他解决方案或替代方案?

标签: exceldatabase

解决方案


在表格中选择一个单元格,单击插入>数据透视表,然后将 ID、姓名、出生日期和性别字段拖到 ROWS 区域中。然后通过单击数据透视表并选择插入切片器,在 ID、姓名和工资上添加切片器。然后选择你想要的 ID/Name/Salary 值。要进行多项选择,请按住 Ctrl 或单击 Slicer 的 MultiSelect 按钮。


推荐阅读