2022年EXCEL公式技巧汇总 .pdf





《2022年EXCEL公式技巧汇总 .pdf》由会员分享,可在线阅读,更多相关《2022年EXCEL公式技巧汇总 .pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.公式技巧1.1 在单元格中显示工作表和工作簿的名称在单元格中显示工作表的名称,有两种要领:(1)建立如下自定义函数:Function bookname()bookname=ActiveSheet.Name End Function 运用时在单元格中输入公式:=bookname(),即可返回当前工作簿的标签名字。(2)自定义名称的要领。定义如下名称:点击 插入名称定义,名称的定义为“T_B”,引用位置输入:“=replace(get.document(1),1,find(,get.document(1),)&t(now()”,在单元格输入“=T_B”就可以显示当前表名。值得留心的是,返回的工
2、作表名称随着工作表名称的变化而变化。在此引用中,GET.DOCUMENT()是宏表函数,当数据变动时不能自动计算,now()是易失性函数,任何变动都会强制计算,宏表函数所以加上now()就可以自动重算了,T()用来将 now()产生的数值转化为空文本。在单元格中显示工作簿的名称,运用系统函数Cell():在单元格中输入公式:=Cell(filename),就会返回该工作簿和工作表的名字(包括绝对路径名),然后根据自己的须要运用一些文本处理函数执行处理即可。留心:该函数必须在工作簿已经保存的情况下才生效。1.2 基本判断单元格最后一位是数字还是字母在有些情况下,须要判断单元格的最后一位是数字还是
3、字母,可以用下面三个公式之一:(2)=IF(ISNUMBER(-RIGHT(A1,1),数字,字母),直接返回数字或字母。其中“-”的意思是将文本型数字转化为数值以便参与运算。(3)=IF(ISERR(RIGHT(A1)*1),字母,数字),直接返回数字或字母。1.3 如何求出一个人到某指定日期的周岁?=DATEDIF(起始日期,结束日期,Y)1.4 判断单元格中存在特定字符假如判断 A栏里能不能存在$字符,有则等于1,没有则等于0,公式为:=IF(COUNTIF(A:A,*$*)0,1,0)。1.5 计算某单元格所在的列数通常情况下,A 列为第 1 列,AA列为 27 列。可以在A1单元格中
4、输入列标,通过下列公式计算出任何列标的列数:=COLUMN(INDIRECT(A1&1)。例如:“FG”列为第163 列。1.6 DATEDIF 函数的作用名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 14 页 -DATEDIF函数计算两个日期之间的天数、月数或年数。提供此函数是为了与 Lotus 1-2-3 兼容。语法:DATEDIF(start_date,end_date,unit)Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。日期有多种输入要领:带引号的文本串(例如2001/1/30)、系列数(例如,如果运用 1900 日期系统则 36921 代
5、表 2001 年 1 月 30 日)或其他公式或函数的结果(例如,DATEVALUE(2001/1/30))。End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。Unit 为所需信息的返回类型。Unit 返回 Y 时间段中的整年数。M时间段中的整月数。D时间段中的天数。MDstart_date 与 end_date 日期中天数的差。忽略日期中的月和年。YMstart_date 与 end_date 日期中月数的差。忽略日期中的日和年。YDstart_date 与 end_date 日期中天数的差。忽略日期中的年。说明:Microsoft Excel 按顺序的系列数保存日期,这
6、样就可以对其执行计算。如果工作簿运用 1900 日期系统,则 Excel 会将 1900 年 1 月 1 日保存为系列数 1。而如果工作簿运用 1904 日期系统,则 Excel 会将 1904 年 1 月 1 日保存为系列数0,(而将 1904 年 1 月 2 日保存为系列数 1)。例如,在 1900 日期系统中 Excel 将 1998 年 1 月 1 日保存为系列数 35796,因为该日期距离 1900 年 1 月 1 日为 35795 天。请查阅 Microsoft Excel 如何存储日期和时间。Excel for Windows 和 Excel for Macintosh 运用不同
7、的默认日期系统。有关细致信息,请参阅 NOW。示例DATEDIF(2001/1/1,2003/1/1,Y)等于 2,即时间段中有两个整年。DATEDIF(2001/6/1,2002/8/15,D)等于 440,即在 2001 年 6 月 1 日和 2002 年 8 月 15 日之间有 440 天。DATEDIF(2001/6/1,2002/8/15,YD)等于 75,即在 6 月 1 日与 8 月 15 日之间有 75 天,忽略日期中的年。DATEDIF(2001/6/1,2002/8/15,MD)等于 14,即开始日期 1 和结束日期 15 之间的差,忽略日期中的年和月。1.7 在一个单元格
8、中指定字符出现的次数例如在 A1 单元格中有“abcabca”字符串,求“a”在单元格A1内出现次数,用下列公式:=LEN(A1)-LEN(SUBSTITUTE(A1,a,)。1.8 日期形式的转换我们在有些情况下写日期会用“20060404”表示,如何 转换成“2006-04-04”的标准日期格式,用下面的两个公式之一(假定在 A1单元格中有原始日期):=TEXT(A1,0000-00-00)=TEXT(A1,?-?-?)。也可以运用以下公式,转换成“2006-4-4”的格式。=LEFT(A1,4)&SUBSTITUTE(RIGHT(A1,4),0,-)。反之,如何把“2006 年 4 月
9、4 日”转换成“20060404”?可以运用下面的公式之一(假定在A1单元格中有原始日期):=YEAR(A1)&TEXT(MONTH(A1),00)&TEXT(DAY(A1),00)=YEAR(A1)&IF(MONTH(A1)10,0&MONTH(A1),MONTH(A1)&IF(DAY(DAY(A1)10),0&DAY(A1),DAY(A1)名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 14 页 -=TEXT(A1,yyyymmdd)。也可以直接自定义格式:yyyymmdd。1.9 用“定义名称”的要领突破IF 函数的嵌套限定Excel 中的 IF()函数的一个众所周知的限定
10、是嵌套不能超过7 层。例如下面的公式是不正确的,因为嵌套层数超过了限定。=IF(Sheet1!$A$4=1,11,IF(Sheet1!$A$4=2,22,IF(Sheet1!$A$4=3,33,IF(Sheet1!$A$4=4,44,IF(Sheet1!$A$4=5,55,IF(Sheet1!$A$4=4,44,IF(Sheet1!$A$4=5,55,IF(Sheet1!$A$4=6,66,IF($A$4=7,77,FALSE)通常的要领会考虑用VBA代替。但是也可以可以通过对公式的一部分”定义名称”来处理这种限定定义一个名叫”OneToSix”的名称,里面包括公式:=IF(Sheet1!$A
11、$4=1,11,IF(Sheet1!$A$4=2,22,IF(Sheet1!$A$4=3,33,IF(Sheet1!$A$4=4,44,IF(Sheet1!$A$4=5,55,IF(Sheet1!$A$4=4,44,IF(Sheet1!$A$4=5,55,IF(Sheet1!$A$4=6,66,FALSE)再定义另一个名叫”SevenToThirteen”的名称,里面包括公式:=IF(Sheet1!$A$4=7,77,IF(Sheet1!$A$4=8,88,IF(Sheet1!$A$4=9,99,IF(Sheet1!$A$4=10,100,IF(Sheet1!$A$4=11,110,IF(Sh
12、eet1!$A$4=12,120,IF(Sheet1!$A$4=13,130,NotFound)最后单元格中输入下面的公式:=IF(OneToSix,OneToSix,SevenToThirteen)1.10 动态求和举一个基本例子:例如对于 A列,求出 A1到当前单元格行标前面一行的单元格中的数值之和,更直接地说,如果当前单元格在 B17,那么求 A1:A16 之和。运用下面的公式:=SUM(INDIRECT(A1:A&ROW()-1)。1.11 COUNTIF 函数的 16 种公式配置(设DATA 为区域名称)(1)返加包含值12 的单元格数量:=COUNTIF(DATA,12)(2)返回
13、包含负值的单元格数量:=COUNTIF(DATA,0)(3)返回不等于0 的单元格数量:=COUNTIF(DATA,0)(4)返回大于5 的单元格数量:=COUNTIF(DATA,5)(5)返回等于单元格A1中内容的单元格数量:=COUNTIF(DATA,A1)(6)返回大于单元格A1中内容的单元格数量:=COUNTIF(DATA,“”&A1)(7)返回包含文本内容的单元格数量:=COUNTIF(DATA,“*”)(8)返回包含三个字符内容的单元格数量:=COUNITF(DATA,“?”)(9)返回包含单词 GOOD(不分大小写)内容的单元格数量:=COUNTIF(DATA,“GOOD”)(1
14、0)返回在文本中任何位置包含单词GOOD 字符内容的单元格数量:=COUNTIF(DATA,“*GOOD*”)(11)返回包含以单词AB(不分大小写)开头内容的单元格数量:=COUNTIF(DATA,“AB*”)名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 14 页 -(12)返回包含当前日期的单元格数量:=COUNTIF(DATA,TODAY())(13)返回大于平均值的单元格数量:=COUNTIF(DATA,&AVERAGE(DATA)(14)返回平均值上面超过三个标准误差的值的单元格数量:=COUNTIF(DATA,“&AVERAGE(DATA)+STDEV(DATA)*
15、3)(15)返回包含值为或-3 的单元格数量:=COUNTIF(DATA,3)+COUNIF(DATA,-3)(16)返回包含值逻辑值为TRUE的单元格数量:=COUNTIF(DATA,TRUE)1.12 计算一个日期是一年中的第几天例如 2006 年 7 月 29 日是本年中的第几天?在一年中,显示是第几天用什么函数呢?假定A1中是日期,运用下列公式:=A1-DATE(YEAR(A1),1,0),将单元格格式配置为常规,返回210,即 2006 年 7 月 29 日是 2006 年的第 210 天。1.13 如何 用公式求出最大值所在的行?如 A1:A10 中有 10 个数,如何求出最大的数
16、在哪个单元格?=MATCH(LARGE(A1:A10,1),A1:A10,0)=ADDRESS(MATCH(SMALL(A1:A10,COUNTA(A1:A10),A1:A10,0),1)=ADDRESS(MATCH(MAX(A1:A10,1),A1:A10,0),1)1.14 在 Excel 中的绝对引用与相对引用之间切换在 Excel 中建立公式时,该公式可以运用相对引用,即相对于公式所在的位置引用单元;也可以运用绝对引用,即引用特定位置上的单元。引用由所在单元格的“列的字母”和“行的数字”组成,绝对引用由在“列的字母”和“行的数字”前面加“$”表示,例如,$B$1 是对第一行B列的绝对引
17、用。公式中还可以混合运用相对引用和绝对引用。可以运用 F4 切换相对引用和绝对引用,选中包含公式的单元格,在公式栏中选择想要改动的引用,按F4 键可以执行切换。1.15 在 Excel 公式和结果之间高速切换在 excel工作表中输入计算公式时,可以运用“Ctrl+(中音号)”键来决定显示或潜藏公式,可让储存格显示计算的结果,还是公式本身。1.16 如果某列中有大于0 和小于 0 的数,将小于0 数字所在的行自动删除假定在 A1-A6 中有大于 0 和小于 0 的数,可以用下面的VBA程序实现:for i=6 to 1 step-1 if cells(i,1)0 then rows(i).De
18、lete next i 1.17 奇数行和偶数行求和有时候须要奇数行和偶数行单独求和,例如要求A 列第 1 行至 1000 行中奇数行之和,运用公式=SUMPRODUCT(A1:A1000)*MOD(ROW(A1:A1000),2),要求这些行中偶数行之和,运用公式=SUMPRODUCT(A1:A1000)*NOT(MOD(ROW(A1:A1000),2)。1.18 用函数来获取单元格地址名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 14 页 -在复杂的计算中,往往要获知单元格的地址,可以用函数=ADDRESS(ROW(),COLUMN()获得当前单元格的地址。1.19 求一列
19、中某个特定的值对应的另外列的最大或最小值为了直观起见,举一个基本的例子:例如在A1:A10 中有若干台计算机、打印机、传真机等物品的名称,在B1:B10 中有上述设备对应的价格,求“计算机”对应的最低价格。可以用公式:=min(if(a1:a10=计算机,b1:b10),输入该公式后按Ctrl+Shift+Enter完成。1.20 自动记录数据录入时间运用 VBA 实现,建立一个Time.xls文档,输入以下VBA代码:Private Sub Worksheet_Change(ByVal Target As Range)If Target.Column 1 Then Exit Sub Else
20、 Target.Offset(0,1)=Now End If End Sub 1.21 如果一个单元格中既有数字又有字母,如何提取其中的数字呢Function getnumber(rng As String)As String Dim mylen As Integer Dim mystr As String mylen=Len(rng)For I=1 To mylen mystr=Mid(rng,I,1)If Asc(mystr)=48 And Asc(mystr)=57 Then getnumber=getnumber&mystr End If Next I End Function 1.2
21、2 Excel数组的使用数组就是单元的集合或是一组处理的值集合。可以写一个数组公式,即输入一个单个的公式,它执行多个输入的操作并产生多个结果每个结果显示在一个单元中。数组公式可以看成是有多重数值的公式。与单值公式的不同之处在于它可以产生一个以上的结果。一个数组公式可以占用一个或多个单元。数组的元素可多达6500 个。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 14 页 -(1)了解数组首先我们通过多个例子来说明数组是如何工作的。我们可以从图中看到,在“B”列中的数据为销售量,在“C”列中的数据是销售单价,要求计算出每种产品的销售额和总的销售金额,一般的做法是计算出每种产品的销
22、售额,然后再计算出总的销售额。但是如果我们改用数组,就可以只键入一个公式来完成这些运算。输入数组公式的步骤为:选定要存入公式的单元格,在本例中我们选择“D4”单元格。输入公式=SUM(B2:B4*C2:C4),但不要按下 Enter键(输入公式的要领和输入普通的公式一样),按下 Shift+Ctrl+Enter键。我们就会看到在公式外面加上了一对大括号“”,如图 7-36所示。在单元格“D”中的公式“=SUM(B2:B4*C2:C4)”,表示“B2:B4”范围内的每一个单元格和“C2:C4”内相对应的单元格相乘,也就是把每个地区的销售量和销售单价相乘,相乘的结果共有3 个数字,每个数字代表一个
23、地区的销售额,而“SUM”函数将这些销售额相加,就得到了总的销售额。下面我们再以运用数组计算3 种产品的销售额为例,来说明如何产生多个计算结果。其操作流程如下:(1)选择“D2:D4”单元格区域,该区域中的每个单元格保存的销售金额。如图7-37 所示。(2)在“D2”单元格中输入公式“=B2:B4*C2:C4”(不按Enter键)按下 Shift+Ctrl+Enter”键,我们就可以从图7-38 中看到执行后的结果。同时我们可以看到“D2”到“D4”的格中都会出现用大括弧“”框住的函数式,这表示“D2”到“D4”被当作一个单元格来处理,所以不能对“D2”到“D4”中的任一格作任何单独处理,必须
24、针对整个数组来处理。(2)运用数组常数我们也可以在数组中运用常数值。这些值可以放在数组公式中运用区域引用的地点。要在数据公式中运用数组常数,直接将该值输入到公式中并将它们放在括号里。例如,在图7-39 中,就运用了数组常数执行计算。常数数组可以是一维的也可以是二维的。一维数组可以是垂直的也可以是水平的。在一维水平数组中的元素用逗号分开。下面是一个一维数组的例子。例如数组:10,20,30,40,50。在一维垂直数组中的元素用分号分开。在下面的例子是一个61 的数组,100;200;300;400;500;600。对于二维数组,用逗号将一行内的元素分开,用分号将各行分开。下一个例子是“4 4”的
25、数组(由4 行 4 列组成):100,200,300,400;110,;130,230,330,440。留心:不可以在数组公式中运用列出常数的要领列出单元引用、名称或公式。例如:2*3,3*3,4*3因为列出了多个公式,是不能用的。A1,B1,C1 因为列出多个引用,也是不能用的。不过可以运用一个区域,例如A1:C1。对于数组常量的内容,可由下列准则构成:数组常量可以是数字、文字、逻辑值或不正确值。数组常量中的数字,也可以运用整数、小数或科学记数格式。文字必须以双引号括住。同一个数组常量中可以含有不同类型的值。数组常量中的值必须是常量,不可以是公式。数组常量不能含有货币符号、括号或百分比符号。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年EXCEL公式技巧汇总 2022 EXCEL 公式 技巧 汇总

限制150内