选择多数值

时间:2017-11-01 14:29:00

标签: excel excel-formula

我有以下Excel电子表格:

        A                         B                 C                  D     
1                            Sales Price      Sales Price         Sales Price
2                              January           February            March
3    Year 01                      50                70                 90
4    Year 02                      50                60                 40
5    Year 03                      60                70                 30
6    Year 04                      40                60                 50
7    Year 05                      50                40                 25
8
9    Majority Sales Price:        50                70                 90

第3-7行中,您会看到5年内January-March个月内Year 01 - Year 05个月的产品的销售价格。

第9行中,我想选择每个月内多数的销售价格。
例如January 50 Year 01销售价格占多数,因为它出现在Year 02USE AdventureWorks2014 GO SELECT pv.Name, Continent = CASE pc.Name WHEN 'United States' THEN 'Nordamerika' WHEN 'England' THEN 'Europa' WHEN 'Germany' THEN 'Europa' WHEN 'France' THEN 'Europa' END, (SELECT COUNT(ProductID) FROM Purchasing.ProductVendor) NumberOfProducts, (SELECT COUNT(PurchaseOrderID) FROM Purchasing.PurchaseOrderHeader) NumberOfOrders FROM Purchasing.Vendor pv INNER JOIN Person.BusinessEntity pbe ON pv.BusinessEntityID = pbe.BusinessEntityID INNER JOIN Person.BusinessEntityAddress pbea ON pbe.BusinessEntityID = pbea.BusinessEntityID INNER JOIN Person.Address pa ON pbea.AddressID = pa.AddressID INNER JOIN Person.StateProvince psp ON pa.StateProvinceID = psp.StateProvinceID INNER JOIN Person.CountryRegion pc ON psp.CountryRegionCode = pc.CountryRegionCode INNER JOIN Purchasing.ProductVendor ppv ON pv.BusinessEntityID = ppv.BusinessEntityID INNER JOIN Purchasing.PurchaseOrderHeader ppoh ON pv.BusinessEntityID = ppoh.VendorID GROUP BY pv.Name, pc.Name 中。

请记住以下标准:

a)如果没有销售价格的大部分,则应选择最高销售价格。 Cell D9
b)如果两个或多个销售价格具有相同的多数,则应选择较高的销售价格。 Cell C9

我需要什么公式才能获得理想的结果?

1 个答案:

答案 0 :(得分:2)

在单元格B9中输入以下公式作为数组,即Ctrl + Shift + Enter:

{=IFERROR(MAX(MODE.MULT(B3:B7)), MAX(B3:B7))}

这使用MODE.MULT来查找模态值,它将结果作为数组返回。如果有多个模态值,MAX将返回该数组中最高的值。如果没有模态值,MODE.MULT会抛出错误,因此IFERROR语句用于在错误情况下查找最大值。