精华内容
下载资源
问答
  • Excel VBA 开发入门

    2012-09-19 00:52:06
    最近公司有个需求,就是把多个文档中的内容合并到一个文档中,这个有多个解决方案,在本文采用的是VBA编程的方法,用Microsoft Excel 2007进行开发。  Visual Basic For Application(VBA)是微软开发出来的应用...

        最近公司有个需求,就是把多个文档中的内容合并到一个文档中,这个有多个解决方案,在本文采用的是VBA编程的方法,用Microsoft Excel 2007进行开发。

        Visual Basic For Application(VBA)是微软开发出来的应用程序共享的一种通用的自动化语言,可以看作是VisualBasic 的子集。

        首先,打开Excel,点击左上角的Office按钮--->Excel选项,在常用选项卡中将在功能区显示开发工具选项卡打勾,

      


        然后点确定,Excel的菜单栏上会出现开发工具

        


        点击宏,可以查看宏或者创建一个宏。

      


        创建后进入到VB的编程界面,在这个界面上可以进行VB代码的编写,或者设断点去做调试。

      


        在这个界面上你可以按照自己的需求编写宏,具体可以参考帮助文档,这份官方的参考文档挺详细的,基本上可以搞定大部分问题。菜单栏:帮助-->Microsoft VisualBasic 帮助

      


        还有一个插入控件的功能,可以加入表单控件和ActiveX控件到Excel上并进行类似于桌面应用程序的编程。

      


      


      


        这里有个小技巧,当你不太清楚怎么编写宏的时候,可以返回到Excel界面。在开发工具面板上点击录制宏,

      


      然后进行相应的操作,操作完后点击停止录制,就会产生跟刚才操作相对应的代码,我们可以参考这些代码去编程。

      


      


        那怎么运行宏呢,可以通过下面两种方式去运行吧,直接上图好了。

      


      


      

    展开全文
  •  3.11 使用Union方法合并多个区域  3.12 使用Intersect方法根据重叠区域创建新区域  3.13 使用IsEmpty函数检查单元格是否为空  3.14 使用CurrentRegion属性快速选择数据区域  3.15 使用区域集合返回非连续...
  • excel多表数据合并一直是excel的痛点,面对收集来的上百张表格,如果用户需要一个一个打开复制粘贴...需求:存在多个excel表,每个表存在多个sheet,需要将某一张表中的某个sheet内容明细归集在一起。开发语言pytho...

    excel多表数据合并一直是excel的痛点,面对收集来的上百张表格,如果用户需要一个一个打开复制粘贴耗时耗力,容易出差错。本人集团工作中面对这种问题一直很无力。传统办法是通过vba进行编程实现。但使用python可以更优雅的处理此类问题,而且移植、复用 扩展均可以简单完成。

    需求:存在多个excel表,每个表存在多个sheet,需要将某一张表中的某个sheet内容明细归集在一起。

    开发语言python3,系统win10 64位

    附件内容:excelSummary.py为开发源代码,数据归集小程序1.0.rar为打包好的小程序内有配置文件。

    实现的功能点:

    1、用户可以通过修改配置,可以实现 1.1控制聚合表头所在行,解决用户表头不在第一行的情况。1.2 模糊匹配sheet名称,解决sheet名称不规范问题,如果直接获取第一个可以直接输入*。 1.3控制明细表格所在路径。1.4 用户可以直接填写列名称控制获取对应类,过滤无用列。

    2、获取明细文件夹下的xls或者xlsx文件 填入csv文件中,在csv中是实现增行。注意再一次执行 如果不删除《数据归集.csv》文件,数据再次添加行数,重新执行时注意删除。

    3、由于最终填入的csv文本格式,而非xls格式,这样对内存消耗很小,可以支撑较大数据量的数据归集,也方便excel或者其他程序再处理。

    4、通过pyinstaller 打包成exe, win10 64位用户解压后直接双击exe可直接运行,无需安装python3,通过list和for循环实现,程序文件较小携带方便。

    局限:只做到可多表格中的一个sheet内容  合并增行。还有一种业务行场景要求增列,这个以后试试实现。

    如果有优化建议 bug或者给问题请留言。(新手程序注释不到位,以后有时间再搞搞,有需要讲解的可以留言)。我会继续优化或者扩展这个小程序。比如这个是增行版本,以后可以出增列版本或者单表多sheet合并之类的。

    原创内容,转载请注明。

    展开全文
  • 一说到Excel工作簿内容合并工作簿查询、外部数据源的查询引用的实现,那么很多人第一想法就是使用公式、VBA、Power query。没错,这几确实可以。我本人是一Power query重度依赖者,经常使用PP来做数据查询。...

    82a2d9f34e13918199b08e500807291d.png

    一说到Excel工作簿内容合并、多工作簿查询、外部数据源的查询引用的实现,那么很多人第一想法就是使用公式、VBA、Power query。没错,这几个确实可以。我本人是一个Power query重度依赖者,经常使用PP来做数据查询。可后来慢慢的发现,Power query问题真的很多,比如说占用内存太大、运行非常缓慢。另外,一些低版本的Excel不支持PP,同时WPS也是不支持PP的。这个让我非常头疼,于是不得不找其它办法。于是在不经意间发觉了以下这个一直被忽视的东西:Microsoft Query。于是,我就使用这玩意试着分别连接SQL Server做了一个动态财务的科目汇总表查询,和连接Access做了一个动态查询。效果如下:

    9ed32d5a25bce6c9df73024c0cec1a00.png
    科目汇总查询表

    ba7d42f7eda3dbdff2e640393023ff1c.png
    工程款支付查询表

    以上,两个测试完全实现了使用参数的动态查询。以往,实现这种效果,要么使用VBA、要么使用power query。以下,我们来看一下怎么实现它呢。

    1、打开菜单栏,找到Microsoft Query的

    b3055e6b4528c7783910081257100cfe.png

    2、进入数据源配置界面

    04ab683da7242c99eefd13a60ce92050.png

    这里已经存在了常用的Excel、Access这两种数据源连接方式。但其他的,我们需要单独建立。在此以SQL Serve为例。

    7559cf8a156b47d5b5e3c9b67631e8c3.png

    332d4d676d8791d3aaa4d62809be2ec5.png

    刚才建立的数据源就出现在了列表里面

    8efbc52c8b8c1f9db6a3c2671db3229d.png

    接下来我们来看如何实施查询

    首先,选择一下数据库,然后添加一下需要用到的表

    90e4d04395af8406e42c0bb105866ef0.png

    f710acf35aa1d99e9768fc8cdff5b5cc.png

    以上这个界面,作为使用过Foxpro的人应该不陌生,果然是上古的杰作。我们看到,从数据添加的表,自带了表间关系。这个非常省心,如果是Excel查询,那么就得自己建立表间关系了。

    接下来,我们把需要用到的的字段全部添加到列表里面,因为有表间关系,会自动做数据参照。查询器里面的好多细节操作,在此就不过多描述了。

    现在我们来看一下,查询器自己生成的 SQL语句

    1629672a29aa3e07fbc213204c3dec50.png

    在使用过程中,因为需要做动态查询,因此加入了查询参数,然后这部分参数又被绑定到了工作表的单元格上。只要在这部分单元格就可以作为查询条件来使用,只要这部分单元格数值有变动,那么查询就会同步更新,根本不需要刷新或者添加按钮来执行查询。具体如下:

    b91440012a020e0f62a0598d1a00bd15.png

    现在,让我们来看看,做出同样效果的东西,VBA和Power Query的工作量:

    首先,来看VBA的工作量:

    1、单独设计的查询界面

    6e77fe50181720b8ecad554ce660aa3e.png

    2、部分VBA代码

    7b3b31d11074f248e7ae6a3778b76715.png

    至于power query稍微好一些,在引入数据的时候一句SQL语句就能解决,但是这货对于使用参数做动态查询实在太麻烦,需要合并好几几次查询才行。

    最后,对比Microsoft Query、VBA、Power query。可以说Power Query应该是Microsoft Query 的升级版,但是PQ使用的是M语言,在使用便利性和性能上不占优势,随便一个查询动辄就是几个G的内存占用,分分钟就死机。使用过多以后,感觉目前的PQ,还真只是一个玩具,它还有很大的改进空间。而VBA,这个看似无所不能,但正是无所不能才更加不那么好控制。至于Microsoft Query而言,并非没有缺点,最大的缺点我认为是多表连接查询时候没法使用左连接、右连接以及外部连接,只能使用内部或者说等值连接。所以,对于日常的合并工作表,还是建议使用MQ。

    展开全文
  • 隐藏选项卡,这个插件还模拟了一个Excel2003样式的菜单,目的就是方便那些从Excel2003转向使用2007或2010版的朋友使用。 ===================================================================================...
  • 【EXCEL比较工具】 打开并比较任意两个EXCEL文档工作表内容之间的差异,可对比出哪些内容作了修改。 【工具箱选项】 集成工具箱的基本选项设置。基本分为<显示设置区><隐藏功能区><自动备份区><工作表设置区><功能...
  • 支持中英文显示与繁简体操作系统,支持Wista/Win7系统及XP界面、拥有20多款华丽的皮肤界面,支持Excel2007全面隐藏选项卡,这个插件还模拟了一个Excel2003样式的菜单,目的就是方便那些从Excel2003转向使用2007或2010...
  • ║ 【条件背景】 【插入批注背景】 【读取批注内容】 【数字大写转小写】 【多个休闲动画】 ║ ║ 【条件背景选择】 【插入行数】 【监控单元格修改】 【筛选复制可见】 【关闭所有动画】 ║ ║ 【高级背景】 【注解...
  • EXCEL集成工具箱V6.0

    2010-09-11 01:44:37
    Excel集成工具箱6.0是利用VBA(Visual Basic for Applications)语言编写的增强应用型插件。包括160菜单功能和100左右 自定义函数,集160工具于一身,但体积小于15MB。当安装集成工具箱后,如果您使用Excel ...
  • 中文版Excel.2007图表宝典 2/2

    热门讨论 2012-04-06 19:01:36
    11.5.3 使用来自多个表单的数据/313 第12章 避免常见的制图错误/317 12.1 了解观众/317 12.2 图表精确度/318 12.2.1 根据上下文的数据绘图/319 12.2.2 夸大差异或者相似处/320 12.2.3 以百分比变化和实际变化的形式...
  • 隐藏选项卡,这个插件还模拟了一个Excel2003样式的菜单,目的就是方便那些从Excel2003转向使用2007或2010版的朋友使用。 ===================================================================================...
  • arcgis工具

    2012-10-22 22:37:31
    Merge,把多个图斑合并到其中一个图斑上并继承它的属性,原图斑变化;Split用于间断线段,但得知道具体的长度,如果不知道那么长度或者没必要那么精确就直接用Eeitor工具栏的Split tool工具 ) 11. 连接外界属性...
  • Kofler还是Definitive Guide to Excel VBA第2版的作者。 目录 封面 -23 封底 -22 扉页 -21 版权 -20 版权声明 -19 译者序 -18 前言 -16 目录 -11 第一部分 入门 1 第1章 什么是MySQL 2 1.1 什么是数据库 2 1.1.1...
  • ①对Excel进行深度开发,利用VBA语言编写程序,自设功能,自定义函数,自制菜单和按钮; ②系统含有二十多个子软件; ③根据学校的实际需要设置有关功能,是教育管理部门、学校领导、教务人员、班主任、教师的得力...
  • 25711.5 更新表中多个记录的值 25811.6 测试级联删除和更新 26111.6.1 创建测试表和建立关系 26111.6.2 测试级联删除 26211.6.3 测试级联更新 26211.7 疑难解答 26311.8 现实世界—操作查询之外的选择 26311.8.1 ...
  • 25711.5 更新表中多个记录的值 25811.6 测试级联删除和更新 26111.6.1 创建测试表和建立关系 26111.6.2 测试级联删除 26211.6.3 测试级联更新 26211.7 疑难解答 26311.8 现实世界—操作查询之外的选择 26311.8.1 ...
  • 25711.5 更新表中多个记录的值 25811.6 测试级联删除和更新 26111.6.1 创建测试表和建立关系 26111.6.2 测试级联删除 26211.6.3 测试级联更新 26211.7 疑难解答 26311.8 现实世界—操作查询之外的选择 26311.8.1 ...
  • 1246.2.3 在多个字段上排序数据 1256.2.4 删除表排序次序和解冻列 1256.3 查找表中的匹配记录 1266.4 自动地替换匹配的字段值 1276.5 筛选表数据 1286.5.1 按选定内容筛选 1286.5.2 按窗体筛选 1306.5.3 高级筛选和...
  • 5-3 多个数据表的窗体 5-3-1 建立含有子窗体的窗体 5-3-2 调整子窗体的大小与位置 5-3-3 设定窗体的数据编辑状态 5-3-4 设定控件的数据编辑属性 5-3-5 在窗体中建立查询对象 5-4 图表式的窗体 5-4-1 建立...
  • 5-3 多个数据表的窗体 5-3-1 建立含有子窗体的窗体 5-3-2 调整子窗体的大小与位置 5-3-3 设定窗体的数据编辑状态 5-3-4 设定控件的数据编辑属性 5-3-5 在窗体中建立查询对象 5-4 图表式的窗体 5-4-1 建立...
  • 11.3.3 对一个对象使用多个表 455 11.4 从模型中生成数据库 457 11.5 小结 460 第12章 使用sql server 461 12.1 sql server compact 462 12.1.1 连接sql server compactedition数据库 463 12.1.2 ...
  • 11.3.2 对多个对象使用一个表 453 11.3.3 对一个对象使用多个表 455 11.4 从模型中生成数据库 457 11.5 小结 460 第12章 使用sql server 461 12.1 sql server compact 462 12.1.1 连接sql server ...
  • 3.2 接口................................................ 129 3.2.1 对象接口................................129 3.2.2 辅助接 U ................................130 3.3 抽象性.............................

空空如也

空空如也

1 2
收藏数 24
精华内容 9
关键字:

多个excel合并内容vba语言