虎虎漫画小说

繁体版 简体版
虎虎漫画小说 > > Excel_word_ppt_office使用技巧大全(最新超全完整版)最新章节 > 第 74 章

第 74 章 免费阅读

",IF(A1="二",(B1+C1)/3,IF(A1="三",(B1+C1)/6,""))))

2、=IF(OR(B1="", C1="", A1="一"), "", IF(A1 = "二", (B1+C1)/3, (B1+C1)/6))

18、 如果考虑 A1 没有数据的话:=IF(OR(B1="", C1="", A1="一",A1=""), "", IF(A1 = "二", (B1+C1)/3, (B1+C1)/6))

对A列不重复的数值计数

我只能做到新建一列,B列,然后第一个单元格countif($A$1:$A$100,A1),然后拖动到全部新列。最后在新列下面用sumif(B1:B100,1) 谁有更好地方法。

解答:1、{=SUM(IF($A$1:$A$100="","",1/(COUNTIF($A$1:$A$100,$A$1:$A$100))))}(又问:公式中的“1/(COUNTIF($A$1:$A$100,$A$1:$A$100))”像是一个倒数,怎么理解?答:用倒数是这个意思:如果只出现一次,数组中的相应项统计为1,其倒数为1,Sum统计计1。如果出现 N 次,其倒数为1/N,出现了N次,求和就是Nx1/N,最后Sum统计就只计1。)

永恒的求和

1、=SUM(OFFSET(A1,,,ROW()-ROW(A1)))可以对A列数值自动求和。

2、=SUM(INDIRECT("R2C:R[-1]C",FALSE))

3、=SUM(INDIRECT("A2:A"&ROW()-1))

19、 坚持不用R1C1栏名列号表示法还有一个方法,不过又复杂了些。首先定义一个公式:COL=IF(COLUMN()>26,CHAR(INT((COLUMN()-1)/26)+64)&CHAR(IF(MOD(COLUMN(),26)=0,26,MOD(COLUMN(),26))+64),CHAR(COLUMN()+64))。后于yù求加总之储存格输入:=SUM(INDIRECT(COL&"1:"&COL&ROW()-1))。则此公式复制到任何一任皆可用,又不怕产生错误值。(注:COL=IF(COLUMN()>26,CHAR(MOD(COLUMN(),26)+64)&CHAR(INT(COLUMN()/26)+64),CHAR(COLUMN()+64))。暴露了一个为人不知的缺点,如果列数到了AA列以后就不行了,虽然可用ADDRESS()解决,比用CHAR()好多了,但公式还是太长,用在一个加法中实在不值)

20、 其实用ADDRESS更好,=SUM(INDIRECT(ADDRESS(1,COLUMN())&":"&ADDRESS(ROW()-1,COLUMN()))),还是一句老话,为做一个加法不是太值,这只能是技术上的讨论。

如何使用EXCEL进行动态跨表取数

有两个文件,第一个文件有31张日报表,每天一个表单;第二个文件仅一个表单;如何在第二个文件中,输入1时由函数动态取出第一张表单数(如SHEET1),输入2时取(SHEET2)数,依次类推……。,如何设公式。在同一文件中可以用INDIRECT和ADDRESS组合,可是跨表好象不行,请各位指教一二!

解答:前提是两个工作表都要打开:=INDIRECT("[Book2]Sheet"&A1&"!$B$1")

如何使用對照表

设一对照表如下:如何使用函数当输入。当a1=34 则a2显示"乙" b1=68 则b2显示"丁"/甲 22 33 44 66..../乙 26 34 43 62.... /丙 28 39 41 67.... /丁 27 31 49 68.... /戊 23 32 46 64.... /己 29 38 47 61.... /更 21 37 48 69.... /辛 24 36 42 63....

解答:如A列输入的数字在表中都存在,把你的数据放在D到G列,甲乙丙丁戊己辛放在最后一列,即H列。在B列输入公式“=IF(A1="","",VLOOKUP(A1,INDIRECT(ADDRESS(1,INT(0.1*A1)+IF(A1>60,1,2))):INDIRECT(ADDRESS(8,8)),7-INT(0.1*A1)+IF(A1>60,1,0),FALSE))”。如甲乙丙丁戊己辛放在第一列,即列用公式“=IF(A1="","",INDEX(D:D,MATCH(A1,INDIRECT(ADDRESS(1,INT(0.1*A1)+IF(A1>60,2,3))):INDIRECT(ADDRESS(8,INT(0.1*A1)+IF(A1>60,2,3))),0)))”

解答2:如果数据无规律,可用以下方法:如你的数据表在D到H列,在I列输入公式“=IF(ISERROR(MATCH(A$1,E1:H1,0))=TRUE,0,row())"并向下填充,在B1单元格输入公式“=IF(A1="","",INDEX(D:D,LARGE(I:I,1)))”

解答3:我将解答2公式做了小修改(I列公式删除),B1单元格输入公式:=IF(A1="","",INDEX($D:$D, IF(ISERROR(MATCH(A1,$E$1:$H$1,0))=TRUE,0,ROW($E$1:$H$1))+ IF(ISERROR(MATCH(A1,$E$2:$H$2,0))=TRUE,0,ROW($E$2:$H$2))+ IF(ISERROR(MATCH(A1,$E$3:$H$3,0))=TRUE,0,ROW($E$3:$H$3))+ IF(ISERROR(MATCH(A1,$E$4:$H$4,0))=TRUE,0,ROW($E$4:$H$4))+ IF(ISERROR(MATCH(A1,$E$5:$H$5,0))=TRUE,0,ROW($E$5:$H$5))+ IF(ISERROR(MATCH(A1,$E$6:$H$6,0))=TRUE,0,ROW($E$6:$H$6))+ IF(ISERROR(MATCH(A1,$E$7:$H$7,0))=TRUE,0,ROW($E$7:$H$7))+ IF(ISERROR(MATCH(A1,$E$8:$H$8,0))=TRUE,0,ROW($E$8:$H$8))))。

解答4:在B1单元格输入公式:{=IF(COUNTIF($E$1:$G$8,A1)=0,"查无资料",INDEX($D$1:$D$8,SUM(IF($E$1:$H$8=A1,ROW($E$1:$H$8)))))}

又问:当数据区域有重复数据时,就得不到正确结果。因为,在这里你的SUM()返回的只是对一个数据求和。如果有重复数据,怎样才能得到正确结果呢?

答:在B1单元格输入公式:=IF((COUNTIF($E$1:$H$8,$A$1)=0)

+(COUNTIF($E$1:$H$8,$A$1)

< ROW( )),"" ,

INDEX($D$1:$D$8,SMALL(IF($E$1:$H$8=$A$1,ROW($E$1:$H$8)),ROW())))

再往下拖曳,就可依序顯示了。真是快瘋了改了十幾次,有些莫名其妙,進來編輯看公式是完整的可是發表後又老是缺東缺西的,只好多加些空白或強迫分段處理,請使用者自行修改。

或:如有重复数据,則顯示"数据重复"表示,代表要修改数据。{=IF(COUNTIF($E$1:$H$8,A1)=0,"查無資料",IF(COUNTIF($E$1:$H$8,A1)>1,"資料重複",INDEX($D$1:$D$8,SUM(IF($E$1:$H$8=A1,ROW($E$1:$H$8))))))}

如何在单元格返回工作表名称

解答:=RIGHT(CELL("filencom"),LEN(CELL("filencom"))-FIND("]",CELL("filencom")))

何在一列数据中统计限定范围的数据

请教各位:现A列有数字(包括绝对值为0的数字)、文本、空格,要统计数值为14到35(包括14与35)的个数;还要统计数值>35并<14的个数(不包括0),分别该用什么函数?

答:>13 and <36 公式=COUNTIF(A:A,">13")-COUNTIF(A:A,">35")

(>35 or <14) and <> 0 公式=COUNTIF(A:A,">35")+COUNTIF(A:A,"<14")-COUNTIF(A:A,"=0")

索引制作代码

方法1、Sub 索引制作()

Dim myIndexSheet As Worksheet, Sht As Worksheet, a As Long

Set myIndexSheet = Worksheets.Add

a = 0 '这个数字加1表示列表起始行,为0从第1行开始。

For Each Sht In Worksheets

a = a + 1 '这个数字如果为2则隔行列表。

myIndexSheet.Cells(a, "b").Value = Sht.Ncom '引号中字母代表列表所在的列(下行同),现为b列。

Sht.Hyperlinks.Add myIndexSheet.Cells(a, "b"), Address:="", SubAddress:=Sht.Ncom & "!A1"

Next Sht

『加入书签,方便阅读』