EXECL超级实用技巧.docx
- 文档编号:29265776
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:18
- 大小:27.57KB
EXECL超级实用技巧.docx
《EXECL超级实用技巧.docx》由会员分享,可在线阅读,更多相关《EXECL超级实用技巧.docx(18页珍藏版)》请在冰豆网上搜索。
EXECL超级实用技巧
EXECL使用技巧
一、求字符串中某字符出现的次数:
例:
求A1单元格中字符"a"出现的次数:
=LEN(A1)-LEN(SUBSTITUTE(A1,"a",""))
二、如何在不同工作薄之间复制宏:
1、打开含有宏的工作薄,点“工具/宏(M)…”,选中你的宏,点“编辑”,这样就调出了VB编辑器界面。
2、点“文件/导出文件”,在“文件名”框中输入一个文件名(也可用默认的文件名),注意扩展名为“.bas”,点“保存”。
3、将扩展名为“.bas”的文件拷贝到另一台电脑,打开EXECL,点“工具/宏/VB编辑器”,调出VB编辑器界面,点“文件/导入文件”,找到你拷贝过来的文件,点“打开”,退出VB编辑器,你的宏已经复制过来了。
三、如何在EXCEL中设置单元格编辑权限(保护部分单元格)
1、先选定所有单元格,点"格式"->"单元格"->"保护",取消"锁定"前面的"√"。
2、再选定你要保护的单元格,点"格式"->"单元格"->"保护",在"锁定"前面打上"√"。
3、点"工具"->"保护"->"保护工作表",输入两次密码,点两次"确定"即可。
四、excel中当某一单元格符合特定条件,如何在另一单元格显示特定的颜色
比如:
A1〉1时,C1显示红色
0 A1<0时,C1显示黄色 方法如下: 1、单元击C1单元格,点“格式”>“条件格式”,条件1设为: 公式=A1=1 2、点“格式”->“字体”->“颜色”,点击红色后点“确定”。 条件2设为: 公式=AND(A1>0,A1<1) 3、点“格式”->“字体”->“颜色”,点击绿色后点“确定”。 条件3设为: 公式=A1<0 点“格式”->“字体”->“颜色”,点击黄色后点“确定”。 4、三个条件设定好后,点“确定”即出。 五、EXECL中如何控制每列数据的长度并避免重复录入 1、用数据有效性定义数据长度。 用鼠标选定你要输入的数据范围,点"数据"->"有效性"->"设置","有效性条件"设成"允许""文本长度""等于""5"(具体条件可根据你的需要改变)。 还可以定义一些提示信息、出错警告信息和是否打开中文输入法等,定义好后点"确定"。 2、用条件格式避免重复。 选定A列,点"格式"->"条件格式",将条件设成“公式=COUNTIF($A: $A,$A1)>1”,点"格式"->"字体"->"颜色",选定红色后点两次"确定"。 这样设定好后你输入数据如果长度不对会有提示,如果数据重复字体将会变成红色。 六、在EXCEL中如何把B列与A列不同之处标识出来? (一)、如果是要求A、B两列的同一行数据相比较: 假定第一行为表头,单击A2单元格,点“格式”->“条件格式”,将条件设为: “单元格数值”“不等于”=B2 点“格式”->“字体”->“颜色”,选中红色,点两次“确定”。 用格式刷将A2单元格的条件格式向下复制。 B列可参照此方法设置。 (二)、如果是A列与B列整体比较(即相同数据不在同一行): 假定第一行为表头,单击A2单元格,点“格式”->“条件格式”,将条件设为: “公式”=COUNTIF($B: $B,$A2)=0 点“格式”->“字体”->“颜色”,选中红色,点两次“确定”。 用格式刷将A2单元格的条件格式向下复制。 B列可参照此方法设置。 按以上方法设置后,AB列均有的数据不着色,A列有B列无或者B列有A列无的数据标记为红色字体。 七、在EXECL中建立下拉列表按钮 选定你要设置下拉列表的单元格,点“数据”->“有效性”->“设置”,在“允许”下面选择“序列”,在“来源”框中输入你的下拉列表内容,各项之间用半角逗号隔开,如: A,B,C,D 选中“提供下拉前头”,点“确定”。 八、阿拉伯数字转换为大写金额 假定你要在A5输入阿拉佰数字,B5转换成中文大写金额(含元角分),请在B5单元格输入如下公式: =IF((INT(A5*10)-INT(A5)*10)=0,TEXT(INT(A5),"[DBNum2]G/通用格式")&"元"&IF((INT(A5*100)-INT((A5)*10)*10)=0,"整","零"&TEXT(INT(A5*100)-INT(A5*10)*10,"[DBNum2]G/通用格式")&"分"),TEXT(INT(A5),"[DBNum2]G/通用格式")&"元"&IF((INT(A5*100)-INT((A5)*10)*10)=0,TEXT((INT(A5*10)-INT(A5)*10),"[DBNum2]G/通用格式")&"角整",TEXT((INT(A5*10)-INT(A5)*10),"[DBNum2]G/通用格式")&"角"&TEXT(INT(A5*100)-INT(A5*10)*10,"[DBNum2]G/通用格式")&"分")) 九、EXECL中怎样批量地处理按行排序 假定有大量的数据,需要将每一行按从大到小排序,如何操作? 由于按行排序与按列排序都是只能有一个主关键字,主关键字相同时才能按次关键字排序。 所以,这一问题不能用排序来解决。 解决方法如下: 1、假定你的数据在A至E列,请在F1单元格输入公式: =LARGE($A1: $E1,COLUMN(A1)) 用填充柄将公式向下复制到相应行。 2、用鼠标选定F列,用“查找/替换”的方法,将该列的"$A"替换成"$A$","$E"替换成"$E$"。 3、用鼠标选定F列所有有公式的单元格,用填充柄将公式向右复制到J列。 你原有数据将按行从大到小排序出现在F至J列。 如有需要可用“选择性粘贴/数值”复制到其他地方。 注: 第1步的公式可根据你的实际情况(数据范围)作相应的修改。 十、巧用函数组合进行多条件的计数统计 例: 第一行为表头,A列是“姓名”,B列是“班级”,C列是“语文成绩”,D列是“录取结果”,现在要统计“班级”为“二”,“语文成绩”大于等于104,“录取结果”为“重本”的人数。 统计结果存放在本工作表的其他列。 公式如下: =SUM(IF((B2: B9999="二")*(C2: C9999>=104)*(D2: D9999="重本"),1,0)) 输入完公式后按Ctrl+Shift+Enter键,让它自动加上数组公式符号"{}"。 十一、EXECL中某个单元格内文字行间距调整方法。 当某个单元格内有大量文字时,很多人都觉得很难将其行间距按自己的要求进行调整。 现介绍一种方法可以让你任意调整单元格内文字的行间距: 右击单元格,点"设置单元格格式"->"对齐",将"水平对齐"选择"靠左",将"垂直对齐"选择"分散对齐",选中"自动换行",点“确定”。 你再用鼠标将行高根据你要求的行距调整到适当高度即可。 注: 绿色内容为关键点,很多人就是这一点设置不对而无法调整行间距。 十二、如何在EXCEL中引用当前工作表名 如果你的工作薄已经保存,下面公式可以得到单元格所在工作表名: =RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename"))) 十三、相同格式多工作表汇总求和方法 假定同一工作薄有SHEET1至SHEET100共100个相同格式的工作表需要汇总求和,结果放在SHEET101工作表中,请在SHEET101的A1单元格输入: =SUM( 单击SHEET1标签,按住Shift键并单击SHEET100标签,单击A1单元格,再输入: ) 此时公式看上去内容如下: =SUM('SHEET1: SHEET100'! A1) 按回车后公式变为 =SUM(SHEET1: SHEET100! A1) 所以,最简单快捷的方法就是在SHEET101的A1单元格直接输入公式: =SUM('SHEET1: SHEET100'! A1) 然后按回车。 十四、如何判断单元格里是否包含指定文本? 假定对A1单元格进行判断有无"指定文本",以下任一公式均可: =IF(COUNTIF(A1,"*"&"指定文本"&"*")=1,"有","无") =IF(ISERROR(FIND("指定文本",A1,1)),"无","有") 十五、如何替换EXECL中的通配符“? ”和“*”? 在EXECL中查找和替换时,? 代表任意单个字符,*代表任意多个字符。 如果要将工作表中的"? "和"*"替换成其他字符,就只能在查找框中输入~? ~和~*~才能正确替换。 十六、EXECL中排名次的两种方法: (一)、用RANK()函数: 假定E列为成绩,F列为名次,F2单元格公式如下: =RANK(E2,E: E) 这种方法,分数相同时名次相同,随后的名次将空缺。 例如: 两个人99分,并列第2名,则第3名空缺,接下来是第4名。 (二)、用排序加公式: 1、先在后面用填充柄增加一列(假定为G列)与行号相同的序列数。 2、将全表按分数列(E列)排序,在F2单元格输入1,在F3单元格输入公式: =IF(E3=E2,F2,F2+1) 将公式向下复制到相应行。 3、选定公式列,点“复制”,在F1单元格点右键,点“选择性粘贴/数值”,点“确定”。 4、将全表按最后一列(G列)排序,删除最后一列。 第二种方法分数相同的名次也相同,不过随后的名次不会空缺。 十七、什么是单元格的相对引用、绝对引用和混合引用? 相对引用、绝对引用和混合引用是指在公式中使用单元格或单元格区域的地址时,当将公式向旁边复制时,地址是如何变化的。 具体情况举例说明: 1、相对引用,复制公式时地址跟着发生变化,如C1单元格有公式: =A1+B1 当将公式复制到C2单元格时变为: =A2+B2 当将公式复制到D1单元格时变为: =B1+C1 2、绝对引用,复制公式时地址不会跟着发生变化,如C1单元格有公式: =$A$1+$B$1 当将公式复制到C2单元格时仍为: =$A$1+$B$1 当将公式复制到D1单元格时仍为: =$A$1+$B$1 3、混合引用,复制公式时地址的部分内容跟着发生变化,如C1单元格有公式: =$A1+B$1 当将公式复制到C2单元格时变为: =$A2+B$1 当将公式复制到D1单元格时变为: =$A1+C$1 规律: 加上了绝对地址符“$”的列标和行号为绝对地址,在公式向旁边复制时不会发生变化,没有加上绝对地址符号的列标和行号为相对地址,在公式向旁边复制时会跟着发生变化。 混合引用时部分地址发生变化。 注意: 工作薄和工作表都是绝对引用,没有相对引用。 十八、求某一区域内不重复的数据个数 例如求A1: A100范围内不重复数据的个数,某个数重复多次出现只算一个。 有两种计算方法: 一是利用数组公式: =SUM(1/COUNTIF(A1: A100,A1: A100)) 输入完公式后按Ctrl+Shift+Enter键,让它自动加上数组公式符号"{}"。 二是利用乘积求和函数: =SUMPRODUCT(1/COUNTIF(A1: A100,A1: A100)) 十九、EXECL中如何动态地引用某列的最后一个单元格? 在SHEET2中的A1单元格中引用表SHEET1中的A列的最后一个单元格中的数值(SHEET1中A列的最后一个单元格的数值不确定,随时会增加行数): =OFFSET(Sheet1! A1,COUNTA(Sheet1! A: A)-1,0,1,1) 或者: =INDIRECT("sheet1! A"&COUNTA(Sheet1! A: A)) 注: 要确保你SHEET1的A列中间没有空格。 二十、如何在一个工作薄中建立几千个工作表 右击某个工作表标签,点"插入",选择"工作表",点"确定",然后按住Alt+Enter键不放,你要多少个你就按住多久不放,你会看到工作表数量在不断增加,几千个都没有问题。 排名问题 在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 解答
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EXECL 超级 实用技巧