a2b2C2
销售点 销售额 分段点
城北001 4100 5000
城北002 15890 10000
城南001 8700 50000
城南002 25900
城南003 5800
城东001 15300
城东002 38000
城东003 9800
城西001 56000
城西002 72050
城中001 130000
城中002 60400
城中003 48700
步骤:
"1、处理如上图所示的表格
2、选中单元格G7:G10,直接输入公式:=FREQUENCY(B4:B14,c4:c6)
3、输入公式后,按CTRL+SHIFT+ENTER键结束
"
类型 日期 单价 销售数量
A 2005-6-15 1000 10
B 2005-6-20 1000 15
B 2005-7-1 4000 10
C 2005-7-10 4000 11
B 2005-8-15 9000 13
C 2005-8-20 9000 15
A 2005-9-30 1000 14
A 2005-10-10 1000 20
B 2005-10-15 4000 25
类型从B1格开始
计算B产品8月份销量
13{=SUM(IF(($B$2:$B$10="B")*(MONTH($C$2:$C$10)=8),($E$2:$E$10),0))}
13 {=SUM(($B$2:$B$10="B")*(MONTH($C$2:$C$10)=8)*($E$2:$E$10))}
计算A产品和B产品的销量
107 {=SUM(IF(($B$2:$B$10="A")+($B$2:$B$10="B"),($E$2:$E$10),0))}
107 {=SUM((($B$2:$B$10="A")+($B$2:$B$10="B"))*($E$2:$E$10))}
计算8月份前不包括B产品销量和8月后不包括C产品销量
49 {=SUM(IF(((MONTH($C$2:$C$10)<8)<>($B$2:$B$10="B"))*((MONTH($C$2:$C$10)>=8)<>($B$2:$B$10="C")),$E$2:$E$10))}
49 {=SUM(IF(((MONTH($C$2:$C$10)<8)-($B$2:$B$10="B"))*((MONTH($C$2:$C$10)>=8)-($B$2:$B$10="C")),$E$2:$E$10))}
49 {=SUM(((MONTH($C$2:$C$10)<8)<>($B$2:$B$10="B"))*((MONTH($C$2:$C$10)>=8)<>($B$2:$B$10="C"))*$E$2:$E$10)}
以上公式中*的意思为AND,+的意思为OR,-的意思为<> "不等于"
1.24 求一个单元格数值中的最大数字和个数字之和
我们平时都是对不同单元格之间的数字进行计算,但是在一个单元格内部,各数字之间有什么关系?这是一个很有创新意识的命题。例如A1中的数字为389732,求其中最大的数字9,求这和6个数字之和为32。
(1)求其中最大的数字,利用数组公式:
{=MAX(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)*1)}
先输入=MAX(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)*1),再按Ctrl+Shift+Enter。
(2)求其中数字之和,利用下面的公式:
=SUMPRODUCT(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)*1)
1.25 逻辑函数的非逻辑表现
例如,求取范围Data中小于0或大于5的数值之和:
正确用法:
{=SUM(IF((Data<0)+(Data>5),Data))}
错误用法:
{=SUM(IF(OR(Data<0,Data>5),Data))}
1.26 在EXCEL的数组公式中ROW函数的用法
在EXCEL的数组公式中,ROW()是一个非常有用的函数,现在举个例子来说明。
(1)返回一列中最后一个数值
{=INDEX(A:A,MAX(ROW(A1:A100)*(A1:A100<>"")))}
在这个公式中用ROW函数返回A1:A100<>""即A1格到A100中不为空的单元格,它是一组数据,然后用MAX确定最大的一个行号,即最后一格不为空的单元格,然后用INDEX,来返回A1到A100中A列最大行号的那个数据。
(2)同理如果要返回一行中最后一个数值则为
{=INDEX(1:1,MAX(COLUMN(1:1)*(1:1<>"")))}
(3)下面出一个小题目,如果有兴趣想学数组的可以试一下,返回A列100行中最后一个有数值的行号的公式是什么?
{=MAX(IF(A1:A100<>"",ROW(A1:A100),""))}
1.27 返回最大值的行号和地址
返回最大值的行号:
{=min(if(A1:A100=max(A1:A100),row(A1:A100),"")}
返回最大值的地址:
{=ADDRESS(MIN(IF(A1:A100=max(A1:A100),ROW(A1:A100),"")),COLUMN(A1:A100))}
{=MAX(IF((A1:A100<>"")*ISNUMBER(A1:A100),ROW(A1:A100),""))}
1.28 Excel常见错误及解决办法
经常用Ex