http://blog.tajyw.com/user1/yehuileng/archives/2008/3582.html 一、求字符串中某字符出现的次数: 例:求A1单元格中字符"a"出现的次数:=LEN(A1)-LEN(SUBSTITUTE(A1,"a","")) 二、如何在不同工作薄之间复制宏: 1、打开含有宏的工作薄,点“工具/宏(M)…”,选中你的宏,点“编辑”,这样就调出了VB编辑器界面。2、点“文件/导出文件”,在“文件名”框中输入一个文件名(也可用默认的文件名),注意扩展名为“.bas”,点“保存”。3、将扩展名为“.bas”的文件拷贝到另一台电脑,打开EXCEL,点“工具/宏/VB编辑器”,调出VB编辑器界面,点“文件/导入文件”,找到你拷贝过来的文件,点“打开”,退出VB编辑器,你的宏已经复制过来了。 三、如何在EXCEL中设置单元格编辑权限(保护部分单元格) 1、先选定所有单元格,点"格式"->"单元格"->"保护",取消"锁定"前面的"√"。2、再选定你要保护的单元格,点"格式"->"单元格"->"保护",在"锁定"前面打上"√"。3、点"工具"->"保护"->"保护工作表",输入两次密码,点两次"确定"即可。 四、excel中当某一单元格符合特定条件,如何在另一单元格显示特定的颜色比如:A1〉1时,C1显示红色0<A1<1时,C1显示绿色A1<0时,C1显示黄色方法如下: 1、单元击C1单元格,点“格式”>“条件格式”,条件1设为:公式 =A1=1 2、点“格式”->“字体”->“颜色”,点击红色后点“确定”。条件2设为:公式 =AND(A1>0,A1<1) 3、点“格式”->“字体”->“颜色”,点击绿色后点“确定”。条件3设为:公式 =A1<0 点“格式”->“字体”->“颜色”,点击黄色后点“确定”。4、三个条件设定好后,点“确定”即出。 五、EXCEL中如何控制每列数据的长度并避免重复录入 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列无的数据标记为红色字体。 七、在EXCEL中建立下拉列表按钮选定你要设置下拉列表的单元格, 点“数据”->“有效性”->“设置”,在“允许”下面选择“序列”,在“来源”框中输入你的下拉列表内容,各项之间用半角逗号隔开,如:A,B,C,D 选中“提供下拉前头”,点“确定”。 八、阿拉伯数字转换为大写金额(最新收集)假定你要在A1输入阿拉佰数字,B1转换成中文大写金额(含元角分),请在B1单元格输入如下公式: =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(IF(A1>-0.5%,,"负")&TEXT(INT(FIXED(ABS(A1))),"[dbnum2]")&TEXT(RIGHT(FIXED(A1),2),"[dbnum2]元0角0分;;元"&IF(ABS(A1)>1%,"整",)),"零角",IF(ABS(A1)<1,,"零")),"零元",),"零分","整") 九、EXCEL中怎样批量地处理按行排序假定有大量的数据(数值),需要将每一行按从大到小排序,如何操作?由于按行排序与按列排序都是只能有一个主关键字,主关键字相同时才能按次关键字排序。所以,这一问题不能用排序来解决。解决方法如下: 1、假定你的数据在A至E列,请在F1单元格输入公式: =LARGE($A1:$E1,COLUMN(A1)) 用填充柄将公式向右向下复制到相应范围。 你原有数据将按行从大到小排序出现在F至J列。如有需要可用“选择性粘贴/数值”复制到其他地方。 注:第1步的公式可根据你的实际情况(数据范围)作相应的修改。如果要从小到大排序,公式改为:=SMALL($A1:$E1,COLUMN(A1)) 十、巧用函数组合进行多条件的计数统计例: 第一行为表头,A列是“姓名”,B列是“班级”,C列是“语文成绩”,D列是“录取结果”,现在要统计“班级”为“二”,“语文成绩”大于等于104,“录取结果”为“重本”的人数。统计结果存放在本工作表的其他列。公式如下:=SUM(IF((B2:B9999="二")*(C2:C9999>=104)*(D2:D9999="重本"),1,0))输入完公式后按Ctrl+Shift+Enter键,让它自动加上数组公式符号"{}"。 十一、EXCEL中某个单元格内文字行间距调整方法。 当某个单元格内有大量文字时,很多人都觉得很难将其行间距按自己的要求进行调整。现介绍一种方法可以让你任意调整单元格内文字的行间距:右击单元格,点"设置单元格格式"->"对齐",将"水平对齐"选择"靠左",将"垂直对齐"选择"分散对齐",选中"自动换行",点“确定”。你再用鼠标将行高根据你要求的行距调整到适当高度即可。注:绿色内容为关键点,很多人就是这一点设置不对而无法调整行间距。 十二、如何在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)),"无","有") 十五、如何替换EXCEL中的通配符“?”和“*”?在EXECL中查找和替换时,?代表任意单个字符,*代表任意多个字符。如果要将工作表中的"?"和"*"替换成其他字符,就只能在查找框中输入~?~和~*~才能正确替换。另外如果要替换~本身,在查找框中要输入~~才行。 十六、EXCEL中排名次的两种方法:(一)、用RANK()函数: 假定E列为成绩,F列为名次,F2单元格公式如下: =RANK(E2,E:E) 这种方法,分数相同时名次相同,随后的名次将空缺。 例如:两个人99分,并列第2名,则第3名空缺,接下来是第4名。(二)、用公式排序(中国式排名): 假定成绩在E列,请在F2输入公式: =SUM(IF(E$2:E$1000>E2,1/COUNTIF(E$2:E$1000,E$2:E$1000)))+1 公式以Ctrl+Shift+Enter三键结束。 第二种方法分数相同的名次也相同,不过随后的名次不会空缺。 十七、什么是单元格的相对引用、绝对引用和混合引用?相对引用、绝对引用和混合引用是指在公式中使用单元格或单元格区域的地址时,当将公式向旁边复制时,地址是如何变化的。 具体情况举例说明: 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 规律:加上了绝对地址符“$”的列标和行号为绝对地址,在公式向旁边复制时不会发生变化,没有加上绝对地址符号的列标和行号为相对地址,在公式向旁边复制时会跟着发生变化。混合引用时部分地址发生变化。注意:工作薄和工作表都是绝对引用,没有相对引用。技巧:在输入单元格地址后可以按F4键切换“绝对引用”、“混合引用”和“相对引用”状态。 十八、求某一区域内不重复的数据个数例如求A1:A100范围内不重复数据的个数,某个数重复多次出现只算一个。 有两种计算方法:一是利用数组公式:=SUM(1/COUNTIF(A1:A100,A1:A100))输入完公式后按Ctrl+Shift+Enter键,让它自动加上数组公式符号"{}"。二是利用乘积求和函数:=SUMPRODUCT(1/COUNTIF(A1:A100,A1:A100))十九、EXCEL中如何动态地引用某列的最后一个单元格?在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键不放,你要多少个你就按住多久不放,你会看到工作表数量在不断增加,几千个都没有问题。 二十一、如何知道一个工作薄中有多少个工作表方法一: 点"工具"->"宏"->"VB编辑器"->"插入"->"模块",输入如下内容: Sub sheetcount() Dim num As Integer num = ThisWorkbook.Sheets.Count Sheets(1).Select Cells(1, 1) = num End Sub 运行该宏,在第一个(排在最左边的)工作表的A1单元格中的数字就是sheet的个数。 方法二: 按Ctrl+F3(或者点"插入"->"名称"->"定义"),打开"定义名称"对话框 定义一个X "引用位置"输入:=get.workbook(4) 点"确定"。 然后你在任意单元格输入=X 出来的结果就是sheet的个数。 二十二、一个工作薄中有许多工作表如何快速整理出一个目录工作表 1、用宏3.0取出各工作表的名称,方法: Ctrl+F3出现自定义名称对话框,取名为X,在“引用位置”框中输入:=MID(GET.WORKBOOK(1),FIND("]",GET.WORKBOOK(1))+1,100) 确定 2、用HYPERLINK函数批量插入连接,方法: 在目录工作表(一般为第一个sheet)的A2单元格输入公式:=HYPERLINK("#'"&INDEX(X,ROW())&"'!A1",INDEX(X,ROW())) 将公式向下填充,直到出错为止,目录就生成了。 |