如何在使用 VLOOKUP+QUERY+IMPORTRANGE 时应用多个条件?
How to apply multiple criteria when using VLOOKUP+QUERY+IMPORTRANGE?
所以,现在,下面的公式成功地从另一个文件中查询数据,但这基于列的数据作为条件。需要有多个条件,我不确定要比较的列是否需要作为附加查询与第一个查询一起出现...所以我在这里迷路了。
这是我使用的公式:
=Arrayformula(
if(F9:F="";"";
vlookup(A9:A;
QUERY(IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxXXXXXXXxxxxxXXXX/edit";"Costura!A1:R");
"select Col6, Col8, Col14";0)
;2;0)
)
)
对于这样的系统,最佳做法是将全部导入的数据导入到它自己的选项卡中,然后 运行 使用“两个”条件对该选项卡进行 vlookup。这将简化您的公式,并且根本不会增加处理时间。只需隐藏“裸”导入选项卡即可。
我将在以“MK”开头的两个选项卡中演示您的示例 sheet。
但基本思想是在您的 VLOOKUP()
=ARRAYFORMULA(IFERROR(VLOOKUP(A6:A&B6:B,{MK_Data!A:A&MK_Data!H:H,MK_Data!J:J},2,0)))
可以这样做:
=ARRAYFORMULA(IF(B6:B="",,IFNA(VLOOKUP(A6:A&B6:B,
{QUERY(Data!A1:J, "select A", 0)&
QUERY(Data!A1:J, "select H", 0),
QUERY(Data!A1:J, "select J", 0)}, 2, 0))))
这将转化为:
=ARRAYFORMULA(IF(B6:B="",,IFNA(VLOOKUP(A6:A&B6:B,
{IMPORTRANGE("1gh5w0czg2JuoA3i5wPu8_eOpC4Q4TXIRhmUrg53nKMU", "Data!A:A")&
IMPORTRANGE("1gh5w0czg2JuoA3i5wPu8_eOpC4Q4TXIRhmUrg53nKMU", "Data!H:H"),
IMPORTRANGE("1gh5w0czg2JuoA3i5wPu8_eOpC4Q4TXIRhmUrg53nKMU", "Data!J:J")}, 2, 0))))
所以,现在,下面的公式成功地从另一个文件中查询数据,但这基于列的数据作为条件。需要有多个条件,我不确定要比较的列是否需要作为附加查询与第一个查询一起出现...所以我在这里迷路了。
这是我使用的公式:
=Arrayformula(
if(F9:F="";"";
vlookup(A9:A;
QUERY(IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxXXXXXXXxxxxxXXXX/edit";"Costura!A1:R");
"select Col6, Col8, Col14";0)
;2;0)
)
)
对于这样的系统,最佳做法是将全部导入的数据导入到它自己的选项卡中,然后 运行 使用“两个”条件对该选项卡进行 vlookup。这将简化您的公式,并且根本不会增加处理时间。只需隐藏“裸”导入选项卡即可。
我将在以“MK”开头的两个选项卡中演示您的示例 sheet。
但基本思想是在您的 VLOOKUP()
=ARRAYFORMULA(IFERROR(VLOOKUP(A6:A&B6:B,{MK_Data!A:A&MK_Data!H:H,MK_Data!J:J},2,0)))
可以这样做:
=ARRAYFORMULA(IF(B6:B="",,IFNA(VLOOKUP(A6:A&B6:B,
{QUERY(Data!A1:J, "select A", 0)&
QUERY(Data!A1:J, "select H", 0),
QUERY(Data!A1:J, "select J", 0)}, 2, 0))))
这将转化为:
=ARRAYFORMULA(IF(B6:B="",,IFNA(VLOOKUP(A6:A&B6:B,
{IMPORTRANGE("1gh5w0czg2JuoA3i5wPu8_eOpC4Q4TXIRhmUrg53nKMU", "Data!A:A")&
IMPORTRANGE("1gh5w0czg2JuoA3i5wPu8_eOpC4Q4TXIRhmUrg53nKMU", "Data!H:H"),
IMPORTRANGE("1gh5w0czg2JuoA3i5wPu8_eOpC4Q4TXIRhmUrg53nKMU", "Data!J:J")}, 2, 0))))