标签归档:excel
Excel统计单元格内字符出现次数
今天遇到一个例子,要统计Excel单元格内某字符出现的次数,具体使用公式如下: =LEN(计算出现某字符的字符串或单元格)-LEN(SUBSTITUTE(计算出现某字符的字符串或单元格,要查找的字符,””)) 意思是替换前的字符串字节数减去把查找到的字符替换为空(不是空格,是删除了)后字符串的字节数,就是被替换掉的字符数。
Excel查找和引用函数应用手记
每月月初,又到出上月报表时间了,Excel还是很强大的,很多功能不是Excel没有,而是我们没学会。学点基础编程还是有好处的,这不今天又学到一招。 遇到这么个情况: sheet1表格中A列为订单号,序号为1~300,B列为订单数量 sheet2表格中A列为订单号,B列为对应出库数据,但是sheet2中可能只有200行数据,且这200个订单号均包含在sheet1表格中A列300个数据中,是这300个订单数据的子集,但是这200个订单号是随机的,没有连续性,也没有规律性。 同样Sheet3表格中A列为订单号,B列为对应入库数据,Sheet3中有可能只有180个数据,和Sheet2表格一样,这180个订单号也是Sheet1中300个订单的子集,订单号随机,没有连续性和规律性。 现在报表上要求,把这3个工作表的数据汇总到1个表格当中去,做一张新的工作表,A列为订单号,B列为订单数量,C列为出库数量,D列为入库数量,如果没有出库数据和入库数据的订单则默认为0。 这个问题说麻烦很麻烦,一般人的默认做法无非是排序后,再想办法复制粘贴,这也是我很早以前用过的旧办法,费时费力,遇到跳号的数据还容易出错。我一直想着,把这些数据想办法导入到同一个数据库中,然后再把数据库列出来,应该是最有效的办法,不过我没学过数据库,还不太会用SQL语句,所以也只能一愁莫展了。 不过,这两天在网上搜索又琢磨出一个办法,用Excel的2个函数就可以实现。
Excel对筛选结果计数的简单方法
日常工作使用Excel过程中,经常遇到需要对筛选结果进行计数的情况。 我以前曾经写过一篇文章Excel筛选后怎样计算筛选结果的行数?,文章里提到subtotal 分类汇总函数可以对筛选出来的结果进行复杂的数据统计。 最近一段时间在看公开课《编程方法学》,本月做月生产报表再次遇到这个问题的时候,突然想到老外公开课里讲到的一句话,大意是计算机能够处理的所有问题都可以用数学思维去解决。 计数实际上就是简单1+1+1+……+1的数学问题,想到这里,我觉得用subtotal函数去统计筛选结果的行数有点牛刀小用了。对于很多人来说,能记住subtotal这个复杂的函数名称,就已经不是件非常容易的事情了,更别说记住subtotal函数里面的参数值的意义了。因此,我耍了点小聪明,想到一个更简单的计数方法。 Excel筛选完成后,任意找一空白列,从筛选结果的第一行开始填充数字1,一直下拉数字1到筛选结果最后一行,注意要使用复制填充,不要使用序列填充哦,保证该列中每一行的数字都是1,然后选中这一列,右下角状态栏里就可以显示出该列的和,这个和值不就是我们想要计数的结果么? 这个方法其实够笨,但是很好用,比用函数方便多了。 不过这种方法也有一定的局限性,计数的结果是包含隐藏行数的,因为在下拉填充时,即便是隐藏行,也是会自动填充数值1的,计算的时候也就把隐藏行数的值算进去了。如果想排除隐藏行数,没办法,还得去学着用subtotal函数。
Excel两列比较
接到任务,要求在一天内出一份十分复杂的Excel报表,其中有一步操作要比较两列的值.这功能不常用,记录之,备忘。 假如你要比较A列与B列数据是否重复,应该有三种结果(即AB皆有,A有B无,B有A无),可在C列存放A有B无的数据,在D列存放B有A无的数据,方法如下: 1、在C1单元格输入公式: =IF(COUNTIF($B:$B,A1)=0,A1,””) 2、在D1单元格输入公式: =IF(COUNTIF($A:$A,B1)=0,B1,””) 将两个公式用填充柄向下复制到相应的行即可.
Excel数据有效性跨表引用的解决
文章来源:Excelhome 为了防止数据的误输,我们需要限制数据录入格式,这就要用到数据有效性设置。 一、如何设定有效性 1、在设定有效性之前,要选择数据区域,否则仅对当前单元格进行设置。 2、点击EXCEL的“数据”-“有效性”菜单,可弹出“数据有效性”设置窗口。 3、有效性有“整数”“小数”“序列”等共8种。 今天这里只讲解“序列”型,并且重点放在跨表引用上。 二、“序列”型设置 1、序列设置格式1:手工输入序列值 使用英文逗号隔开的文本,被认为是序列,如“a,b,c,d,e”。 2、序列设置格式2:单元格区域 如=$C$10:$C$16,则将同一工作表下的C10:C16区域的值用作有效性序列。 三、跨表引用的处理 当你使用序列,试图引用其他表时,系统会发出错误提示,并且无法选择其他表。 我们可以使用下述两种办法解决: 1、使用公式 如我要在sheet2的单元格中设置有效性,序列的来源为sheet1的A2:A50区域,则在sheet2的有效性设置中选择序列,然后输入公式:=INDIRECT(“sheet1!$A$2:$A$50″),则可达到目的。 INDIRECT函数,请参阅EXCEL帮助文件。

