将值匹配并列出到包含多列条件的动态列表

问题描述 投票:0回答:1
"� 7509 ��产品D13产品G店铺33508%15015%300产品D14产品G店铺36047%6007%300产品G15产品G店铺39025%83035%300产品G16产品G店铺23909%32513%150产品G17产品G店铺317030%3009%18产品G店铺33205%30012%19产品H店铺293527%23016%20产品一店铺313418%60042%
0 A B C D E F G H J K L M N
1 产品 商店 2023-S 2023-M 2024-S 2024-M
2
3 产品A 店铺3 80 2% 500 22% ColCrit1 ColCrit2 查找数组
4 产品B 店铺2 320 23% 180 60% 产品D 店铺1 2024-s
5 产品B 店铺1 90 8% 300 36% 产品G 店铺3 返回数组
6 产品C 店铺3 500 15% 657 16% 产品
7 产品D 店铺1 160 17% 500 15%
8 产品D 店铺1 500 30% 600 8% 列表 比赛
9 产品D 店铺1 130 4% 300 4% 830 产品G
10 产品E 店铺2 75 10% 450 10% 600 产品D
11 产品F 店铺4 60 8% 370 4% 600 产品G
12 产品F 店铺1 500 11% 850 4% 500\n"

Range K9:K16

 中,来自 
Column H
 且满足 
Range K4:K6
Range L4:L6
 中的列标准的所有值均根据以下公式列出:

=SORT( LET( a;COUNTIF(K4:K6;A1:A20)+AND(K4:K6=""); b;COUNTIF(L4:L6;C1:C20)+AND(L4:L6=""); FILTER(FILTER(A1:J20;(A1:J1=N4);"");a*b;""));;-1)


Range L9:L16

我想要

    将值与
  1. Range K9:K16

    的结果相匹配
  2. return_array
     中作为变量 
    Cell N6
     输入的列。 

这个问题的公式已经接近结果了:

选项1
=CHOOSECOLS(SORT(FILTER(CHOOSECOLS(A3:I20;XMATCH(N4;A1:I1);XMATCH(N6;A1:I1));COUNTIFS(K4:K6;A3:A20;L4:L6;C3:C20));;-1);2)


选项2

=LET( a, K9:K16, b, A1:I1, c, A3:I20, d, XLOOKUP(N4,b,c,""), MAP(a,LAMBDA(α, @DROP(TOCOL(FILTER(IFS((d=α)* (1-ISNA(XMATCH(A3:A20,K4:K6)+XMATCH(C3:C20,L4:L6))), IF(c=0,x,c)),N6=b,""),3), COUNTIF(K9:α,α)-1))))


但是,例如,当

Range K4:K6

Range L4:L6
 为空并且范围 
K9:K16
 中的列表调整为它时,
Range L9:L16
 的两个公式都会返回错误 
#CALC!

我需要如何修改它们才能使它们根据

Range K4:K6

中的列表进行调整?

excel excel-formula
1个回答
0
投票

=SORT(FILTER(CHOOSECOLS(A3:I20,XMATCH(N4,A1:I1),XMATCH(N6,A1:I1)),(AND(K4:K6="")+COUNTIF(K4:K6,A3:A20))*(AND(L4:L6="")+COUNTIF(L4:L6,C3:C20)),""),,-1)


    

© www.soinside.com 2019 - 2024. All rights reserved.