将 MODE.SNGL 插入到条件公式中,将数据从一个工作表拉到另一个工作表

将 MODE.SNGL 插入到条件公式中,将数据从一个工作表拉到另一个工作表

Windows 10 Excel 2019

我有一个工作簿,其中包含两个工作表,分别是“产品数据”和“产品列表”。每次运行我要查找的公式时,都会生成“产品列表中”的数据。

产品数量未知/无限制
每种产品的行数未知/无限制
每张工作表都有一个标题行

在产品数据页面中...
A、B、J、K 列将包含重复日期,这些日期应用于识别与每种产品相关的行。G
和 H 列也与每种产品相关,但将包含混合值,不用于识别产品。

对于每种产品(通过产品列表表 A、B、J、K 列中的匹配数据来识别),我需要 Excel 查看 G 列并返回在每个匹配的数据集中出现次数最多的数字,可能是“=MODE.SNGL(G2:G)”直到匹配的末尾。

我需要的代码/公式将执行以下操作:
当处理完第一组匹配的值(黄色)后,它会继续处理下一组匹配的值(绿色),然后处理下一组(蓝色),依此类推,一直到产品列表表下方,并将其复制到产品列表页面(下面的示例)。

我有以下 VBA,它从产品日期工作表中提取数据,但我无法弄清楚如何将“=MODE.SNGL(G2:G)”或类似内容插入到 G 列范围的代码中,以便它循环并为每组匹配的数据重新开始。

' 从单元格 A2 开始到单元格 G2,一直到第 40,000 行,这将插入公式以 ' 从工作表“跟踪数据 2

Range("A2").Select
ActiveCell.FormulaR1C1 = _
    "=IF(ISBLANK('Track Data'!RC), """",IF(OR('Track Data'!RC[8]=""Wav"",'Track Data'!RC[8]=""Flac"",'Track Data'!RC[8]=""Mp3"",'Track Data'!RC[8]=""Aif"",'Track Data'!RC[8]=""OSX AU""),'Track Data'!RC,""""))"
Range("B2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""","""",'Track Data'!RC)"
Range("C2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-2]="""","""",'Track Data'!RC[8])"
Range("D2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-3]="""","""",'Track Data'!RC)"
Range("E2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-4]="""","""",'Track Data'!RC[2])"
Range("F2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-5]="""","""",'Track Data'!RC[])"
Range("G2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-6]="""","""",'Track Data'!RC[2])"
Range("A2:G2").Select
Selection.AutoFill Destination:=Range("A2:G40000"), Type:=xlFillDefault
Range("A2:G40000").Select
Application.GoTo Reference:="R2C1"

产品数据工作表的示例。

PRODUCT     TYPE    DATA 1  DATA 2  DATA 3  DATA 4  NO 1    N0 2    DATA 5  PRICE   PACK TYPE
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  12  1058    Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  12  1058    Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  12  1058    Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  4   1058    Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  4   652 Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  2   331 Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  12  2012    Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  12  1058    Data 5  22.99   Tin
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  12  1058    Data 5  22.99   Tin
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  300 442 Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  43  442 Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  300 442 Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  21  5678    Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  14  442 Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  62  789 Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  300 442 Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  300 1233    Data 5  9.89    Tube
Yellow Paint    Oil Data 1  Data 2  Data 3  Data 4  300 442 Data 5  9.89    Tube
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  1   3   Data 5  6.28    Tin
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  1   45  Data 5  6.28    Tin
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  2   20  Data 5  6.28    Tin
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  3   3   Data 5  6.28    Tin
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  3   8   Data 5  6.28    Tin
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  6   3   Data 5  6.28    Tin
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  1   3   Data 5  6.28    Tin

产品列表页面的示例。

PRODUCT     TYPE    DATA 1  DATA 2  DATA 3  DATA 4  M. DUPS No 2    DATA 5  PRICE   PACK TYPE
Red Paint   Powder  Data 1  Data 2  Data 3  Data 4  12  1058    Data 5  22.99   Tin
Yellow PaintOil Data 1  Data 2  Data 3  Data 4  300 442 Data 5  9.89    Tube
Black Paint Powder  Data 1  Data 2  Data 3  Data 4  1   3   Data 5  6.28    Tin

相关内容