Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays Excel-带IF函数的列表中的模式值_Arrays_Excel_If Statement_Excel Formula_Mode - Fatal编程技术网

Arrays Excel-带IF函数的列表中的模式值

Arrays Excel-带IF函数的列表中的模式值,arrays,excel,if-statement,excel-formula,mode,Arrays,Excel,If Statement,Excel Formula,Mode,我想在列表中找到最常见的值,按名称匹配最常见的结果 我知道它围绕着一个带有模式和匹配函数的索引,其中有一个IF函数。但是我不能把它拿下来 原始数据 USER NAME Items James Ile Flat White James Ile Flat White Michael Pane Latte Lily Wilk Iced Drinks Louise Coset Millionaire Shortbread Louise

我想在列表中找到最常见的值,按名称匹配最常见的结果

我知道它围绕着一个带有模式和匹配函数的索引,其中有一个IF函数。但是我不能把它拿下来

原始数据

USER NAME       Items
James Ile       Flat White 
James Ile       Flat White 
Michael Pane    Latte 
Lily Wilk       Iced Drinks 
Louise Coset    Millionaire Shortbread 
Louise Wyli     Flat White 
Louise Wyli     Millionaire Shortbread 
Louise Wyli     English Breakfast 
Louise Cosett   Cheese Toastie 
Louise Wyli     Flat White
Louise Cosett   Pineapple Sunset 
James Court     Espresso 
期望结果

USER    
James Ile        Flat white
Michael Pane     Latte
Lily Wilk        Iced Drinks
Louise Cosett    Cheese Toastie
Louise Wyli      Flat white
James Court      Espresso

作为一个Excel公式的爱好者,考虑到这个问题没有引起太多的回应,我尝试使用
Mode.Mult
函数、
Index
Match
函数的组合来获得结果

  • Mode.Mult从Excel 2010开始提供。模式功能可用于早期版本,但如果模式值有偏差,则可能会出现错误
  • Mult函数返回数组或数据范围中最频繁出现的垂直数组或重复值。对于水平数组,使用
    转置(MODE.MULT(number1,number2,…)。
    如果有多个模式,这将返回多个结果。由于此函数返回一个值数组,因此必须将其作为数组公式输入。参数可以是数字或名称、数组或包含数字的引用。如果数组或引用参数包含文本、逻辑值或空单元格,则忽略这些值;但是,包含值为零的单元格
  • 通过使用IF conditions Mode.Mult函数,文本字符串已被使用
  • 我已经部分成功地获得了期望的结果,从某种意义上说,如果模式值不止一次出现,它将显示在结果中。尽管如此,我还是希望更多有经验的人能够指导和帮助我克服尝试中的缺点

    结果 复制C2中的数组公式

    =IFERROR(INDEX( $B$2:$B$13,INDEX(MODE.MULT(IF($A$2:$A$13=$A2,MATCH($B$2:$B$13,$B$2:$B$13,0))),ROWS($C2:C2))  ),"")
    
    使用Ctrl+Shift+Enter确认,而不仅仅是Enter


    2个问题:(1)您能否在原始数据表中添加第三列?(2) 你能使用VBA吗,或者这必须是纯标准的excel公式吗?
    Louise Cosett
    在什么基础上得到了
    Cheese Toastie
    ,而不是
    Millionary Shortbread
    菠萝日落
    Louise Cosett
    Millionary Shortbread
    感到满意,那么我就有了答案。;)谢谢太完美了!