数学和三角函数
ABS返回数字的绝对值
ACOS返回数字的反余弦值
ACOSH返回数字的反双曲余弦值
ASIN返回数字的反正弦值
ASINH返回数字的反双曲正弦值
ATAN返回数字的反正切值
ATAN2从 X 和 Y 坐标返回反正切
ATANH返回数字的反双曲正切值
CEILING将数字舍入为最接近的整数,或最接近的有效数字的倍数COMBIN返回给定数目对象的组合数
COS返回数字的余弦值
COSH返回数字的双曲余弦值
DEGREES将弧度转换为度
EVEN将数字向上舍入为最接近的偶型整数
EXP返回 e 的指定数乘幂
FACT返回数字的阶乘
FACTDOUBLE返回数字的双阶乘
FLOOR将数字朝着零的方向向下舍入
GCD返回最大公约数
INT将数字向下舍入为最接近的整数
LCM返回最小公倍数
LN返回数字的自然对数
LOG返回数字的指定底数的对数
LOG10返回数字的常用对数
MDETERM返回数组的矩阵行列式
MINVERSE返回数组的逆矩阵
MMULT返回两数组的矩阵乘积
MOD返回两数相除的余数
MROUND返回按指定倍数舍入后的数字MULTINOMIAL返回一组数字的多项式
ODD将数字向上舍入为最接近的奇型整数
PI返回 Pi 值
POWER返回数的乘幂结果
PRODUCT将所有以参数形式给出的数字相乘QUOTIENT返回商的整数部分
RADIANS将度转换为弧度
RAND返回 0 到 1 之间的随机数RANDBETWEEN返回指定数字之间的随机数ROMAN将阿拉伯数字转换为文本形式的罗马数字
ROUND将数字舍入到指定位数
ROUNDDOWN将数字朝零的方向舍入
ROUNDUP将数朝远离零的方向舍入SERIESSUM返回基于公式的幂级数的和
SIGN返回数字的符号
SIN返回给定角度的正弦值
SINH返回数字的双曲正弦值
SQRT返回正平方根
SQRTPI返回某数与 Pi 的乘积的平方根SUBTOTAL返回数据库列表或数据库中的分类汇总SUM将参数求和
SUMIF按给定条件将指定单元格求和SUMPRODUCT返回相对应的数组部分的乘积和SUMSQ返回参数的平方和
SUMX2MY2返回两个数组中相对应值的平方差之和SUMX2PY2返回两个数组中相对应值的平方和之和SUMXMY2返回两个数组中相对应值差的平方之和TAN返回数字的正切值
TANH返回数字的双曲正切值
TRUNC将数字截尾取整
SUMIF(A:A,F:F,D:D)什么意思
在A列中找F列有的值,有的话,返回到D列的值,所有满足条件的D列值的和。
是条件求和公式,如下图
在A列中,找到两个“王”,两个王对应的D列的值为14和16,其和为30
以此类推。
在这里,条件使用F:F整列,效果就是,条件为公式所在的行对应的F列的值
比如,在G2,对应F列的值是F2,就是“林”,所以,就在A列中找所有林对应的D值
相同,G3,条件就是陈
excel sumif函数用法和使用实例
第一部分:excel sumif函数的用法介绍
Excel中sumif函数的用法是根据指定条件对若干单元格、区域或引用求和。
sumif函数语法是:SUMIF(range,criteria,sum_range)
sumif函数的参数如下:
第一个参数:Range为条件区域,用于条件判断的单元格区域。
第二个参数:Criteria是求和条件,由数字、逻辑表达式等组成的判定条件。
第三个参数:Sum_range 为实际求和区域,需要求和的单元格、区域或引用。
当省略第三个参数时,则条件区域就是实际求和区域。
criteria 参数中使用通配符(包括问号(?) 和星号(*))。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在该字符前键入波形符(~)。
第二部分:excel sumif函数的实例介绍
实例:求报表中各栏目的总流量
结果如下图所示。
选中F2单元格,输入公式:=SUMIF(B2:B19,E2,C2:C19),输入公式完成后,按键盘上c trl+shift+enter组合键(必须按此ctrl+shift+enter组合键数组公式才能得到正确结果),即可统计出办公软件栏目的总流量。
以此类推,选中F3单元格,输入公式:=SUMIF(B2:B19,E3,C2:C19),输入公式完成后,按键盘上ctrl+shift+enter组合键,可以求得网站运营栏目的总流量。
选中F4单元格,输入公式:=SUMIF(B2:B19,E4,C2:C19),输入公式完成后,按键盘上c trl+shift+enter组合键,可以求得电脑医院栏目的总流量。
选中F5单元格,输入公式:=SUMIF(B2:B19,E5,C2:C19),输入公式完成后,按键盘上c trl+shift+enter组合键,可以求得工具软件栏目的总流量。
选中F6单元格,输入公式:=SUMIF(B2:B19,E6,C2:C19),输入公式完成后,按键盘上c trl+shift+enter组合键,可以求得网络安全栏目的总流量。
sumproduct函数实例(二):统计多种产品的总销售
金额
上一篇文章我们介绍了excel中sumproduct函数的用法,也列举了一个简单实例。
我们在本文通过统计多种产品的总销售金额来巩固所学的sumproduct函数。
实例:统计多种产品的总销售金额
本例中按类别统计了销售记录表,此时需要统计出女式连衣裙和女式职业装两类的销售金额,我们可以直接使用sumproduct函数来实现。如下图所示。
选中E8单元格,输入公式:=SUMPRODUCT(((B2:B19="女式连衣裙")+(B2:B19="女式职业装")),$C$2:$C$19)
按下回车键,确定,即可统计出女式连衣裙和女式职业装两类的销售金额。
Excel中TODAY函数用法及实例(三)
我们都知道2010年南非世界杯赛于2010年6月11日至7月11日举行。
我们将DATE函数和TODAY函数配合使用,便可计算出离世界杯结束倒计时的天数。
如下图:
选中B2单元格,在编辑栏输入公式:=DATE(2010,7,11)-TODAY(),按下回车键确定即可计算出倒计时天数。
本例还用到了DATE函数。关于excel date 函数的用法请参考文章:《excel date函数用法及实例》。
excel date函数用法及实例(一)
实例:已知一年中的第几天,计算其准确日期
如果当前已知一年中的第几天,我们可以使用excel中date函数计算其对应的准确日期。如图:选中B2单元格,在编辑栏输入公式:=DATE(2010,1,A2),按下回车键确定即可计算出2010年第32天对应的日期。
本例用到了DATE函数。关于excel date 函数的用法如下。
excel date 函数
Excel中DATE函数的用法是:返回表示特定日期的连续序列号。
例如,公式=DATE(2008,7,8),该序列号表示2008-7-8。
如果在输入该函数之前单元格格式为“常规”,则结果将使用日期格式,而不是数字格式。若要显示序列号或要更改日期格式,请在“开始”选项卡的“数字”组中选择其他数字格式。
DATE函数语法是:DATE(year, month, day)。
其中的参数:
year参数:可以包含一到四位数字。Excel将根据计算机所使用的日期系统来解释year
参数。
Month参数:一个正整数或负整数,表示一年中从1 月至12 月(一月到十二月)的各个月。
如果month 大于12,则month 从指定年份的一月份开始累加该月份数。例如,DATE(2 008,14,2) 返回表示2009 年2 月2 日的序列号。
如果month 小于1,month 则从指定年份的一月份开始递减该月份数,然后再加上1
个月。例如,DATE(2008,-3,2) 返回表示2007 年9 月2 日的序列号。
Day参数:一个正整数或负整数,表示一月中从1 日到31 日的各天。
如果day大于指定月份的天数,则day 从指定月份的第一天开始累加该天数。例如,DA TE(2008,1,35) 返回表示2008 年2 月4 日的序列号。
如果day小于1,则day 从指定月份的第一天开始递减该天数,然后再加上1 天。例如,DATE(2008,1,-15) 返回表示2007 年12 月16 日的序列号
一次性去除excel表中全半角空格的方法
在excel工作表中,单元格内有大量的全角和半角空格,如果使用手工删除实在是太累,其实我们使用SUBSTITUTE函数就可以帮我们一次性的去除所有的全半角空格。
实例:去除表中全角或半角空格
工作表如下图所示:
在A列姓名列中学生的姓名在输入时,录入了大量的全角和半角空格,我们将操作定在G 列中。然后在G2单元格输入公式:=SUBSTITUTE(SUBSTITUTE(A2," ",""),"",""),然后在整个G列复制公式。选择G列数据→进行复制,再选择A列所有数据→选择性粘贴→值和数字格式即可。
通过SUBSTITUTE函数,我们就一次性的全部去除了整个工作表的全角或半角空格。SUBSTITUTE函数关联文章阅读:
《Excel中SUBSTITUTE函数的用法及实例》
《Excel中一次性将全角数字和句号替换为半角数字和小数点》
《一次性去除excel表中全半角空格的方法》
《Excel中提取字符常用实例》
《Excel中如何删除单元格最后2位字符》
介绍excel如何隐藏工作表
如何隐藏工作表方法一:
首先选择需要隐藏的工作表,然后在工作表标签上单击右键,选择“隐藏”。
补充:配合使用Ctrl和Shift键,同时选中多个工作表进行隐藏。
如何隐藏工作表方法二:
选中需要隐藏的工作表,单击【开始】选项卡→【单元格】组中的【格式】按钮→【隐藏和取消隐藏】→【隐藏工作表】,即可将工作表隐藏。
如何隐藏工作表方法三:
如何隐藏工作表方法一介绍的是对单个或多个工作表进行隐藏,如果需要对整个工作薄进行隐藏,单击视图——隐藏命令,可以隐藏整个工作薄。
如何隐藏工作表相关文章:
Excel中彻底隐藏工作表的正确方法https://www.doczj.com/doc/11496958.html,/show.asp?id=780
解决excel无法取消隐藏https://www.doczj.com/doc/11496958.html,/show.asp?id=1271
批量取消隐藏工作表的方法https://www.doczj.com/doc/11496958.html,/show.asp?id=1325
excel去掉网格线设置
excel去掉网格线的方法是:单击“视图”选项卡-〉“显示组-〉取消勾选“网格线”复选框。
通过上面的方法就可以完成excel去掉网格线。
excel去掉网格线和显示网格线,就是在是否勾选复选框之间来回切换,相比excel2003版设置更加直观方便。
excel去掉网格线相关文章:
Excel网格线显示和打印:https://www.doczj.com/doc/11496958.html,/show.asp?id=1038
excel函数公式大全
ABS 用途:返回某一参数的绝对值。
ACCRINT 用途:返回定期付息有价证券的应计利息。
ACCRINTM 用途:返回到期一次性付息有价证券的应计利息。
ACOSH 用途:返回参数的反双曲余弦值。
ADDRESS 用途:以文字形式返回对工作簿中某一单元格的引用。
AMORDEGRC 用途:返回每个会计期间的折旧值。
AMORLINC 用途:返回每个会计期间的折旧值,该函数为法国会计系统提供。如果某项资产是
在会计期间内购入的,则按线性折旧法计算。
ASC 用途:将字符串中的全角(双字节)英文字母更改为半角(单字节)字符。
ASIN 用途:返回参数的反正弦值。
ASINH 用途:返回参数的反双曲正弦值。
ATAN 用途:返回参数的反正切值。返回的数值以弧度表示,大小在-π/2~π/2之间。
ATAN2 用途:返回直角坐标系中给定X及Y的反正切值。它等于X轴与过原点和给定点(x_n um,y_num)的直线之间的夹角,并介于-π~π之间(以弧度表示,不包括-π)。
ATANH 用途:返回参数的反双曲正切值,参数必须在-1~1之间(不包括-1和1)。
AVEDEV 用途:返回一组数据与其平均值的绝对偏差的平均值,该函数可以评测数据(例如学生的某科考试成绩)的离散度。
AVERAGEA 用途:计算参数清单中数值的平均值。它与AVERAGE函数的区别在于不仅数字,而且文本和逻辑值(如TRUE和FALSE)也参与计算。
BETADIST 用途:返回Beta分布累积函数的函数值。Beta分布累积函数通常用于研究样本集合中某些事物的发生和变化情况。例如,人们一天中看电视的时间比率。
由于空间有限,没有一一列出,有需要的朋友可以直接去下载:https://www.doczj.com/doc/11496958.html,/forum. php?mod=viewthread&tid=60&extra=page%3D1。
excel打印区域页面设置
Excel打印区域页面设置相关的知识点,还是很多的。在网上没有看到一篇系统介绍Excel打印页面设置的文章,于是整理出来和大家分享。
Excel高版本必是一个趋势,因此本文以Excel2010版本来讲述Excel打印区域和页面设置。首先,单击“页面布局”——“页面设置”,打开页面设置对话框。
第一,excel打印区域,显示自定义页码
打印的表格不需要从第三页开始,就是第一页显示第三页,可以这样设置。
在页面选项卡设置起始页面。选择页面设置“页面”对话框的“起始页码”直接录入文件的起始页码的数字。
第二,excel打印区域之Excel页面设置的页眉/页脚:添加自定义设置页码。
页面设置的页眉/页脚选项卡可以设置这样的形式:第几页,共?页。
比如实际页码是20页,显示为24页,如果实际页码和显示页码不同,可以先设置起始页码,然后再加上需要显示的页码。
在预览第几页是正确的,但是共几页就没有加上前面已有的页数。可以继续点击“设置”----页眉/页脚---点击“自定义页脚”-----在页脚的编辑框里面加入多出的页数“第&[页码]页,共&[总页数]+4页”,确定。这个时候excel会正确的显示对应所有的(包含加上的)页数。如下图所示:
“自定义页脚”可以放在纸的左、中、右的位置。
页眉的设置和页脚基本相似,在页面设置----页眉/页脚----自定义页眉----可以在页眉中加入自己想要的,比如加入一个logo标签,点图片的标签,选中图片,然后确定。预览的时候就可以看见自己刚刚加入的一个图片【logo图片】。打印的时候在每一页都会有这个图片。
第三,excel打印区域的附加选项
页面设置-----工作表选项卡,可以设置下面内容。
网格线:工作表选项卡中的“网格线”打上钩,工作表中的网格线可以被打印出来。
行号和列标:当数据比较多,需要核对数据,可以勾选“行号和列标”把行号和列标打印出来更加方便清晰的查阅内容。
错误单元格打印:当“错误单元格打印为”的选项为“显示值”的时候打印出来的表格显示错误值将被打印出来,当“错误单元格打印为”显示为“<空白>”,打印的时候有错误的地方显示为空白
不会被打印出来。
一句话总结:当我们表格中出现错误值时可将其设置为空白达到美化Excel工作表的效果。第四,excel打印区域之打印表头
如果要打印出一个Excel工作表,而这张表格有多页,如何让第一页以后的每一页都自动加上与第一页相同的表头呢?
方法是:单击“文件”菜单下的“页面设置”命令,弹出“页面设置”对话框;单击“工作表”选项卡,在“打印标题”下“顶端标题行”右边文本框中单击鼠标左键,出现闪烁光标后,在Excel表用鼠标左键选择表头所在行,最后选择“确定”即可。这样,Excel就会自动为第一页后面的表格加上统一表头了。
第五,excel打印区域之颜色和页面设置
如果工作表单元格是彩色的,但需要单色打印,可以勾选:不打印填充色。
根据需要调整打印内容的方向,缩放比例,纸张大小。
页边距:可以调整Excel打印区域与页边的距离,包括居中方式。
打印区域可以根据需要选择打印,比如仅打印Excel选择区域等。
excel金额大写的三种方法和金额大小演示
excel金额大写,对于做行政出纳的,会随时用到。下面整理一些excel金额大写的常见应用情景:
比如,下图所示的,A列是一些小写数字,BCD列是已经完成的不同的excel金额大写效果。下面逐一介绍。
excel金额大写样式一:
B2单元格输入公式:=SUBSTITUTE(SUBSTITUTE(TEXT(TRUNC(FIXED(A2)),"[dbnum 2]G/通用格式元;负[dbnum2]G/通用格式元;"&IF(A2>-0.5%,,"负"))&TEXT(RIGHT(FIXED(A2), 2),"[dbnum2]0角0分;;"&IF(ABS(A2)>1%,"整",)),"零角",IF(ABS(A2)<1,,"零")),"零分","整"),下拉复制。
提示:当整数部分没有时,不显示。比如0.15,显示壹角伍分。
excel金额大写样式二:
C2单元格输入公式:=IF(A2=0,"零元整",IF(A2<0,"负",)&IF(INT(ABS(A2)),TEXT(INT(ABS (A2)),"[dbnum2]")&"元",)&IF(INT(ABS(A2)*10)-INT(ABS(A2))*10,TEXT(INT(ABS(A2)*10)-INT (ABS(A2))*10,"[dbnum2]")&"角",IF(INT(ABS(A2))=ABS(A2),,"零"))&IF(ROUND(ABS(A2)*100 -INT(ABS(A2)*10)*10,),TEXT(ROUND(ABS(A2)*100-INT(ABS(A2)*10)*10,),"[dbnum2]")&"分","整")),下拉。
提示:当整数部分为0时,显示零元整。
excel金额大写样式三:
D2单元格输入公式:=CONCATENATE(TEXT(INT(A2),"[DBNum2][$-804]G/通用格式")& "元"&IF((INT(A2*10)-INT(A2)*10)=0,"",TEXT(IF(AND(CEILING(A2*100,1)-INT(A2*10)*10=10, INT(A2*1000)-INT(A2*100)*10>=5),INT(A2*10)-INT(A2)*10+1,INT(A2*10)-INT(A2)*10),"[DB Num2][$-804]G/通用格式")&"角")&IF(OR(INT(A2*100)-INT(A2*10)*10=0,(IF(INT(A2*1000)-IN T(A2*100)*10>=5,CEILING(A2*100,1)-INT(A2*10)*10=10,FALSE))),"整",(IF(INT(A2*1000)-IN T(A2*100)*10>=5,(IF(CEILING(A2*100,1)-INT(A2*10)*10=10,"",(TEXT(CEILING(A2*100,1)-I NT(A2*10)*10,"[DBNum2][$-804]G/通用格式")&"分"))),(TEXT(INT(A2*100)-INT(A2*10)*10," [DBNum2][$-804]G/通用格式")&"分")))),"(¥",FIXED(A2,2,TRUE),"元)"),下拉。
提示:这样将大小写,包括金额符号都一并添加进去了。
excel金额大写相关文章阅读:
excel 人民币符号填写和提取数字:https://www.doczj.com/doc/11496958.html,/show.asp?id=948
excel小写变大写技巧https://www.doczj.com/doc/11496958.html,/show.asp?id=1284
excel如何取整数和取小数的做法
excel如何取整数和取小数,在做一些明细表时会用到。以下图为例,将A列数据分别取整数和取小数。
第一,excel 取小数的方法
C2单元格公式为:=MOD(A2,1),或者=A2-INT(A2)。
第一个excel取小数的公式用到了MOD函数。这个函数的功能是返回两数相除的余数。E xcel取小数,正是利用了MOD求余数的功能换算过来的,A2的值为734.66,那么=MOD(A2, 1),就是734.66除以1之后剩下的余数。
第二,excel如何取整数
excel如何取整数相关的函数round、roundup、INT函数、FLOOR函数和ROUNDDOW N函数等。Excel取整数在实际应用中又有向上取整、向下取整和四舍五入取整。
excel daverage函数应用实例(三):使用通配符我们在以前的文章中讲过dsum函数求和时,可以使用通配符。其实在daverage函数中仍然可以使用通配符来设置函数参数。
实例:统计所有产品中含“炉”的平均利润。详见下图。
操作如下:
第一,首先设置条件:在B11:B12单元格区域中,使用通配符,即产品中包含“炉”的产品。
第二,选中C12单元格,在编辑栏输入公式:=DAVERAGE(A2:E9,5,B11:B12)
按下回车键确定,即可统计出产品名称中含有“炉”字的产品的平均利润。
excel中indirect函数使用方法和应用实例
excel中indirect函数,根据帮助,可以知道是返回并显示指定引用的内容。使用INDIRECT 函数可引用其他工作簿的名称、工作表名称和单元格引用。
第一,indirect函数对单元格引用的两种方式。
看下图,使用indirect函数在C2、C3引用A1单元格的内容。
1、=INDIRECT("A1"),结果为C3。这种使用,简单的讲,就是将这些引用地址套上双引号,然后再传递给INDIRECT函数。
2、=INDIRECT(C1),结果为C2。解释:因为C1的值就是"A1",在公式编辑栏,选中“C 1”,然后按下F9键,计算值,可以看到变为“"A1"”,本质没变,都是对单元格引用。
上面两者的区别在于:前者是A1单元格内文本的引用,后者是引用的C1单元格内的地址引用的单元格的内容。
第二,indirect函数工作表名称的引用。
如下图所示:
如果需要在“二班”工作表,计算“一班”工作表B2:B11的成绩总和。可以使用这样的公式:=SUM(INDIRECT("一班!B2:B11"))。解释:indirect(“工作表名!单元格区域”)另外一种情况:当工作表名称直接是数字的,在工作表名称两边必须添加上一对单引号。
AVERAGE函数 主要功能:求出所有参数的算术平均值。 使用格式:AVERAGE(number1,number2,……) 参数说明:number1,number2,……:需要求平均值的数值或引用单元格(区域),参数不超过30个。 应用举例:在B8单元格中输入公式:=AVERAGE(B7:D7,F7:H7,7,8),确认后,即可求出B7至D7区域、F7至H7区域中的数值和7、8的平均值。 特别提醒:如果引用区域中包含“0”值单元格,则计算在内;如果引用区域中包含空白或字符单元格,则不计算在内。 COUNTIF函数 主要功能:统计某个单元格区域中符合指定条件的单元格数目。 使用格式:COUNTIF(Range,Criteria) 参数说明:Range代表要统计的单元格区域;Criteria表示指定的条件表达式。 应用举例:在C17单元格中输入公式:=COUNTIF(B1:B13,">=80"),确认后,即可统计出B1至B13单元格区域中,数值大于等于80的单元格数目。 特别提醒:允许引用的单元格区域中有空白单元格出现 DATEDIF函数 主要功能:计算返回两个日期参数的差值。 使用格式:=DATEDIF(date1,date2,"y")、=DATEDIF(date1,date2,"m")、=DATEDIF(date1,date2,"d") 参数说明:date1代表前面一个日期,date2代表后面一个日期;y(m、d)要求返回两个日期相差的年(月、天)数。
应用举例:在C23单元格中输入公式:=DATEDIF(A23,TODAY(),"y"),确认后返回系统当前日期[用TODAY()表示)与A23单元格中日期的差值,并返回相差的年数。 特别提醒:这是Excel中的一个隐藏函数,在函数向导中是找不到的,可以直接输入使用,对于计算年龄、工龄等非常有效。 IF函数 主要功能:根据对指定条件的逻辑判断的真假结果,返回相对应的内容。 使用格式:=IF(Logical,Value_if_true,Value_if_false) 参数说明:Logical代表逻辑判断表达式;Value_if_true表示当判断条件为逻辑“真(TRUE)”时的显示内容,如果忽略返回“TRUE”;Value_if_false表示当判断条件为逻辑“假(FALSE)”时的显示内容,如果忽略返回“FALSE”。 应用举例:在C29单元格中输入公式:=IF(C26>=18,"符合要求","不符合要求"),确信以后,如果C26单元格中的数值大于或等于18,则C29单元格显示“符合要求”字样,反之显示“不符合要求”字样。 特别提醒:本文中类似“在C29单元格中输入公式”中指定的单元格,读者在使用时,并不需要受其约束,此处只是配合本文所附的实例需要而给出的相应单元格,具体请大家参考所附的实例文件。 INDEX函数 主要功能:返回列表或数组中的元素值,此元素由行序号和列序号的索引值进行确定。 使用格式:INDEX(array,row_num,column_num) 参数说明:Array代表单元格区域或数组常量;Row_num表示指定的行序号
Excel中常用函数应用举例 1.求和函数SUM 求和 SUM(number1,number2,...)。 使用求和函数SUM,操作步骤如下: (1)打开“员工业绩表”工作簿,选择D10单元格,如图所示。 (2)单击“插入函数”按钮,在弹出的“插入函数”对话框中选择SUM函数,单击“确定”按钮,如图所示。
(3)在打开的“函数参数”对话框中,“Number1”文本框中默认引用D3:D9单元格区域,单击“确定”按钮,如图所示。 (4)求出的和值即可显示在D10单元格中,如图所示。
2.平均值函数A VERAGE 平均值函数的原理是将所选单元格区域中的数据相加,然后除以单元格个数,返回作为结果的算术平均值,其语法结构为:A VERAGE(number1,number2,...)。 使用平均值函数A VERAGE,操作步骤如下: (1)打开“员工业绩表”工作簿,选择D11单元格,如图所示。
(2)单击“插入函数”按钮,在弹出的“插入函数”对话框中选择A VERAGE函数,单击“确定”按钮,如图所示。 (3)在打开的“函数参数”对话框中,在“Number1”文本框中输入D3:D9,设定计算平均值的单元格区域,单击“确定”按钮,如图所示。
(4)求出的平均值即显示在D11单元格中,如图所示。 3.条件函数IF 条件函数可以实现真假值的判断,它根据逻辑计算的真假值返回两种结果。该函数的语法结构为:IF(logical_test,value_if_true,value_if_false)。其中,logical_test表示计算结果为true或false的任意值或表达式;value_if_true表示当logical_test为true时返回的值;value_if_false表示当logical_test为false时返回的值。
谈谈Excel SUMIF函数用法多条件求和 SUMIF,根据指定条件对若干单元格求和。其函数原型: SUMIF(range,criteria,sum_range),参数: range 为用于条件判断的单元格区域 criteria 为确定哪些单元格将被相加的条件,其形式可以为数字、表达式或文本。例如,条件可以表示为32、”32″、”>32″或”surda” sum_range求和的实际单元格区域 我们知道,SUMIF函数是一个很常用且有用的条件求和函数,但估计大家常用只 是单条件求和. 我们通过例子来看SUMIF函数的用法.(文末附实例下载) (表名=sumif1) 单列条件区域求和 公式一=SUMIF(A2:A9,”t*”,C2:C9) = 1200 公式二=SUMIF(A1:A9,”t*”,C2:C9) = 1100 公式为计算域名t开头的google访问量,为什么两公式结果不一样?
特别说明:求和区域与条件区域错开1行,则参与求和单元格与原单平行单元格错开1行,再求和(SUMIF会自动偏移) 公式三=SUMIF(A2:A9,”t*”,C2) = 1200 特别说明:SUMIF第三参数可略写为求和区域的第1单元格 多列条件区域求和 我们同样计算域名t开头的google访问量,条件区域为A2:F9 公式四=SUMIF(A1:F9,”T*”,C1) = 2400 公式五=SUMIF(A1:F9,”T*”,C1:F9) = 2400 公式六=SUMIF(A1:F9,”T*”,C2) = 2200 //再次偏移1行 特别说明:SUMIF函数条件区域可以跨不同字段,第一参数(range)在同列并与第三参数(sum_range)水平距离保持一致。域名字段分别在A\D,google字段分别在C\F,A->C的距离等于D->F的距离。 以上两例公式同样可以用SUM函数(数组公式)代替: =SUMIF(A2:A9,”t*”,C2:C9)可替代为=SUM((LEFT(A2:A9)=”t”)*C2:C9) 数组公式 =SUMIF(A1:F9,”T*”,C1:F9)可替代为 =SUM((LEFT(A2:A9)=”t”)*(C2:C9),(LEFT(D2:D9)=”t”)*(F2:F9)) 跨表条件求和SUM+SUMIF+INDIRET 表sumif2有如上图一样的数据区域,现在对两表A2:A9 开头为”t”的google访问量求和。答案为600*4=2400 看公式:(数组公式CTRL+SHIFT+ENTER) =SUM(SUMIF(INDIRECT(“sumif”&{1,2}&”!A2:A9″),”t*”,INDIRECT(“sumif”&{1,2 }&”!C2:C9″)))
目录 一、IF函数——————————————————————————————————2 二、ASC函数—————————————————————————————————4 三、SEARCH函数——————————————————————————————4 四、CONCATENATE函数———————————————————————————4 五、EXACT函数———————————————————————————————5 六、find函数—————————————————————————————————5 七、PROPER函数——————————————————————————————7 八、LEFT函数————————————————————————————————7 九、LOWER函数———————————————————————————————7 十、MID函数————————————————————————————————8 十一、REPT函数———————————————————————————————8 十二、Replace函数——————————————————————————————9 十三、Right函数———————————————————————————————10 十四、UPPER函数——————————————————————————————10 十五、SUBSTITUTE函数———————————————————————————10 十六、VALUE函数——————————————————————————————12 十七、WIDECHAR函数———————————————————————————12 十八、AND函数———————————————————————————————12 十九、NOT函数———————————————————————————————13 二十、OR函数————————————————————————————————13 二十一、COUNT函数—————————————————————————————14 二十二、MAX函数——————————————————————————————15 二十三、MIN函数——————————————————————————————15 二十四、SUMIF函数—————————————————————————————16 二十五、OFFSET函数————————————————————————————17 二十六、ROW函数——————————————————————————————20 二十七、INDEX 函数————————————————————————————21 二十八、LARGE函数—————————————————————————————22 二十九、ADDRESS函数————————————————————————————23 三十、Choose函数——————————————————————————————24 三十一、HLOOKUP函数———————————————————————————24 三十二、VLOOKUP函数———————————————————————————26 三十三、LOOKUP函数————————————————————————————29 三十四、MATCH函数————————————————————————————29 三十五、HYPERLINK函数——————————————————————————30 三十六、ROUND函数————————————————————————————31 三十七、TREND函数—————————————————————————————32
excel中sumif函数的用法 在excel中sumif函数是一个非常有用的函数,它可以按条件进行求和。具体的用法搜集了本站几个有关sumif用法的贴子,共大家学习和共享。 1 SUMIF函数的一个怪异用途(excel) Excel表格中的SUMIF函数在条件求和时经常使用,我们一般习惯于于根据某一列计算另一列的数字之和。 例1:假设置A列是部门,B列是,C列是工资,可以用下面的公式算出所有财务部员工的工资总和: =SUM(A1:A100,"财务部",C1:C100) 我们今天说的不是这个正规用法,而是给大家介绍一种看上去和SUMIF毫无一毛钱关系的例子。 例2 如下图中,是一些不规则的数据,我们只关注填充颜色的区域,现在我们要计算所有A下面数字之和,看上去这个题没有好的思路,其实这个题恰好可以用SUMIF函数轻松解决。 =SUMIF(B2:E7,B12,B3:E8) 我们分析一下这个公式,第二个参数是条件我们可以了解,第一个参数和第二个参数有什么关系呢?大家仔细看会发现第三个参数正好是第一个参数的区域向下偏移一个单位。 总结,SUMIF函数并不是只对规则区域求和,还可以对不规则的排列进行条件求和 SUMIF入门篇
SUMIF作为Excel2003中一个条件求和函数,在实际工作中发挥着强大的作用,虽然在2007以后被SUMIFS所取代,但它依旧是一个EXCEL函数的经典。特别是高级用法,依旧适用于后面的版本。本文由兰色幻想原创,时请注明转自“Excel精英培训”。 SUM是求和,IF是如果。如果什么。。就求和,其实就是按条件求和。它的结构如下:SUMIF(条件判断区域,条件,求和区域) 说明: 1条件判断区域。即然是条件求和,一是要有条件,二是要有判断的区域,SUMIF的第二个参数就是求和的条件,第一个参数呢就是拿条件来这个区域进行对比的区域。第一个参数必须是单元格引用。 2、条件。按条件求和就得有条件,该条件可以是字符串("ABC",可以用大于等对比符号连接起来的条件表达式(">100"),也可以使用通配符来表示匹配求和("AB*C")。 3、求和区域。求和函数可以没有求和的区域算什么求和函数,该参数为单元格区域引用。如C2:C100。 4、如果求和区域和判断区域是一个区域该怎么办呢?如在C2:C100中计算大于100的数字之和。在这种情况下SUMIF函数由三个参数变换为两个参数。即: SUMIF(求和区域,条件) 例1;如下图所示。要求根据左表中的商家明细表,生成右侧的汇总表,汇总出商家的总进货量和总金额。 公式: =SUMIF($A$2:$A$8,$F3,C$2:C$8)
#pragma code_seg 格式如: #pragma code_seg( [ [ { push | pop}, ] [ identifier, ] ] [ "segment-name" [, "segment-class" ] ) 该指令用来指定函数在.obj文件中存放的节,观察OBJ文件可以使用VC自带的dumpbin命令行程序,函数在.obj文件中默认的存放节为.text节,如果code_seg 没有带参数的话,则函数存放在.text节中。 push (可选参数)将一个记录放到内部编译器的堆栈中,可选参数可以为一个标识符或者节名 pop(可选参数)将一个记录从堆栈顶端弹出,该记录可以为一个标识符或者节名identifier(可选参数)当使用push指令时,为压入堆栈的记录指派的一个标识符,当该标识符被删除的时候和其相关的堆栈中的记录将被弹出堆栈 "segment-name" (可选参数)表示函数存放的节名 例如: //默认情况下,函数被存放在.text节中 void func1() {// stored in .text } //将函数存放在.my_data1节中 #pragma code_seg(".my_data1") void func2() {// stored in my_data1 } //r1为标识符,将函数放入.my_data2节中 #pragma code_seg(push, r1, ".my_data2") void func3() {// stored in my_data2 } int main() { } 例如 #pragma code_seg(“PAGE”) 作用是将此部分代码放入分页内存中运行。 #pragma code_seg() 将代码段设置为默认的代码段 #pragma code_seg("INIT") 加载到INIT内存区域中,成功加载后,可以退出内存
excel常用函数及使用方法 一、数字处理 (一)取绝对值:=ABS(数字) (二)数字取整:=INT(数字) (三)数字四舍五入:=ROUND(数字,小数位数) 二、判断公式 (一)把公式返回的错误值显示为空: 1、公式:C2=IFERROR(A2/B2,"") 2、说明:如果是错误值则显示为空,否则正常显示。 (二)IF的多条件判断 1、公式:C2=IF(AND(A2<500,B2="未到期"),"补款","") 2、说明:两个条件同时成立用AND,任一个成立用OR函数。 三、统计公式 (一)统计两表重复 1、公式:B2=COUNTIF(Sheet15!A:A,A2) 2、说明:如果返回值大于0说明在另一个表中存在,0则不存在。 (二)统计年龄在30~40之间的员工个数 公式=FREQUENCY(D2:D8,{40,29} (三)统计不重复的总人数 1、公式:C2=SUMPRODUCT(1/COUNTIF(A2:A8,A2:A8)) 2、说明:用COUNTIF统计出每人的出现次数,用1除的方式把出现次数变成分母,然后相加。
(四)按多条件统计平均值 =AVERAGEIFS(D:D,B:B,"财务",C:C,"大专") (五)中国式排名公式 =SUMPRODUCT(($D$4:$D$9>=D4)*(1/COUNTIF(D$4:D$9,D$4:D$9))) 四、求和公式 (一)隔列求和 1、公式:H3=SUMIF($A$2:$G$2,H$2,A3:G3) 或=SUMPRODUCT((MOD(COLUMN(B3:G3),2)=0)*B3:G3) 2、说明:如果标题行没有规则用第2个公式 (二)单条件求和 1、公式:F2=SUMIF(A:A,E2,C:C) 2、说明:SUMIF函数的基本用法 (三)单条件模糊求和 说明:如果需要进行模糊求和,就需要掌握通配符的使用,其中星号是表示任意多个字符,如"*A*"就表示a前和后有任意多个字符,即包含A。 (四)多条求模糊求和 1、公式:=SUMIFS(C2:C7,A2:A7,A11&"*",B2:B7,B11) 2、说明:在sumifs中可以使用通配符* (五)多表相同位置求和 1、公式:=SUM(Sheet1:Sheet19!B2) 2、说明:在表中间删除或添加表后,公式结果会自动更新。
数学和三角函数 ABS返回数字的绝对值 ACOS返回数字的反余弦值 ACOSH返回数字的反双曲余弦值 ASIN返回数字的反正弦值 ASINH返回数字的反双曲正弦值 ATAN返回数字的反正切值 ATAN2从 X 和 Y 坐标返回反正切 ATANH返回数字的反双曲正切值 CEILING将数字舍入为最接近的整数,或最接近的有效数字的倍数COMBIN返回给定数目对象的组合数 COS返回数字的余弦值 COSH返回数字的双曲余弦值 DEGREES将弧度转换为度 EVEN将数字向上舍入为最接近的偶型整数 EXP返回 e 的指定数乘幂 FACT返回数字的阶乘 FACTDOUBLE返回数字的双阶乘 FLOOR将数字朝着零的方向向下舍入 GCD返回最大公约数
INT将数字向下舍入为最接近的整数 LCM返回最小公倍数 LN返回数字的自然对数 LOG返回数字的指定底数的对数 LOG10返回数字的常用对数 MDETERM返回数组的矩阵行列式 MINVERSE返回数组的逆矩阵 MMULT返回两数组的矩阵乘积 MOD返回两数相除的余数 MROUND返回按指定倍数舍入后的数字MULTINOMIAL返回一组数字的多项式 ODD将数字向上舍入为最接近的奇型整数 PI返回 Pi 值 POWER返回数的乘幂结果 PRODUCT将所有以参数形式给出的数字相乘QUOTIENT返回商的整数部分 RADIANS将度转换为弧度 RAND返回 0 到 1 之间的随机数RANDBETWEEN返回指定数字之间的随机数ROMAN将阿拉伯数字转换为文本形式的罗马数字
ROUND将数字舍入到指定位数 ROUNDDOWN将数字朝零的方向舍入 ROUNDUP将数朝远离零的方向舍入SERIESSUM返回基于公式的幂级数的和 SIGN返回数字的符号 SIN返回给定角度的正弦值 SINH返回数字的双曲正弦值 SQRT返回正平方根 SQRTPI返回某数与 Pi 的乘积的平方根SUBTOTAL返回数据库列表或数据库中的分类汇总SUM将参数求和 SUMIF按给定条件将指定单元格求和SUMPRODUCT返回相对应的数组部分的乘积和SUMSQ返回参数的平方和 SUMX2MY2返回两个数组中相对应值的平方差之和SUMX2PY2返回两个数组中相对应值的平方和之和SUMXMY2返回两个数组中相对应值差的平方之和TAN返回数字的正切值 TANH返回数字的双曲正切值 TRUNC将数字截尾取整
1、ABS函数 函数名称:ABS 主要功能:求出相应数字的绝对值。 使用格式:ABS(number) 参数说明:number代表需要求绝对值的数值或引用的单元格。 应用举例:如果在B2单元格中输入公式:=ABS(A2),则在A2单元格中无论输入正数(如100)还是负数(如-100),B2中均显示出正数(如100)。 特别提醒:如果number参数不是数值,而是一些字符(如A等),则B2中返回错误值“#VALUE!”。 2、AND函数 函数名称:AND 主要功能:返回逻辑值:如果所有参数值均为逻辑“真(TRUE)”,则返回逻辑“真(TRUE)”,反之返回逻辑“假(FALSE)”。 使用格式:AND(logical1,logical2, ...) 参数说明:Logical1,Logical2,Logical3……:表示待测试的条件值或表达式,最多这30个。 应用举例:在C5单元格输入公式:=AND(A5>=60,B5>=60),确认。如果C5中返回TRUE,说明A5和B5中的数值均大于等于60,如果返回FALSE,说明A5和B5中的数值至少有一个小于60。 特别提醒:如果指定的逻辑条件参数中包含非逻辑值时,则函数返回错误值“#VALUE!”或“#NAME”。 3、AVERAGE函数 函数名称:AVERAGE 主要功能:求出所有参数的算术平均值。 使用格式:AVERAGE(number1,number2,……) 参数说明:number1,number2,……:需要求平均值的数值或引用单元格(区域),参数不超过30个。
应用举例:在B8单元格中输入公式:=AVERAGE(B7:D7,F7:H7,7,8),确认后,即可求出B7至D7区域、F7至H7区域中的数值和7、8的平均值。 特别提醒:如果引用区域中包含“0”值单元格,则计算在内;如果引用区域中包含空白或字符单元格,则不计算在内。 4、COLUMN 函数 函数名称:COLUMN 主要功能:显示所引用单元格的列标号值。 使用格式:COLUMN(reference) 参数说明:reference为引用的单元格。 应用举例:在C11单元格中输入公式:=COLUMN(B11),确认后显示为2(即B列)。 特别提醒:如果在B11单元格中输入公式:=COLUMN(),也显示出2;与之相对应的还有一个返回行标号值的函数——ROW(reference)。 5、CONCATENATE函数 函数名称:CONCATENATE 主要功能:将多个字符文本或单元格中的数据连接在一起,显示在一个单元格中。 使用格式:CONCATENATE(Text1,Text……) 参数说明:Text1、Text2……为需要连接的字符文本或引用的单元格。 应用举例:在C14单元格中输入公式:=CONCATENATE(A14,"@",B14,".com"),确认后,即可将A14单元格中字符、@、B14单元格中的字符和.com连接成一个整体,显示在C14单元格中。 特别提醒:如果参数不是引用的单元格,且为文本格式的,请给参数加上英文状态下的双引号,如果将上述公式改为:=A14&"@"&B14&".com",也能达到相同的目的。 6、COUNTIF函数 函数名称:COUNTIF 主要功能:统计某个单元格区域中符合指定条件的单元格数目。 使用格式:COUNTIF(Range,Criteria) 参数说明:Range代表要统计的单元格区域;Criteria表示指定的条件表达式。
EXCEL的经典函数sumif的用法和实例(详细汇总) excel sumif函数作为Excel2003中一个条件求和函数,在实际工作中发挥着强大的作用,虽然在2007以后被SUMIFS所取代,但它依旧是一个EXCEL函数的经典。本系列将详细介绍excel sumif函数的从入门、初级、进阶到高级使用方法以及SUMIF在隔列求和和模糊求和实现按指定条件求平均值中的应用如下所示: 条件求和函数SUMIF excel sumif函数的用法是根据指定条件对若干单元格、区域或引用求和。 sumif函数语法是: SUMIF(range,criteria,sum_range) sumif函数的参数如下: 第一个参数:Range为条件区域,用于条件判断的单元格区域。 第二个参数:Criteria是求和条件,为确定哪些单元格将被相加求和的条件,其形式可以由数字、逻辑表达式等组成的判定条件。例如,条件可以表示为32、"32"、">32" 或"apples"。 第三个参数:Sum_range 为实际求和区域,需要求和的单元格、区域或引用。 当省略第三个参数时,则条件区域就是实际求和区域。 criteria 参数中使用通配符(包括问号(?) 和星号(*))。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在该字符前键入波形符(~)。说明: 只有在区域中相应的单元格符合条件的情况下,sum_range 中的单元格才求和。 如果忽略了 sum_range,则对区域中的单元格求和。 Microsoft Excel 还提供了其他一些函数,它们可根据条件来分析数据。例如,如果要计算单元格区域内某个文本字符串或数字出现的次数,则可使用COUNTIF 函数。 如果要让公式根据某一条件返回两个数值中的某一值(例如,根据指定销售额返回销售红利),则可使用IF 函数。 实例:及格平均分统计 假如A1:A36单元格存放某班学生的考试成绩,若要计算及格学生的平均分,可以使用公式“=SUMIF(A1:A36,″>=60″,A1:A36)/COUNTIF(A1:A36,″>=60″)。公式中的“=SU MIF(A1:A36,″>=60″,A1:A36)”计算及格学生的总分,式中的“A1:A36”为提供逻辑判断依据的单元格引用,“>=60”为判断条件,不符合条件的数据不参与求和,A1:A36则是逻辑判断和求和的对象。公式中的COUNTIF(A1:A36,″>=60″)用来统计及格学生的人数。 实例:求报表中各栏目的总流量
#pragma预处理命令 #pragma可以说是C++中最复杂的预处理指令了,下面是最常用的几个#pragma 指令: #pragma comment(lib,"XXX.lib") 表示链接XXX.lib这个库,和在工程设置里写上XXX.lib的效果一样。 #pragma comment(linker,"/ENTRY:main_function") 表示指定链接器选项/ENTRY:main_function #pragma once 表示这个文件只被包含一次 #pragma warning(disable:4705) 表示屏蔽警告4705 C和C++程序的每次执行都支持其所在的主机或操作系统所具有的一些独特的特点。例如,有些程序需要精确控制数据存放的内存区域或控制某个函数接收的参数。#pragma为编译器提供了一种在不同机器和操作系统上编译以保持C和C++完全兼容的方法。#pragma是由机器和相关的操作系统定义的,通常对每个编译器来说是不同的。 如果编译器遇到不认识的pragma指令,将给出警告信息,然后继续编译。Microsoft C and C++ 的编译器可识别以下指令:alloc_text,auto_inline,bss_seg,check_stack,code_seg,comment,component,conform,const_seg,data_seg,deprecated,fenv_access,float_control,fp_contract,function,hdrstop,include_alias,init_seg,inline_depth,inline_recursion,intrinsic,make_public,managed,message,omp,once,optimize,pack,pointers_to_members,pop_macro,push_macro,region, endregion,runtime_checks,section,setlocale,strict_gs_check,unmanaged,vtordisp,warning。其中conform,init_seg, pointers_to_members,vtordisp仅被C++编译器支持。 以下是常用的pragma指令的详细解释。 1.#pragma once。保证所在文件只会被包含一次,它是基于磁盘文件的,而#ifndef 则是基于宏的。
EXCEL中常用函数及使用方法 Excel函数一共有11类:数据库函数、日期与时间函数、工程函数、财务函数、信息函数、逻辑函数、查询和引用函数、数学和三角函数、统计函数、文本函数以及用户自定义函数。 1.数据库函数 当需要分析数据清单中的数值是否符合特定条件时,可以使用数据库工作表函数。例如,在一个包含销售信息的数据清单中,可以计算出所有销售数值大于1,000 且小于2,500 的行或记录的总数。Microsoft Excel 共有12 个工作表函数用于对存储在数据清单或数据库中的数据进行分析,这些函数的统一名称为Dfunctions,也称为D 函数,每个函数均有三个相同的参数:database、field 和criteria。这些参数指向数据库函数所使用的工作表区域。其中参数database 为工作表上包含数据清单的区域。参数field 为需要汇总的列的标志。参数criteria 为工作表上包含指定条件的区域。 2.日期与时间函数 通过日期与时间函数,可以在公式中分析和处理日期值和时间值。 3.工程函数 工程工作表函数用于工程分析。这类函数中的大多数可分为三种类型:对复数进行处理的函数、在不同的数字系统(如十进制系统、十六进制系统、八进制系统和二进制系统)间进行数值转换的函数、在不同的度量系统中进行数值转换的函数。 4.财务函数 财务函数可以进行一般的财务计算,如确定贷款的支付额、投资的未来值或净现值,以及债券或息票的价值。财务函数中常见的参数: 未来值(fv)--在所有付款发生后的投资或贷款的价值。 期间数(nper)--投资的总支付期间数。 付款(pmt)--对于一项投资或贷款的定期支付数额。 现值(pv)--在投资期初的投资或贷款的价值。例如,贷款的现值为所借入的本金数额。 利率(rate)--投资或贷款的利率或贴现率。 类型(type)--付款期间内进行支付的间隔,如在月初或月末。 5.信息函数 可以使用信息工作表函数确定存储在单元格中的数据的类型。信息函数包含一组称为IS 的工作表函数,在单元格满足条件时返回TRUE。例如,如果单元格包含一个偶数值,ISEVEN 工作表函数返回TRUE。如果需要确定某个单元格区域中是否存在空白单元格,可以使用COUNTBLANK 工作表函数对单元格区域中的空白单元格进行计数,或者使用ISBLANK 工作表函数确定区域中的某个单元格是否为空。 6.逻辑函数 使用逻辑函数可以进行真假值判断,或者进行复合检验。例如,可以使用IF 函数确定条件为真还是假,并由此返回不同的数值。
#pragma data:code 在Keil中为了节省数据存储器的空间,通过“code”关键字来定义一个数组或字符串将被存储在程序存储器中: uchar code buffer[]={0,1,2,3,4,5}; uchar code string[]="Armoric" ; 而这类代码移值到ICCAVR上时是不能编译通过的。我们可以通过"const" 限定词来实现对存储器的分配: #pragma data:code const unsigned char buffer[]={0,1,2,3,4,5}; const unsigned char string[]="Armoric"; #pragma data:data 注意: 《1》使用ICCAVR6.31时,#pragma data :code ;#pragma data:data ; 这些语法时在"data:cod"、"data:data"字符串中间不能加空格,否则编译不能通过。 《2》const 在ICCAVR是一个扩展关键词,它与ANSIC标准有冲突,移值到其它的编译器使用时也需要修改相关的地方。 在ICCAVR中对数组和字符串的五种不同空间分配: const unsigned char buffer[]={0,1,2,3,4,5}; //buffer数组被分配在程序存储区中 const unsigned char string[]="Armoric" ; //stringp字符串被分配在程序存储区中 const unsigned char *pt //指针变量pt被分配在数据存储区中,指向程序存储区中的字符类型数据 unsigned char *const pt //指针变量pt被分配在程序存储区中,指向数据存储区中的字符类型数据 const unsigned char *const pt //指针变量pt被分配在程序存储区,指向程序存储区中的字符类型数据 unsigned char *pt //指针变量pt被分配在数据存储区中,指向数据存储区中的数据 请问#pragma data:code和#pragma data:data是什么意思? 前者表示:随后的数据将存贮在程序区,即FLASH区,此区只能存贮常量,比如表格之类。
WPS表格常用函数应用教程 一、函数应用基础 (一)函数和公式 1.什么是函数 WPS表格函数即是预先定义,执行计算、分析等处理数据任务的特殊公式。以常用的求和函数SUM为例,它的语法是“SUM(数值1, 数值2,......)”。其中“SUM”称为函数名称,一个函数只有唯一的一个名称,它决定了函数的功能和用途。函数名称后紧跟左括号,接着是用逗号分隔的称为参数的内容,最后用一个右括号表示函数结束。参数是函数中最复杂的组成部分,它规定了函数的运算对象、顺序或结构等。使得用户可以对某个单元格或区域进行处理,如确定成绩名次、计算三角函数值等。 2.什么是公式 函数与公式既有区别又互相联系。如果说前者是WPS 表格预先定义好的特殊公式,后者就是由用户自行设计对工作表进行计算和处理的公式。以公式“=SUM(E1:H1)*A1+26”为例,它要以等号“=”开始,其内部可以包括函数、引用、运算符和常量。上式中的“SUM(E1:H1)”是函数,“A1”则是对单元格A1 的引用(使用其中存储的数据),“26”则是常量,“*”和
“+”则是算术运算符(另外还有比较运算符、文本运算符和引用运算符)。如果函数要以公式的形式出现,它必须有两个组成部分,一个是函数名称前面的等号,另一个则是函数本身。 (二)函数的参数 函数右边括号中的部分称为参数,假如一个函数可以使用多个参数,那么参数与参数之间使用半角逗号进行分隔。参数可以是常量(数字和文本)、逻辑值(例如真值或假值)、数组、错误值(例如#N/A)或单元格引用(例如E1:H1),甚至可以是另一个或几个函数等。参数的类型和位置必须满足函数语法的要求,否则将返回错误信息。 1.常量 常量是直接输入到单元格或公式中的数字或文本,或由名称所代表的数字或文本值,例如数字“2890.56”、日期“2003-8-19”和文本“黎明”都是常量。但是公式或由公式计算出的结果都不是常量,因为只要公式的参数发生了变化,它自身或计算出来的结果就会发生变化。 2.逻辑值 逻辑值是比较特殊的一类参数,它只有真或假两种类型。例如在公式“=IF(A3=0,"",A2/A3)”中,“A3=0”就是一个可以返回真或假两种结果的参数。当“A3=0”为真时在公式所在单元格中填入“0”,否则在单元格中填入“A2/A3”的计算结果。
#pragma的用法 在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义, 编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 其格式一般为: #pragma para。其中para为参数,下面来看一些常用的参数。 1)message 参数 message参数是我最喜欢的一个参数,它能够在编译信息输出窗口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为: #pragma message("消息文本") 当编译器遇到这条指令时就在编译输出窗口中将消息文本打印出来。 当我们在程序中定义了许多宏来控制源代码版本的时候,我们自己有可能都会忘记有 没有正确的设置这些宏, 此时我们可以用这条指令在编译的时候就进行检查。假设我们希望判断自己有没有在源代码的什么地方定义了_X86这个宏, 可以用下面的方法: #ifdef _X86 #pragma message("_X86 macro activated!") #endif 我们定义了_X86这个宏以后,应用程序在编译时就会在编译输出窗口里显示"_86 macro activated!"。 我们就不会因为不记得自己定义的一些特定的宏而抓耳挠腮了。 (2)另一个使用得比较多的pragma参数是code_seg 格式如: #pragma code_seg( ["section-name" [, "section-class"] ] ) 它能够设置程序中函数代码存放的代码段,当我们开发驱动程序的时候就会使用到 它。 (3)#pragma once (比较常用) 只要在头文件的最开始加入这条指令就能够保证头文件被编译一次,这条指令实际上 在VC6中就已经有了, 但是考虑到兼容性并没有太多的使用它。 (4)#pragma hdrstop 表示预编译头文件到此为止,后面的头文件不进行预编译。BCB可以预编译头文件以 加快链接的速度, 但如果所有头文件都进行预编译又可能占太多磁盘空间,所以使用这个选项排除一些头文
【优质文档】sumif函数的使用方法word版本 本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除! == 本文为word格式,下载后可方便编辑和修改! == sumif函数的使用方法 sumif函数的使用方法 使用SUMIF函数可以对区域(区域:工作表上的两个或多个单元格。区域中的单元格可以相邻或不相邻。)中符合指定条件的值求和。例如,假设在含有数字 的某一列中,需要让大于5的数值相加,请使用以下公式: =SUMIF(B2:B25,">5") 在本例中,应用条件的值即要求和的值。如果需要,可以将条件应用于某个单 元格区域,但却对另一个单元格区域中的对应值求和。例如,使用公式 =SUMIF(B2:B5,"俊元",C2:C5)时,该函数仅对单元格区域C2:C5中与单元格区 域B2:B5中等于“俊元”的单元格对应的单元格中的值求和。 注释若要根据多个条件对若干单元格求和,请参阅SUMIFS函数。语法 SUMIF(range,criteria,[sum_range]) SUMIF函数语法具有以下参数(参数:为操作、事件、方法、属性、函数或过程 提供信息的值。):range必需。用于条件计算的单元格区域。每个区域中的 单元格都必须是数字或名称、数组或包含数字的引用。空值和文本值将被忽略。criteria必需。用于确定对哪些单元格求和的条件,其形式可以为数字、表达式、单元格引用、文本或函数。例如,条件可以表示为32、">32"、B5、32、"32"、"苹果"或TODAY()。 要点任何文本条件或任何含有逻辑或数学符号的条件都必须使用双引号(")括起来。如果条件为数字,则无需使用双引号。sum_range可眩要求和的实际单元 格(如果要对未在range参数中指定的单元格求和)。如果sum_range参数被 省略,Excel会对在range参数中指定的单元格(即应用条件的单元格)求和。 注释sum_range参数与range参数的大小和形状可以不同。求和的实际单元格 通过以下方法确定:使用sum_range参数中左上角的单元格作为起始单元格, 然后包括与range参数大小和形状相对应的单元格。例如:如果区域是并且 sum_range是则需要求和的实际单元格是 A1:A5B1:B5B1:B5A1:A5B1:B3B1:B5A1:B4C1:D4C1:D4A1:B4C1:C2C1:D4可以在criteria参数中使用通配符(包括问号(?)和星号(*))。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在该字符前键 入波形符(~)。注解使用SUMIF函数匹配超过255个字符的字符串时,将返回不正确的结果#VALUE!。示例示例1
#pragma pack(4) //按4字节对齐,但实际上由于结构体中单个成员的最大占用字节数为2字节,因此实际还是按2字节对齐 typedef struct { char buf[3];//buf[1]按1字节对齐,buf[2]按1字节对齐,由于buf[3]的下一成员word a是按两字节对齐,因此buf[3]按1字节对齐后,后面只需补一空字节 word a; //#pragma pack(4),取小值为2,按2字节对齐。 }kk; #pragma pack() //取消自定义字节对齐方式 对齐的原则是min(sizeof(word ),4)=2,因此是2字节对齐,而不是我们认为的4字节对齐。 这里有三点很重要: 1.每个成员分别按自己的方式对齐,并能最小化长度 2.复杂类型(如结构)的默认对齐方式是它最长的成员的对齐方式,这样在成员是复杂类型时,可以最小化长度 3.对齐后的结构体整体长度必须是成员中最大的对齐参数的整数倍,这样在处理数组时可以保证每一项都边界对齐 补充一下,对于数组,比如: char a[3];这种,它的对齐方式和分别写3个char是一样的.也就是说它还是按1个字节对齐. 如果写: typedef char Array3[3]; Array3这种类型的对齐方式还是按1个字节对齐,而不是按它的长度. 不论类型是什么,对齐的边界一定是1,2,4,8,16,32,64....中的一个. 声明: 整理自网络达人们的帖子,部分参照MSDN。 作用: 指定结构体、联合以及类成员的packing alignment; 语法: #pragma pack( [show] | [push | pop] [, identifier], n ) 说明: 1,pack提供数据声明级别的控制,对定义不起作用; 2,调用pack时不指定参数,n将被设成默认值; 3,一旦改变数据类型的alignment,直接效果就是占用memory的减少,但是performance会下降; 语法具体分析: 1,show:可选参数;显示当前packing aligment的字节数,以warning message的形式被显示; 2,push:可选参数;将当前指定的packing alignment数值进行压栈操作,这里的栈是the internal compiler stack,同时设置当前的packing alignment为n;如果n没有指定,则将当前的packing alignment数值压栈; 3,pop:可选参数;从internal compiler stack中删除最顶端的record;如果没有指定n,则当前栈顶record即为新的packing alignment 数值;如果指定了n,则n将成为新的packing aligment数值;如果指定了identifier,则internal compiler stack中的record都将被pop 直到identifier被找到,然后pop出identitier,同时设置packing alignment数值为当前栈顶的record;如果指定的identifier并不存在于internal compiler stack,则pop操作被忽略; 4,identifier:可选参数;当同push一起使用时,赋予当前被压入栈中的record一个名称;当同pop一起使用时,从internal compiler stack 中pop出所有的record直到identifier被pop出,如果identifier没有被找到,则忽略pop操作; 5,n:可选参数;指定packing的数值,以字节为单位;缺省数值是8,合法的数值分别是1、2、4、8、16。 重要规则: 1,复杂类型中各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个类型的地址相同; 2,每个成员分别对齐,即每个成员按自己的方式对齐,并最小化长度;规则就是每个成员按其类型的对齐参数(通常是这个类型的大小)和指定对齐参数中较小的一个对齐; 3,结构体、联合体或者类的数据成员,第一个放在偏移为0的地方;以后每个数据成员的对齐,按照#pragma pack指定的数值和这个数据成员自身长度两个中比较小的那个进行;也就是说,当#pragma pack指定的值等于或者超过所有数据成员长度的时候,这个指定值的大小将不产生任何效果; 4,复杂类型(如结构体)整体的对齐是按照结构体中长度最大的数据成员和#pragma pack指定值之间较小的那个值进行;这样当数据成员为复杂类型(如结构体)时,可以最小化长度; 5,复杂类型(如结构体)整体长度的计算必须取所用过的所有对齐参数的整数倍,不够补空字节;也就是取所用过的所有对齐参数中最大的那个值的整数倍,因为对齐参数都是2的n次方;这样在处理数组时可以保证每一项都边界对齐; 对齐的算法:由于各个平台和编译器的不同,现以本人使用的gcc version 3.2.2编译器(32位x86平台)为例子,来讨论编译器对struct 数据结构中的各成员如何进行对齐的。 在相同的对齐方式下,结构体内部数据定义的顺序不同,结构体整体占据内存空间也不同,如下: 设结构体如下定义: struct A { int a; //a的自身对齐值为4,偏移地址为0x00~0x03,a的起始地址0x00满足0x00%4=0;