Excel 解析中高级函数2.docx

上传人:b****1 文档编号:10659151 上传时间:2023-05-27 格式:DOCX 页数:38 大小:46.60KB
下载 相关 举报
Excel 解析中高级函数2.docx_第1页
第1页 / 共38页
Excel 解析中高级函数2.docx_第2页
第2页 / 共38页
Excel 解析中高级函数2.docx_第3页
第3页 / 共38页
Excel 解析中高级函数2.docx_第4页
第4页 / 共38页
Excel 解析中高级函数2.docx_第5页
第5页 / 共38页
Excel 解析中高级函数2.docx_第6页
第6页 / 共38页
Excel 解析中高级函数2.docx_第7页
第7页 / 共38页
Excel 解析中高级函数2.docx_第8页
第8页 / 共38页
Excel 解析中高级函数2.docx_第9页
第9页 / 共38页
Excel 解析中高级函数2.docx_第10页
第10页 / 共38页
Excel 解析中高级函数2.docx_第11页
第11页 / 共38页
Excel 解析中高级函数2.docx_第12页
第12页 / 共38页
Excel 解析中高级函数2.docx_第13页
第13页 / 共38页
Excel 解析中高级函数2.docx_第14页
第14页 / 共38页
Excel 解析中高级函数2.docx_第15页
第15页 / 共38页
Excel 解析中高级函数2.docx_第16页
第16页 / 共38页
Excel 解析中高级函数2.docx_第17页
第17页 / 共38页
Excel 解析中高级函数2.docx_第18页
第18页 / 共38页
Excel 解析中高级函数2.docx_第19页
第19页 / 共38页
Excel 解析中高级函数2.docx_第20页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Excel 解析中高级函数2.docx

《Excel 解析中高级函数2.docx》由会员分享,可在线阅读,更多相关《Excel 解析中高级函数2.docx(38页珍藏版)》请在冰点文库上搜索。

Excel 解析中高级函数2.docx

Excel解析中高级函数2

如何实现对日期格式的要求条件

Q:

在条件语句中如何实现符合某个时期的条件的记录进行统计,比如有1-12月份的记录单,需要实现对每个月里些数据的统计汇总/(格式如何?

A:

dongmu

以下公式,A列为日期列,B列为数据,要求计算1月份的累计:

=SUM(IF(MONTH(A:

A)=1,B:

B,0))

此为数组公式,在输完公式后,不要ENTER,而要CTRL+SHIFT+ENTER.(好象不足呀!

程香宙)

截取单元格里某个字符后的字符

A:

tof:

使用RIGET()或LEFT()函数就可以了,详细可以参考EXCEL的帮助

liberty:

比如这样:

a1内容为,g2er.g

我需要提取出,号以后的字符,g2er.g

午餐:

先使用SERACH或FIND函数找出“,”的位置,再用MID来取数,如A1=123,456,我想取出“,”以右的数,可以=MID(SEARCH(,),8)。

可能我用的函数不行,不过思路一定行。

  你多看看帮助文件,我在网吧,此机无EXCEL无法试,不过我以前用过,用MID加SEARCH一定行的通,多试试吧。

  实在不行再给我邮箱发信了,愿意帮忙!

祝你好运。

  我认为能用函数解决的最好不用VBA,你说呢?

markxg:

假设A1中有,g2er.g

=RIGHT(A1,LEN(A1)-SEARCH(",",A1,1))

missle:

我今天也试着用公式解决了你的问题,思路与MARK的一样,只是他用的是SEARCH,我用的是FIND。

但不是很清楚你的问题,是否要把“,”号一起给截取下来,如果是的话:

公式应该是=RIGHT(A1,LEN(A1)-SEARCH(",",A1,1)+1),否则“,”号是无法截取到的。

把问题给纵深一下,如果单元格内有多个“,”的话,如A1中是:

aa,bb,cc,dd我想截取cc,dd该如何作呢?

或者想知道这个单元格中含有多少个“,”又应该如何呢?

(VBA的解决方法除外)

午餐:

Missle,你看仔细了,在Search函数中是有参数的,它允许你指定在第几个出现显出位置,如“,”你可以通过指定search参数选定第几次出现时的位置,对于截取我更认为MID比LEFT和RIGHT好

用if函数判断

请问:

如何用if函数判断,如果a1单元格大于0,b1单元格为0是错误,为非0是正确?

A:

dongmu

if(and(a<=0,b=0),"错误","正确")

葡萄:

=if(a1>0,if(b1=0,"错误","正确"),"条件一不满足")

分别显示总分最高的同学的班级、姓名、总分

Q:

问题1是这样的:

1、在A1:

A30单元格区域中输入500至600之间的数值;

2、在B1单元格中输入500;

3、在C1单元格中插入公式:

COUNTIF(A1:

A30,">=INDEX(B1,1)*0.9")

回车后C1单元格中显示的结果是0,为何不能把A1:

A30中输入的数大于或等于500*0.9的单元格个数统计出来?

错在哪里,该如何更正?

问题2有下面一个表格:

班级姓名政治语文数学总分

1小东909090270/2明明959290277/3小英968991276/要在K1:

K3的单元格中分别显示总分最高的同学的班级、姓名、总分.该如何设置公式?

答案1:

建议你好好看看COUNTIF的帮助,真是搞不明白,为什么在B1里输入500而不是450呢?

COUNTIF不支持一个以上的条件,你应该用DCOUNT。

答案2:

K1=INDEX(A2:

F4,MATCH(K3,F2:

F4,0),1)

K2=INDEX(A2:

F4,MATCH(K3,F2:

F4,0),2)

K3=MAX(F2:

F4)

解答3:

问题一:

公式改为:

=COUNTIF(A1:

A30,">="&INDEX(B1,1)*0.9)

问题二:

在K1:

K3中分别输入如下公式(假设A1为"班级"):

=LOOKUP($K$3,$F$2:

$F$4,A2:

A4)

=LOOKUP($K$3,$F$2:

$F$4,B2:

B4)

=LARGE(F2:

F4,1)

解答4

第一题:

=COUNTIF(A1:

A30,">="&B1*0.9)

第二题:

K1==INDIRECT("A"&MATCH(MAX(F1:

F4),F1:

F4))

K2=INDIRECT("B"&MATCH(MAX(F1:

F4),F1:

F4))

K3=MAX(F2:

F4)

定有如上两列数据A和B 现在想要统计满足条件B=8的 并且在C列自动生成数据

Q:

ABC

4278427/6128612/9248924/2216409/9416/62016/95516/4098

请问:

假定有如上两列数据A和B,现在想要统计满足条件B=8的,并且在C列自动生成数据,我不懂公式怎么写?

我知道筛选能够做到,但是由于数据量比较大,想做一个模板,免去一些重复劳动.

A:

dongmu

=IF(ROW($A1)>COUNTIF($B$1:

$B$8,8),"",INDEX($A$1:

$A$8,MATCH(SMALL(IF($B$1:

$B$8=8,0,1)+ROW($B$1:

$B$8)/100000,ROW

($A1)),IF($B$1:

$B$8=8,0,1)+ROW($B$1:

$B$8)/100000,0)))

老夏L:

B栏有100个选取条件,公式要修改100次,有甚么灵活性?

给字段名称,插入头两列.B1=SUBTOTAL(9,B4:

B65536).解决掉所有问题,控件找自动筛选.

排名问题

在A1:

F6区域有下面一个表格:

班级姓名政治语文数学总分

1小东909090270/2明明959290277/3小英968991276/4小刘959092277/5小红959192278/要在K1:

K3的单元格中分别显示总分最高的同学的班级、姓名、总分/在L1:

L3的单元格中分别显示总分第二的同学的班级、姓名、总分/在M1:

M3的单元格中分别显示总分第三的同学的班级、姓名、总分/注意期中277分的有两人,不要出现第二名与第三名都是"明明"的结果.

A:

dongmu

定义A2:

A6区域为班级;定义B2:

B6区域为姓名;定义F2:

F6区域为总分

K1={INDEX(班级,MATCH(LARGE(总分+1-ROW(总分)/100,ROW($A1)),总分+1-ROW(总分)/100,0))}

L1={INDEX(姓名,MATCH(LARGE(总分+1-ROW(总分)/100,ROW($A1)),总分+1-ROW(总分)/100,0))}

M1={INDEX(总分,MATCH(LARGE(总分+1-ROW(总分)/100,ROW($A1)),总分+1-ROW(总分)/100,0))}注:

只要向下复制,便可得到1~6名的情况了。

该公式可以无限排列。

研究彩票,从统计入手

Q:

我有一个VBA编程的问题向你请教。

麻烦你帮助编一个。

我一定厚谢。

有一个数组列在EXCEL中如:

01020304050607/和01041219252632/02081516182428/01020709121522/09151720222932/比较,如果有相同的数就在第八位记一个数。

如:

010412192526322/020815161824281/010207091215222/091517202229320.这个数列有几千组,只要求比较出有几位相同就行。

解答:

把“01020304050607”放在表格的第一行,“010412192526322”放第二行。

把以下公式贴到第二行第八个单元格“A9”中,按F2,再按CTRL+SHIFT+ENTER.

=COUNT(MATCH(A2:

G2,$A$1:

$G$1,0))

去掉XLS文件头上菜单栏的“MIcrosoftEXCEL”字样

A:

PrivateSubWorkbook_Open()

Application.Caption="程香宙专用表格"

EndSub

替换数据

Q:

请教各位如何用将一组数据,

如:

6550894,9852547,2656032,7461136,0505867,5564892,7235580,0421077,我需要把数据中的数字1,3,5换为符号A表示,2,4,6换为符号B表示,依此类推将数据中的阿拉伯数字0~9分为几类用其它符号替换。

A:

leaf

用VBA处理比较方便。

只用EXCEL函数,感觉代价太大。

假设:

B13值为9550894在B14中输入=IF(ISERROR(FIND(MID($B$13,1,1),"135")),IF(ISERROR(FIND(MID($B$13,1,1),"246")),IF(ISERROR(FIND(MID($B$13,1,1),"79")),IF(ISERROR(FIND(MID($B$13,1,1),"80")),"","D"),"C"),"B"),"A"),C14中MID()第二个参数为2,以此类推...最后在目标单元格中输入:

=CONCATENATE(B14,C14,D14,E14,F14,G14,H14)

dongmu:

表一:

AB...

11234567890、2ABABABCCCD、=SUBSTITUTE(A4,A$1,A$2)

说明:

先列一个替换表,如表一,在A4处填如数据,在B4处填如上述公式=SUBSTITUTE(A4,A$1,A$2),并向右拖动9个同样的公式,最后一个便是结果.在将该10个相同的公式向下拖,便得到其它的结果.好处:

可以修改表一,产生变化.

ACCESS:

你可以把全部数据拷贝到WORD中,再用替换命令,想怎么换就怎么换,然后在拷贝回来。

复制数据再转置,不复制转置被隐藏的行或列

解答:

选择需要转置的单元区域,按下F5-->定位条件-->可见单元格-->复制-->选择性粘贴-->转置。

如何始终打开默认的工作表

可不可以作到每次保存工作表时,无论保存时是在哪一个

SHEET,但是当下次再打开时,还是原来默认的那张工作表。

比如SHEET1。

谢谢!

解答:

PrivateSubWorkbook_Open()

Worksheets("sheet1").Activate

EndSub

如何分割文本

有一列数据,全部是邮箱的,现在想将@前面的账号与@后面的域名分割开,分为两列,如何做?

解答:

采用函数分割:

例如:

A1:

name@

B1:

=LEFT(A1,FIND("@",A1)-1)-->name

C1:

=RIGHT(A1,LEN(A1)-FIND("@",A1))-->

或:

数据-分列-分列-分隔符号-@就可以了

两列合一列

现有两列数据A列与B列,我想把B列的数据合并到A列但必须是B1单元格的数放到A1的下面,B2放到A2的下面依此类推,有什么办法呢?

解答:

=INDIRECT("r"&INT((ROW()+1)/2)&"c"&MOD(ROW()+1,2)+1,0)

解释:

(一)EXCEL表中的列、行样式有两种:

一种标记样式为:

列(字段)以A,B,C,D......

行(记录)以数值1,2,3,4,5......

第一列第一行的单元格为A1

另一种标记样式为(取ROW和COLUMN的首位字母):

列(字段)以R1,R2,R3,R4,R5......

行(记录)以C1,C2,C3,C4,C5......

第一列第一行的单元格为R1C1

(二)请参阅INDIRECT函数的帮助说明!

!

!

公式:

=INDIRECT("r"&INT((ROW()+1)/2)&"c"&MOD(ROW()+1,2)+1,0)

等同于:

=INDIRECT("r"&INT((ROW()+1)/2)&"c"&MOD(ROW()+1,2)+1,FALSE)

(三)工具-->选项-->常规-->设置,还可选取R1C1引用样式

每次清除数据时能否作到跳过隐藏的单元格

解答:

F5----定位条件----常量----确定----Del

或:

F5->定位条件->可见单元格->确定->DEL

也就是单击Sheet2时,在Sheet1的A列的最后一个记录的下一行自动填上“End”

在sheet2:

PrivateSubWorksheet_Activate()

dimiasinteger

i=Sheets("Sheet1").Cells(1,1).CurrentRegion.Rows.Count

Sheets("Sheet1").Cells(i+1,1)="End"

EndSub

用函数将输入的月份转换为这个月所包含的天数

假设A1单元格为月份:

=TEXT((DATE(YEAR(NOW()),A1+1,1)-1),"d")

或:

=DAY(DATE(YEAR(NOW()),A1+1,0))

介绍经验:

就SUM函数来讲,以下动态地址可行

1.SUM($A$1:

A2),SUM(A$1:

A2)

2.B2="A9",

SUM(INDIRECT("a1:

"&B2))

3.B1="A1",B2="A9"

SUM(INDIRECT(B1&":

"&B2))

4.B1="A1:

A9"

SUM(INDIRECT(B1))

5.SUM(INDIRECT("A1:

"&"A"&ROW()-1))

6.SUM(INDIRECT("A1:

"&ADDRESS(ROW()-1,COLUMN())))

在EXCEL中如何统计字数

用{=SUM(LEN(范围))}试试

如何自动填充内容

A1:

A20是编号,B1:

B20是姓名,C1:

C20是性别,当我在A21单元格输入A1:

A20范围内的任意一个编号时,B21出现对应的姓名,C21出现对应的性别。

该如何做,请帮忙。

解答:

B21单元格公式“=IF(A21=0,"",VLOOKUP(A21,A1:

C20,2,FALSE))”;C21单元格公式“=IF(A21=0,"",VLOOKUP(A21,A1:

C20,3,FALSE))”这个公式也适用于A列编号不排序的情况,如果升序的话会更简单一点。

问:

以上公式中的'false'有什么用?

能否省略?

答:

false参数主要是用它以后在A列中的数据可以不是升序排列。

不然如果A列不是升序排列,公式会出错的。

工作表的标签的字体和大小可以更改吗

答:

在桌面上点右键─内容─外观,相关的设定都在此更改。

自定义格式的体会

在formatcell的时候,选了custom后在格子里输入你想要的位数,不变的部分就照着打进去,会变得部分打0就好了,(用0占位)。

例如:

你要打的数字是00715834123456,后6位是不定的,那你要打在格子里面00715834000000。

这样如果你输入最后3位是012,那么会显示出00715834000012;如果你输入54321,那么会显示出00715834054321。

如果你会变得部分是在数字的中间,比如我的item#会是9690000001-0000002,后面的-0000002是不变的,那我就可以设置自定义格式为9690000000"-0000002",这样当我键入502的时候就会显示9690000502-0000002。

再次显示出被隐藏掉了的行(第1行)

1:

 选中隐藏的上、下行,右击鼠标,选“取消隐藏”(作者注:

此法可行)

2:

Ctrl+A-----格式-----行-----取消隐藏(可以,能够一次显示所有隐藏的行或列)

3:

另一法(工作表处于未保护状态):

假如A1被隐藏了在名称框中键入A1,回车按Ctrl+Shift+0或Ctrl+Shift+9(只显示选定的隐藏列或行)

4:

光标移到行号4上部变成上下箭头状,按住了,拖也要把它拖出来!

(慢,不好操作)

5:

选择整个工作表(点击左上角),然后再选择菜单中的行,选择最适合的行高,然后就OK!

同样可以把隐藏的列显示出来。

(这个办法最好,能够一次显示所有隐藏的行或列)

如何定义有效数字

例:

取两位有效数是从第一个不是零的数字起,取两位。

0.0023666取两位有效数是0.0023。

0.2366取两位有效数是0.23。

解答:

用函数可如下:

=FLOOR(A1,SIGN(A1)*10^(INT(LOG(ABS(A1)))-1)),+/-小数有效,0无效.

其它形式的数据,自行扩展.

sheet1工作表的A1、A2、A3单元格分别链接到sheet2、sheet3、sheet4

解答:

1、=indirect("sheet"&row()+1&"!

a1")《程香宙的解释:

indirect是把文本变为单元格引用的函数row()是取当前行号。

例如在a1输入该公式,则row()=1,公式里的值变为indirect("sheet2!

a1"),跟=sheet2!

a1同效,在a2输入该公式,则row()=2,公式里的值变为indirect("sheet3!

a1")》

2、使用插入----超级链接----书签----(选择)----确定

用SUMIF函数进行条件求和,不限于一个条件时如何设置参数

例如:

有一个表格登记面粉、米粉、糯米、梗米、绿豆、早米……等等的进出流水帐,如果对满足单一条件的如面粉、糯米、绿豆等分别求和是没有问题的,但如果要将同一类的求和,例如将糯米、梗米、早米的数值加在一起,应该怎么办?

解答:

提供以下公式供参考,设A列为名称、B列为数量:

=SUMIF(A:

A,"糯米",B:

B)+SUMIF(A:

A,"梗米",B:

B)+SUMIF(A:

A,"早米",B:

B)

如B1:

D1为求和条件项,即B1="糯米",C1="梗米",D1="早米",

上述公式还可改为:

=SUMIF(A:

A,B1,B:

B)+SUMIF(A:

A,C1,B:

B)+SUMIF(A:

A,D1,B:

B)

如何在excel中已有的数值前加零变成六位

比如说25、369、1569等,操作后变成000025、000369、00156

解答:

如果直接输入的话,可以在数值前面加“'”,如“'002020”;

如果处理现成的数据,或者从别处(比如从A1单元格)链接来的数据,可以用公式:

=RIGHT("00000"&A1,6)

如何提取工作表中的背景图片

解答:

找个干净的地方,去掉网纹等不需要的东西,PrintScreen再编辑

绘制有三条斜线的表头

解答:

1、用绘图工具画出斜线>>画方框>>内添加文字>>去边框

2、引用WORD中的,然后再复制过来就可以!

在A列有一组数据不是按照大小顺序排列在B列中排名

解答:

方法1、将A列COPY到B列,再排序。

2、rank函数(=RANK(A2:

A11,$A$2:

$A$11,0)(假设数据在A2:

A11单元格,下同)

3、使用contif函数进行排列“=countif(a$2:

a$11,">"&a2)+1"

有无办法让B2所在行都呈红色字体

解答:

假设你有一个B列和一个A1的值,你的目的是,如果B2=A1的话,整个B列都为红色显示!

设置如下:

先选定整个b列,也就是在B列列标处单击(废话~^_^),选择格式-条件格式

出现条件格式对话框,单击左边的下拉列表,里面只有两项,单元格数值和公式,选中公式,右边就可以输入任何可以返回逻辑值的公式了。

输入这个公式=($B$2=$A$1)。

千万注意要用绝对引用,因为如果是相对的,excel又自作主张的一个一个判断了,就没有作用了。

(绝对正确并且好用)

现有12个工作表,是12张发票,建立一个汇总表,将发票号和金额汇总显示在一张表里

(发票号和金额在每张表的相同位置).

解答:

在A1输入 =INDIRECT("sheet"&ROW()&"!

d3")

在B1输入 =INDIRECT("sheet"&ROW()&"!

d10")

再选择A1:

B1往下复制到第12行。

经验技巧

按“Ctrl+~”可以一次显示所有公式(而不是计算结果)。

再按一次回到计算结果。

(程香宙)

在一个不对称的区域中如(b1:

G7)中找到A行一组数据中的某个数并自动变红

解答:

其实也很简单,你只要选定你的b1:

g7,设置它的条件格式为=(COUNTIF($A$1:

$A$7,b1))

注意,b1为相对引用,这里输入所选区域的第一个取值,那样你的所选区域会自动填充.达到你要的效果。

(好)

不借助第三列而直接用函数或公式一步得到sum(a2/b2,a3/b3,…)的结果

解答:

输入=sum(a1:

a100/b1:

b100),按ctrl+shift+Enter。

请问要如何算出每个月有几个星期一、二、三….日

解答:

为简单起见,表格需作一下调整,将"星期日"移到C1,其后依次,这也符合规则(请参阅函数:

WEEKDAY()).。

在C2键入数组公式:

{=SUM(IF(WEEKDAY(DATE($A2,$B2,ROW(INDIRECT("$A$1:

$A$"&DAY(DATE($A2,$B2+1,1)-1)))))=COLUMN()-2,1))},向右复制、向下复制。

公式解释一点:

ROW(INDIRECT("$A$1:

$A$"&DAY(DATE($A2,$B2+1,1)-1)))实际上是从1号测试到本月的最后一天.如需要,公式可再作精简。

让隐藏的列或行不参预计算

解答:

使用subtotal函数,详细用法参见帮助。

一次删完Excel里面多出很多的空白行

解答:

1、用分面预览看看

2、用自动筛选然后删除

3、用自动筛选,选择一列用非空白,空白行就看不到了,打印也不会打出来。

但是实际上还是在的,不算删除。

或者用自动筛选选择空白将空白行全显出来一次删完也可以。

4、先插入一列,在这一列中输入自然数序列,然后以任一列排序,排序完后删除数据后面的空行,再以刚才输入的一列排序,排序后删除刚才插入的一列。

表1、表2分别有20个人的基本情况和其中10个人的名字,让表1的数据自动填充到表2

答:

1、用lookup函数即可。

要保证20人不重名;

2、假设表1的D列对应表2的E列。

E2的公式:

=VLOOKUP(B2,Sheet1!

B:

D,3,FALSE)

使用vlookup函数返回#N/A符号时将此符号用0或空格来代替

答:

这样处理:

=IF(ISNA(VLOOKUP(C13,A1:

B10,2)),0,VLOOKUP(C13,A1:

B10,2))

或:

IF(ISERROR(vlookup(a1,e1:

g10,2,0)),0,vlookup(a1,e1:

g10,2,0))。

通过条件格式将小计和总计的行设为不同的颜色

答:

输入=RIGHT(RC,1)="计";设定字体、边框、图案;确定。

复制隐藏后的表格到一个新表格中使被隐藏的内容不显示

答:

crtl+g-选可见单位格-复制-粘贴。

如何将一个工作簿中的一个Sheet隐藏

答:

1、选“格式”---“工作表”

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2