前段时间做数据分析的时候,遇到很多报表文件需要处理,在此期间学习了很多Excel操作,特此做笔记回顾。

Excel宏录制

  • 打开开发者工具

    打开Excel文件,选择”文件”--》“选项”--》“自定义功能区”--》勾选“开发者工具”

  • 打开录制宏,操作完毕停止录制

数据透视表:打开Excel文件--》选择“插入”--》“数据透视图”
  根据需要把列加入到筛选器、列、行、值选框中。

  筛选器:按条件筛选过滤需要的数据

  列:数据以列的方式展示

  行:数据以行的方式展示

  值:对值字段设置进行求和、计数、平均值、最大值、最小值、乘积等

Excel合并多个页签到一个页签:选择“开发工具”--》“Visual Basic”--》ThisWorkbook--》F5或者点击执行--》得到“汇总工作表”

  1. Sub Comb()
  2.  
  3. Dim i%
  4.  
  5. On Error Resume Next
  6.  
  7. Sheets().Select
  8.  
  9. Worksheets.Add '新建一个工作表
  10.  
  11. Sheets().Name = "汇总工作表" '对新建工作表重命名
  12.  
  13. For i = To Sheets.Count 'For循环,遍历所有工作表
  14.  
  15. Sheets(i).Activate '激活工作表
  16.  
  17. Range("a1").Select
  18.  
  19. Selection.CurrentRegion.Select '选择活动工作表数据区域
  20.  
  21. Selection.Copy Destination:=Sheets().Range("a65536").End(xlUp).Offset() '粘贴到汇总工作中
  22.  
  23. Next
  24.  
  25. MsgBox ("工作表已全部合并到指定工作表中!") '弹窗提示合并完成
  26.  
  27. End Sub

合并多个Excel文件到一个文件:在当前目录新建文件,文件类型必须一致,Visual Basic执行代码(文件后缀必须一致,暂且只支持集合第一个页签)

  1. sub 合并当前目录下所有工作簿的全部工作表()
  2. dim mypath, myname, awbname
  3. dim wb as workbook, wbn as string
  4. dim g as long
  5. dim num as long
  6. dim box as string
  7. application.screenupdating = false
  8. mypath = activeworkbook.path
  9. myname = dir(mypath & "\" & "*.xls")
  10. awbname = activeworkbook.name
  11. num =
  12. do while myname <> ""
  13. if myname <> awbname then
  14. set wb = workbooks.open(mypath & "\" & myname)
  15. num = num +
  16. with workbooks().activesheet
  17. .cells(.range("a65536").end(xlup).row + , ) = left(myname, len(myname) - )
  18. for g = to sheets.count
  19. wb.sheets(g).usedrange.copy .cells(.range("a65536").end(xlup).row + , )
  20. next
  21. wbn = wbn & chr() & wb.name
  22. wb.close false
  23. end with
  24. end if
  25. myname = dir
  26. loop
  27. range("a1").select
  28. application.screenupdating = true
  29. msgbox "共合并了" & num & "个工作薄下的全部工作表。如下:" & chr() & wbn, vbinformation, "提示"
  30. end sub

Excel里面的宏功能非常强大,可编程操作,后面慢慢探究。

Excel统计列内元素是否重复

  =IF(COUNTIF(B:B,B2)>1,"重复","")

备注:
作者:Shengming Zeng
博客:http://www.cnblogs.com/zengming/
严正声明:
1.由于本博客部分资源来自互联网,版权均归原作者所有。转载的目的是用于学术交流与讨论学习,将不对任何资源负法律责任。
2.若无意中侵犯到您的版权利益,请来信联系我,我会在收到信息后会尽快给予处理!
3.所有资源内容仅供学习交流之用,请勿用作商业用途,谢谢。
4.如有转发请注明出处,来源于http://www.cnblogs.com/zengming/ ,谢谢合作。

Excel宏录制、数据透视表、合并多个页签的更多相关文章

  1. pandas实现excel中的数据透视表和Vlookup函数功能

    在孩子王实习中做的一个小工作,方便整理数据. 目前这几行代码是实现了一个数据透视表和匹配的功能,但是将做好的结果写入了不同的excel中, 如何实现将结果连续保存到同一个Excel的同一个工作表中?还 ...

  2. 关于Excel中的数据透视表没有数据

    在你想要使用数据透视表的时候,区域一定要正确 然后把你想要的数据按行列排好 如果没有数据 请点击刷新数据……刷新数据……刷新数据 我竟然被这个睿智的问题困扰好久……

  3. 【转】关于C#使用Excel的数据透视表的例子

    收到消息,下星期又有导出 Excel 报表的代码要写.心想,不就是 OleDb 先 CREATE 表, 然后 INSERT 么?都是体力活啊...... 结果拿到纸张的报表,我就悲剧了.报表的结构,像 ...

  4. ASP.NET实现类似Excel的数据透视表

    代码: /Files/zhuqil/Pivot.zip 数据透视表提供的数据三维视图效果,在Microsoft Excel能创建数据透视表,但是,它并不会总是很方便使用Excel.您可能希望在Web应 ...

  5. Excel学习 -- 数据透视表功能

    Excel -- 数据透视表基础 数据透视表(Pivot Table)是一种交互式的表,可以进行某些计算,如求和与计数等.所进行的计算与数据跟数据透视表中的排列有关.    之所以称为数据透视表,是因 ...

  6. pandas常用操作详解(复制别人的)——数据透视表操作:pivot_table()

    原文链接:https://www.cnblogs.com/Yanjy-OnlyOne/p/11195621.html 一文看懂pandas的透视表pivot_table 一.概述 1.1 什么是透视表 ...

  7. Excel 批量快速合并相同的单元格:数据透视表、宏代码、分类汇总

    Excel 批量快速合并相同的单元格   在制作Excel表格的时候,为了使得自己制作的报表更加简洁明了,方便查阅,经常需要合并很多相同的单元格,如果有几千几万条记录需要合并的话,真的会让人发疯.怎样 ...

  8. VSTO学习笔记(十四)Excel数据透视表与PowerPivot

    原文:VSTO学习笔记(十四)Excel数据透视表与PowerPivot 近期公司内部在做一种通用查询报表,方便人力资源分析.统计数据.由于之前公司系统中有一个类似的查询使用Excel数据透视表完成的 ...

  9. 我们无法找到服务器加载工作簿的数据模型"的 SharePoint 网站,当您刷新 Excel 2013 工作簿中的数据透视表时出错

    假定您使用 Analysis Services 源在 Microsoft Excel 2013 中创建数据透视表.将 Excel 工作簿上载到 Microsoft SharePoint 网站中.当您尝 ...

随机推荐

  1. event对象的clientX,offsetX,screenX,pageX

    chrome: e.pageX——相对整个页面的坐标 e.layerX——相对当前坐标系的border左上角开始的坐标 e.offsetX——相对当前坐标系的border左上角开始的坐标 e.clie ...

  2. coursera-斯坦福-机器学习-吴恩达-笔记week4

    1 神经网络的提出 线性回归和逻辑回归能很好的解决特征变量较少的问题,但对于变量数量增加的复杂非线性问题,单纯增加二次项和三次项等特征项的方法计算代价太高. 2 神经网络算法 2.1 神经元 模拟神经 ...

  3. centos重置密码

    重置root密码:   法一:                1.开机按e                2.将linux 16后的ro改为rw init=/sysroot/bin/          ...

  4. C++ allocator

    C++ allocator http://www.cnblogs.com/wpcockroach/archive/2012/05/10/2493564.html 说一说C++里的allocator.我 ...

  5. socket练习--ssh

    服务器端: # -*-coding:utf-8-*- # Author:sunhao import socket import os server = socket.socket() ip_port ...

  6. java学习笔记41(数据库连接池 C3p0连接池)

    在之前的学习中,我们发现,我们需要频繁的创建连接对象,用完之后还需要在关闭资源,因为这些连接对象都是占资源的,但是又不得不创建,比较繁琐,为了解决这种情况,Java出现了数据库连接池: 数据库连接池的 ...

  7. 剑指Offer 7. 斐波那契数列 (递归)

    题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). n<=39 题目地址 https://www.nowcoder.com/prac ...

  8. win10下VM 中centos 安装共享文件

    一.  安装VMware Tools VMwareTools的安装脚本是要使用到perl的,而CentOS 6自身不带perl,所以需要自己安装.可以自己下载源代码编译,也可以直接用yum来安装. y ...

  9. 【转载】 星际争霸2的AI环境搭建

    原文地址: https://blog.csdn.net/qq_40244666/article/details/80957644 作者:BOY_IT_IT 来源:CSDN -------------- ...

  10. django中向用户发送邮件信息

    发送邮件来让用户激活,因此,邮件中需要包含用户信息.但用户信息需要加密才可以.因此加密采用的是itsdangerous中的TimedJSONWebSignatureSerializer. 参考链接:h ...