表格统计表怎么制作
在日产工作中,经常要查询是否合格,占比多少,第一和前三有多少,是否合格,这是工作的一部分,刚开始的时候也是每天查询一次,像是任务一样,只要交了就行,但长期的发展来说,我不仅需要以前的数据,还要进行...
2024.11.22小组里有人问标题,确认后,答复是“有多个表格,只有一个表格里有一个张三。”这个通过“删除重复项”,或函数“countif”等,也能较快实现的,但要“一秒”,那只能通过程序了。这里用vba
那我的思路就是,先把所有数据都汇集到一起,然后用循环(本人也是小白,所以花了一天网上查阅和学习,很多说用字典的,还不会),把每个数据都两两比对一遍。其中需要注意以下几点:
1.去空格,主要针对姓名,输入的时候,特别单名,既有可能输成“张三”,也有可能输成“张 三”;
2.本身是空格的,还有数据自身就不要比较了
3.有重复的要标记起来,这里用红底色。
现在创建示例,一个文件夹下面,设了三个文件(工作簿),表1、表2、表3
表1:
张三
李四
王五
表2:
张三三
赵六
孙七
钱多多
孙猴子
小傻瓜
张 三
表3:
张 三
周八
吴九
李四
同时新建一个“一键查重”的工作簿,并输入代码
代码如下:
Sub 汇集数据()Dim path As StringDim file As StringDim i As IntegerDim m As IntegerDim n As IntegerDim c As RangeDim d As Rangei = 1path = ThisWorkbook.pathChDir (path)file = Dir("")Do While file ""If file "一秒查重.xlsm" ThenWorkbooks.Open (path & "\" & file)Columns(1).SelectSelection.CopyWorkbooks(path & "\" & "一秒查重.xlsm").ActivateColumns(i).SelectActiveSheet.Pastei = i + 1End Iffile = DirLoopWorksheets(1).UsedRange.SelectSelection.CopySelection.replace What:=" ", Replacement:=""Worksheets(1).UsedRange.SelectSelection.Interior.ColorIndex = iFor Each c In SelectionFor m = 1 To Selection.Columns.CountFor n = 1 To Selection.Rows.CountIf c "" ThenIf c.Row m Or c.Column n ThenIf c.Value = Cells(m, n).Value Thenc.Interior.ColorIndex = 3Cells(m, n).Interior.ColorIndex = 3End IfEnd IfEnd IfNextNextNext cEnd Sub大体分成四个区域,实现三部分功能,一是变量定义区,二是数据汇集区,三是空格去除区,四是循环查重区。
最终效果如下
张三
张三三
张三
李四
赵六
周八
王五
孙七
吴九
钱多多
孙猴子
小傻瓜
张三
李四
原始表式不一样,或者重复标识要求不一样,代码不一定完全适用。
在日产工作中,经常要查询是否合格,占比多少,第一和前三有多少,是否合格,这是工作的一部分,刚开始的时候也是每天查询一次,像是任务一样,只要交了就行,但长期的发展来说,我不仅需要以前的数据,还要进行...
2024.11.22现在的技术发展得飞快,我们已经进入了一个数字化的时代,数据处理成了日常工作中不可或缺的一部分。而在这个数字化的浪潮中,表格识别工具可谓是一颗闪亮的明星。以前,我们得手动地读取表格中的数据,然后费尽心思...
2024.11.22老板发给我一个Excel表,里面有很多个子表,让我制作一个工作表目录,下表是我模拟的数据表,有15个子sheet我们要批量的提取所有工作表名,并且建立超链接,点一下就可以至对应的表格制作过程也很简单,...
2024.11.22根据上期粉丝评论,问我Excel表格的求和方式,我上期只出了sum函数的便捷方式,忘记做求和方式统计了,本期补上,看下大家用到有哪些。方法一:算术加法。选择一个单元格,输入“=”后写入各单元格相加。这...
2024.11.22像这种带折叠/展开功能的表格知道是怎么做的吗?本期教程给大家分享2个方法,一种是用“分类汇总”功能自动添加,另一种是手动添加,喜欢的朋友可以收藏起来。❶使用分类汇总自动添加折叠按钮选中供应商这一列任意...
2024.11.24