精华内容
下载资源
问答
  • Sql = "SELECT 时间,厂家名称,COUNT(CGI) AS 小区数,SUM(VAL(VOLTE语音话务量)) AS 话务量 FROM " & A & " GROUP BY 时间,厂家名称" Set rs = cnn.Execute(Sql) ' Sheets("结果").Cells.ClearContents '清理保存...
    Sub 分厂家统计()
    
    
    Set cnn = CreateObject("adodb.Connection")
    Set rs = CreateObject("adodb.Recordset")
    
    cnn.Open "Provider = Microsoft.ace.Oledb.12.0;Extended Properties =TEXT;Data Source =" & ThisWorkbook.Path & "\"
    
    A = "(select  distinct 时间,厂家名称,CGI,VOLTE语音话务量 from [yy.csv] WHERE VOLTE语音话务量 IS NOT NULL  )"
    Sql = "SELECT 时间,厂家名称,COUNT(CGI) AS 小区数,SUM(VAL(VOLTE语音话务量)) AS 话务量 FROM " & A & " GROUP BY 时间,厂家名称"
    
     Set rs = cnn.Execute(Sql) '
    
      Sheets("结果").Cells.ClearContents       '清理保存数据的区域
         For I = 0 To rs.Fields.Count - 1
           Worksheets("结果").Cells(1, I + 1) = rs.Fields(I).Name
         Next
    Sheets("结果").Range("a2").CopyFromRecordset rs
    rs.Close
    cnn.Close
    Set rs = Nothing
    Set cnn = Nothing
    Worksheets("结果").Activate
    MsgBox ("OK")
    End Sub
    
    
    展开全文
  • VBA常用技巧

    2014-12-21 16:39:28
    技巧153 调用工作表函数求和 12 技巧154 查找最大、最小值 12 技巧155 不重复值的录入 12 技巧156 获得当月的最后一天 12 技巧157 四舍五入运算 12 157-1 极小值修正法 12 157-2 调用工作表函数法 12 技巧158 使用...
  • 浮躁的心静下来,静定“空”心,去感悟真实的时间,静下心,常存感恩之心,做善事,一生无愧。怀平常心,做平常事,日夜安宁。人之欲望不止,一山还比一山高,岂能如愿?看淡纷争,看轻得失,心安即是归处。一杯茶,...

    d8a0b9d78073a5b0537ee9869c85736d.png

    浮躁的心静下来,静定“空”心,去感悟真实的时间,静下心,常存感恩之心,做善事,一生无愧。怀平常心,做平常事,日夜安宁。人之欲望不止,一山还比一山高,岂能如愿?看淡纷争,看轻得失,心安即是归处。一杯茶,满也好,少也好,不要计较其间;浓也好,淡也好,其中自有值得品的味道。逆境时多学习,积累的就是福报,多学习,积累的就是财富。保持快乐的心态,坚定且执着。去学习有用的知识,经营自己,而不是天天混日子,也不是天天熬日子。不管现实有多残忍,我们都要固执地相信,只要顽强的前行,一切阴霾都会吹散在风中。静下心,为后疫情时代做知识的储备。后疫情时代将会是一个全新的世界。在今后更加严峻的存量残杀世界中,为自己的生存进行知识的储备,特别是新知识的储备。为后疫情时代做的必要准备。

    什么是存量残杀?简单而言,在取代OFFICE新的办公软件没有到来之前,谁能把应用做到最为先进,谁就是王者。其中登峰至极的技能非VBA莫属!

    今日继续和大家分享VBA编程中常用的常用“积木”过程代码。这些内容大多是我的经验的记录,来源于我多年的经验。最近代码多是出自”VBA数组与字典解决方案”教程,有一些朋友反映分享的内容不能很好的理解,可以参考这套资料的内容进行研读。今日分享的是第272期。

    1167c14dd70571ac5b56271d2ffeef44.png

    VBA过程代码272:利用字典,进行单条件匹配查询

    Sub MyNZ ()

    Dim mydic, myarr

    Sheets("42").Select

    Set mydic = CreateObject("scripting.dictionary")

    '将数据放入数组

    myarr = Sheets("42").[a1].CurrentRegion

    For i = 2 To UBound(myarr)

    '这里字典的值,用的是array数组,方便我们匹配多个数据

    mydic(myarr(i, 1)) = Array(myarr(i, 2), myarr(i, 3), myarr(i, 4))

    Next

    '根据查询的基准,在相应的位置回填键值

    For i = 2 To Sheets("42").Cells(1, "g").End(xlDown).row

    Sheets("42").Cells(i, "h").Resize(1, 3) = mydic(Cells(i, "g").Value)

    Next

    '释放内存

    Set mydic = Nothing

    End Sub

    代码讲解:上面的代码实现了单条件查询的具体应用。可以很快的按照要求在源数据中查找到相应的值。mydic(myarr(i, 1)) = Array(myarr(i, 2), myarr(i, 3), myarr(i, 4))代码仍采用了键值是数组的形式,键是A列的数据,键值是后面三列数据的数组。 Sheets("42").Cells(i, "h").Resize(1, 3) = mydic(Cells(i, "g").Value)在字典中直达相应的键,把键值放到相应的位置。

    e0ba89a924324dfd55371890cac17d17.png

    VBA是利用Office实现自己小型办公自动化的有效手段.我根据自己20多年的VBA实际利用经验,现在推出了四部VBA学习教程,也是我“积木编程”思想的具体体现。

    第一:VBA代码解决方案,是VBA中各个知识点的讲解,这部教程可以覆盖绝大多数的知识点;

    第二:VBA数据库解决方案,是数据处理的专业利器,详细的介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作。

    第三:VBA数组与字典解决方案,讲解VBA中的数组和字典的利用。字典是VBA代码水平提高的手段,值得深入的学习。

    第四:VBA代码解决方案之视频,是专门面向初学者的视频讲解,可以快速入门,更快的掌握这门技能。

    上述教程的学习顺序,1,3,2或者是4,3,2逐渐深入的了解VBA掌握VBA.目前正在集中精力写第五部教程:VBA中类的解读和利用,希望在年内能陆续在各个平台和大家见面。

    利用VBA进行数据统计真的非常实用,希望大家掌握这个工具,利用这个工具,让自己轻松,高效,快乐的工作。我的“积木编程”思想也是值得大家借鉴的,这种思想让大家在代码中解脱出来,成模块的构建自己的应用,提高自己的编程效率。根据我提供的经验,利用时间多学习。

    28262b1023d6dc5b787407b4cbd5c949.png
    展开全文
  • 函数作用:在多个工作表中查找一个范围内符合某个指定条件的项目对应指定范围加总求和..........................59 '35.函数作用:返回 Column 英文字.......................60 '36.函数作用:查找指定列名的列数.......
  • rs.open sql,conn,1,3 ntime=year(date()) do while not rs.eof if ntime=year(rs("时间")) then fyzh=fyzh+rs("费用") end if loop rs.movenext %> B,ntime sql="select * from fy " set rs=server.CreateObject(...

    满意答案

    02ae427d08e371d7e90d5b995e828d6d.png

    jarlasdkg

    2013.12.31

    02ae427d08e371d7e90d5b995e828d6d.png

    采纳率:56%    等级:13

    已帮助:10589人

    建立费用表fy

    连接数据库省略

    2.A

    sql="select * from fy"

    set rs=server.CreateObject("adodb.recordset")

    rs.open sql,conn,1,3

    do while not rs.eof

    fyzh=fyzh+rs("费用")

    loop

    rs.movenext

    %>

    B

    sql="select * from fy"

    set rs=server.CreateObject("adodb.recordset")

    rs.open sql,conn,1,3

    do while not rs.eof

    fyjs=fyjs+1

    loop

    rs.movenext

    %>

    3A

    sql="select * from fy "

    set rs=server.CreateObject("adodb.recordset")

    rs.open sql,conn,1,3

    ntime=year(date())

    do while not rs.eof

    if ntime=year(rs("时间")) then

    fyzh=fyzh+rs("费用")

    end if

    loop

    rs.movenext

    %>

    B

    sql="select * from fy "

    set rs=server.CreateObject("adodb.recordset")

    rs.open sql,conn,1,3

    ntime=year(date())

    do while not rs.eof

    if ntime=year(rs("时间")) then

    fyjs=fyjs+1

    end if

    loop

    rs.movenext

    %>

    00分享举报

    展开全文
  • 利用VBA开发数据汇总工具通常在日常工作中总会用到Excel并且经常会遇到Excel将多个表格进行汇总。经过工作中的实践,发现用VBA开发具有一定重复性的功能,能够极大提高工作效率。最近,将本人曾开发的的Excel数据...

    5c9853e1aefbf386ea86857181a3d087.png
    1. 利用VBA开发数据汇总工具

    通常在日常工作中总会用到Excel并且经常会遇到Excel将多个表格进行汇总。经过工作中的实践,发现用VBA开发具有一定重复性的功能,能够极大提高工作效率。最近,将本人曾开发的的Excel数据汇总工具,进行进一步代码和界面的优化。此文是为了广大工作在一线的表格小白做一个Excel开发的普及篇。重点介绍作为一个小白,如何开发出自己想得到的趁手工具。

    第一章 认识Excel与VBA

    Excel是什么?

    很多小白的日常工作中,经常接触操作Excel,重复性的工作,但是除了那几种固定的操作模式,就不涉及到其他了。所以,仍对Excel认知较少。那么Excel究竟能帮助我们完成哪些工作呢,其实很简单,日常表格数据量不是超大规模的,几乎可以应付日常一般情况下的应用场景。比如网上通常的例子就是批量生成并打印工资单等等。Excel就是一个工具,一个具有数据处理分析功能的强大工具。并且可以通过VBA编程来定制自己特殊数据处理的工具。

    VBA是什么?

    由于微软Office软件的普及,人们常见的办公软件Office软件中的Word、Excel、Access、Powerpoint都可以利用VBA使这些软件的应用更高效率,例如:通过一段VBA代码,可以实现画面的切换;可以实现复杂逻辑的统计(比如从多个表中,自动生成按合同号来跟踪生产量、入库量、销售量、库存量的统计清单)等。

    掌握了VBA,可以发挥以下作用:

    1.规范用户的操作,控制用户的操作行为;

    2.操作界面人性化,方便用户的操作;

    3.多个步骤的手工操作通过执行VBA代码可以迅速的实现;

    4.实现一些VB无法实现的功能。

    5.用VBA制做EXCEL登录系统。

    6.利用VBA可以Excel内轻松开发出功能强大的自动化程序。

    VBA是一种Visual Basic的宏语言,它应该是最早的Office提供定制化的一种解决方案,在1994年发行的Excel 5.0版本中,就具备了VBA的宏功能。从名字上似乎可以看出他是VB的一个子集,和Visual Basic不同,VBA是一种宿主型语言。由于那个时候Visual Basic非常火, VBA取得了很大的成功,无论是专业的开发人员,还是刚入门的非开发人员,都可以利用VBA完成简单或复杂的需求。现在在一些办公环境中,VBA用的非常多,比如国内比较著名的ExcelHome论坛,上面就有很多关于Excel VBA的讨论,而且VBA还能够调研Com组件里面的一些方法,在其他的Office开放方式中,如VSTO或者SharedAddin中, VBA有时候可以辅助完成某些功能,如RTD函数,UDF函数的调用,专用模板的开发,动画效果的演示等等。不光是Office,有很多其他的软件业比如比较有名的ArcGIS,CorelDraw等软件,都提供了VBA的定制化解决方案。

    除了技术上的其他支持,我们也要搭建好开发环境。这就非常简单了。但是搭建过程中,也可能会遇到非常棘手的问题,也都需要逐一克服。但是,如果没有什么高的要求,一般情况下,只要是Windows的操作系统,并且还安装了一个Excel就可以了。除非你就想学最新的,Windows要求是10版更新到1903的,MS Office要求是2019专业版的,那这要求可就需要你折腾一下你的电脑了。因为此时会产生2个大问题:

    如何安装并激活window10?

    如何安装并激活MS Office 2019?

    以上2个问题先请行百度一下。我会在后面的介绍中详细说明。言归正传:安装完系统,安装完Excel。我们几乎就可以马上开发了!等等,此时还有人会问,我不会英语,也不熟悉计算机,怎么办?可以肯定的说,既便于你会英语会计算机日常操作,也不一定会VBA开发。因为,这2个学科并不能从本质上影响你学习开发VBA。

    第二章 安装并激活win10

    第一节 制作U盘启动盘

    准备一只U盘,U盘容量8G以上,传输速率当然是越快越好。所以,最好是选3.0接口的,您要是有2.0接口的也可以。

    3.0和2.0的区别:直观上一看,接口处,2.0是白色或黑色的,3.0是蓝色的。

    然后我们先到老毛桃官网下载一个U盘启动盘制作工具:

    老毛桃winpe,老毛桃winpe u盘启动盘制作工具,老毛桃winpe下载​www.laomaotao.net

    如何制作:

    winpe教程

    前期准备

    1、准备一个4G以上的U盘

    2、备份U盘重要文件,制作过程中会格式化U盘。

    PS:本软件涉及对可移动磁盘的读写操作,部分杀毒软件和安全类软件会导致制作失败,运行程序前请关闭相关软件!

    1. 下载老毛桃U盘启动盘制作工具,下载完成后,如图是老毛桃的运行程序。
    2. 插入U盘后,双击打开老毛桃U盘制作工具,会出现如图所示U盘winpe系统制作界面。
    3. 选择普通模式选项卡,“请选择”中选择自身U盘设备名称(一般会自动识别)。模式选择USB—HDD,格式选择“NTFS”
    4. 点击“一键制作成USB启动盘”按钮,开始制作U盘winpe系统,过程中会格式化U盘上的数据,制作前请确认U盘是否已做好备份。
    5. 开始制作后软件下方会有进度条提醒,请耐心等待。
    6. 制作完成后,程序会提示您已制作成功,您可以选择模拟启动测试,若能够进入老毛桃winpe主菜单,即表示老毛桃U盘启动盘制作成功。

    好,至此,U盘启动盘已经制作完毕。

    第二节 装机win10

    重装win10教程

    前期准备

    1. 制作一个老毛桃U盘winpe启动
    2. 提前准备好win 10的镜像系统,如若没有可在网上自行下载,并将镜像复制到老毛桃U盘winpe启动盘的根目录或本机其他分区中(除C盘外)
    3. 查询自身机型的U盘启动快捷键

    步骤如下:

    1. 插入装有老毛桃winpe系统的U盘,开机或重启电脑,当开机画面一闪而过之际,眼疾手快地按下U盘启动快捷键进入优先启动项设置界面。 PS:需查询自身机型的U盘启动快捷键
    2. 选择U盘选项后回车进入下一步,注意:通常带有“USB”字样的选项即为U盘选项。
    3. 进入老毛桃winpe主菜单后,通过“↑↓”键选择“【1】启动Win10 X64PE(2G以上内存)”后回车进入。
    4. 打开老毛桃一键装机,在选择操作一栏点击“安装系统”,接着在“选择映像文件”一栏点击“打开”,找到下载好的win10镜像文件, 最后选择安装路径为C盘,点击“执行”。
    5. 在老毛桃一键还原窗口中,勾选复选框内后点击“是”(建议用户将“网卡驱动”和“USB驱动”这两个选项勾选,以免重启后无法使用网络和鼠标)。
    6. 程序写入待安装完毕后重启笔记本,同时要拔掉U盘,以免再次进入老毛桃winpe界面了。
    7. 重启后就电脑会进入重装系统的第二阶段,此时无需操作,静待安装完成即可,如果成功进入win 10操作系统的桌面,即表明成功重装了win 10系统。

    至此,安装完成了win10。

    第三节 激活win10

    首先第一步,点击左下角搜索栏,输入:运行。右键以管理员身份运行。输入:cmd 打开即可

    复制以下命令:slmgr.vbs /upk。直接鼠标右键就可以粘贴进去。然后点击“enter键”。窗口弹出:"已经成功卸载密钥".那么这一步就成功了,恭喜你!

    然后复制以下命令:slmgr /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX 鼠标右键粘贴,enter,搞定,系统提示已经成功安装密钥!

    最重要的一步,也是激活的核心原理,仿照上面的方法,复制slmgr /skms zh.us.to 粘贴输入并且运行,系统提示:“密钥管理服务计算机名成功的设置为zh.us.to”。

    最后一步,最后一个命令:slmgr /ato。运行之后,系统提示成功激活,恭喜你,成功了!

    总的来说,确实有点繁琐,但是如果你使用之后,就会发现确实很简单,值得注意的就是:鼠标右键就是粘贴,enter就是运行,这也算是命令提示符的一个入门了吧。

    顺便提醒一句,系统激活只有180天的有效期,也就是说,180天后需要重新来一遍上面的步骤。

    第三章 安装并激活MS Office 2019

    第一节 安装MS Office 2019

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    本文链接:https://blog.csdn.net/hunzhangzui9837/article/details/83651268

    微软在2018年9月28日发布了 Microsoft Office 2019 正式版,不过仅支持Win10系统。目前微软镜像文件已经流出,可以通过离线镜像进行安装。如果想使用 Microsoft Office 2019 正式版,则需要先删除系统上已经安装的所有Microsoft Office系列软件。此次更新,是对过去三年在Office 365里所有功能进行整合,包括对Word、Excel、PowerPoint、Outlook、Project、Visio、Access和Publisher的更新。

    本次Microsoft Office 2019 正式版更新,不像之前一样通过推送更新来获取新的功能,Office 2019 是一次性发布的,不会再有后续的功能更新。此次更新主要想吸引之前未选择Microsoft Office 365的企业个人用户。Office 2019提供跨应用程序的功能,以帮助用户在更短的时间内创建令人惊叹的内容。在PowerPoint 2019中,允许用户创建带有Morph和Zoom等新功能的电影演示文稿。同时改进了Windows应用程序的输墨功能-比如漫游铅笔盒,压力敏感度,倾斜效果-允许用户自然地创建文档。Excel 2019增加了强大的新数据分析功能,包括新的公式和图表以及对PowerPivot的增强。

    Office2019还包括新的信息技术价值,以加强安保和精简行政管理。微软在Office 2013中引入了一种现代部署技术-Clickto-Run(C2R),现在它已被用于在全球数亿台设备上部署和更新Office。在Office 2019中,微软正在将Office的现场版本转移到C2R,以降低成本和提高安全性。C2R的优点包括每月可预测的安全更新、安装时的最新应用程序、通过Windows 10下载优化技术减少网络消耗,以及易于升级到ProPlus。

    下载地址:

    专业增强版(强烈推荐):

    http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/ProPlus2019Retail.img

    专业版:

    http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Professional2019Retail.img

    家庭学生版:

    http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/HomeStudent2019Retail.img

    家庭企业版:

    http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/HomeBusiness2019Retail.img

    第二节 激活MS Office 2019

    破解补丁:

    目前MicroKMS神龙版能激活win10、win8/8.1、win7以及server2008/2012/2016等系统版本,其中包括:专业工作站版、企业版、专业版、教育版、专业教育版、家庭版、核心版、中文版(OEM预装系统版本)、单语言版等,同时支持激活office 2010/2013/2016/2019 Proplus、Visio 2010/2013/2016/2019 Pro、Project 2010/2013/2016/2019 Pro。

    下载地址:

    百度网盘:https://pan.baidu.com/s/1VCI_V7xlVEx9FhbVSPqSxQ

    提取码:xil9

    【注】:如果下载出现浏览器崩溃,先保存到自己网盘再去下载。

    另外注意的是,激活需要联网。

    ————————————————

    版权声明:本文为CSDN博主「小白clever」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

    原文链接:https://blog.csdn.net/hunzhangzui9837/article/details/83651268

    第四章 如何获得技术支持

    工欲善其事必先利其器。学习VBA开发Excel也并不比完全系统学习。作为工作一族,我们已经不是学校的学生,所以可以手边常备一个Excel VBA开发的书籍。遇到问题就随手翻一翻。或者在处理表格数据时,按F1或者点击菜单上的“帮助”来获得技术支持。通常情况下,认真阅读,仔细思考,是能够看的懂帮助的内容的。读书百遍其意自现。第一遍有可能看不懂,多读几遍多思考几遍就会逐渐理解了。最好是加一些Excel开发的QQ群/微信群。或者是多上一些Excel VBA开发的论坛,比如Excel Home。还可以直接度娘,或者干脆上微软官网查找解决问题的方法。亦或者可以直接联系会这方面的好友,那样最好不过了,能有人手把手的教,这种待遇,真的是太奢侈了。

    推荐学习网址:我要自学网:https://www.51zxw.net/list.aspx?cid=539

    Excel Home论坛是Excel教程下载和软件下载中心,Microsoft技术社区联盟成员,全球极具影响力的Excel门户,Office技术培训社区:http://club.excelhome.net/forum-2-1.html

    推荐书籍:Excel VBA开发宝典《第三版》

    第五章 分析需求

    如前所述,要开发Excel应用程序,有很多方案可以选择。在作出选择之前,根据个人经验,有以下几方面需要考虑:

    1 应用程序的类型及功能

    根据Excel插件开发的功能需求,对于以些较简单的应用,比如一些Excel模板等,可以直接采用VBA宏进行定制,如果具有.NET 基础,可以采用VSTO Document-Level的方式来开发模板;对于一些较大型的或者比较复杂的一些应用,或者考虑到效率,编写VAB可能难以实现某些功能这时可以考虑采用SharedAddin或者VSTO Addin的方式来进行开发,他能够直接利用.NET平台上的各种语言及类库,并且可以使用Visual Studio这种强大的工具来开发和进行调试;如果对应用程序的跨平台,或者移动性要求较高,或者是需要在已有的Web应用程序上建立Office应用程序,则可以考虑使用Office App的方式来进行开发;如果应用程序对效率和要求较高,并且具有扎实的C或者C++基础,可以采取XLL的方式对Excel进行扩展;对于一些需要批量生产Excel文件的应用环境,比如在服务器上生产Excel文件,导出数据到Excel,对Excel文件进行合并分割等操作,采用OpenXML SDK、NOPI等第三方具有直接读写Excel文件的SDK来进行开发能够获取更高的效率,另外采用第三方SDK可以使得部署的目标机器不需要安装Office的可编程环境。

    2 程序兼容Office的版本问题

    第二个比较重要的考虑因素是应用程序的兼容版本问题。这个问题就像是开发BS应用程序需要考虑应用程序的类型比如是IE还是Chrome以及版本,比如需要处理IE6 下各种头疼的问题等等。开发Excel应用程序也需要注意这一点,虽然最新的Excel2013已经推出,但是仍有大部分的客户机器可能使用的是2003 的系统。这种情况下,如果使用VSTO Application Addin的方式可能不能兼容2003的系统,并且一些特殊的UI界面如Ribbon菜单,Customer Task Panel在03版本上不兼容。这种情况下,有时候可能需要采用一些比较通用的技术如VBA,XLL,SharedAddin技术来进行处理,另外对于一些07及以上版本中特有的UI界面和功能,使用SharedAddin开发,并且如果想利用这些功能,可能需要进行一些手动的编码和判断。另外,如果采用VSTO编程,还有一个重要的考虑因素是.NET的版本问题,Excel插件通常是和其他产品绑定在一起发布或者销售的,有时候可能限定平台在.NET 2.0 上,那么选择VSTO的版本,及开发工具的时候可能就需要注意了。如果确定目标用户使用的Office版本为比较新的版本,如2007或者以上,建议还是使用VSTO较高的版本进行开发,这样可以极大地简化开发的难度,提高应用程序的性能。如果客户使用的是最新版的Office,采用Office App的开发方式也是一种比较好的选择。

    3 日常重复性工作的归纳

    日常工作中,通常大致有2类汇总的情形。

    一种是复制粘贴式。也就是说,把来自多个表格的数据,通过复制粘贴的方式,汇总到同一张表格中。

    另一种是数据计算式。也就是说,把来自多个表格的数据的同种项目进行累加求和,形成一张表格。

    那么可以拆分成这么几个功能按钮:

    1是导入文件夹内所有工作簿中的所有工作表到同一个工作簿的不同工作表

    2是将导入的空工作表全部删除

    3是将同一个工作簿中的所有工作表通过复制粘贴式汇总到同一张表格

    4是将同一个工作簿中的所有工作表中的同一个项目进行累加求和,形成到一张表格中。

    5是重置工作表。将带程序的工作簿还原成初始状态。

    基于以上5个功能,可以开发5个命令按钮。这5个按钮要放到Excel的菜单上。大致就是这样吧。

    第六章 Excel菜单的开发

    我们先来直观感受一下Excel菜单。不严格的说,2010版本之后的2013/2016/2019版本管这个叫Ribbon。那么后面我们就叫Ribbon的开发。就是一条长带子的样子。

    我们现在要先在这个Ribbon上放置5个按钮。类似于“前端”的开发,不严格说,或者是界面的开发,总之随你怎么称呼。那么这个Ribbon的开发,可能有点超纲了,因为不得不学点XML语言。因为这玩意是用XML写的,你就的用XML语言去改。千万不要一看到这种带字母的语言就感到高大上和有距离感。你可以把它想象成学一门外语而已,并且这门外语不仅有26个字母,还有一堆符号,还有各种标记格式等等吧。那么如何学习XML呢?请到:

    XML 教程 | 菜鸟教程​www.baidu.com

    https://www.runoob.com/xml/xml-tutorial.html。

    这些知识看看也就够了。

    有2个途径可以编写Ribbon。

    1、借用OfficeCustomUIEditor 工具的

    参考:http://www.exceltip.net/thread-4190-1-1.html

    2、不借用任何工具,纯VBA环境下自定义EXCEL 菜单选项卡。

    参考:http://club.excelhome.net/forum.php?mod=viewthread&tid=729624&extra=page%3D1%26filter%3Ddigest%26digest%3D1%26digest%3D1

    这两篇文章都写的很好很详细。

    ————————————————

    版权声明:本文为CSDN博主「tianlangwangluo」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

    原文链接:

    https://blog.csdn.net/dutaibai/article/details/52115690​blog.csdn.net

    按照上文链接,我们先开发出如下的按钮:

    刚才,“前端“已经开发完了。那么重点来了,我们开始进行类似于“后端”的开发了。VBA开始写起了。

    第七章 初识VBE

    打开Excel,先另存为一个启用宏的工作簿。然后重新打开进行开发。按Alt+F11,打开开发界面,我们先了解以下开发界面:

    Excel宏编程基础:什么是VBA宏/在哪里编写宏/怎么运行宏?

    德宝老师 2014-1-30 9:46 分类:表格技巧

    一、什么是“宏”、“宏”有什么用

    关于“宏”的详细定义,可以参考百度百科的解释(点击查看)。我给它一个简单的或许不太严谨的定义:

    宏的通俗定义:宏是被某些软件所能识别、理解并执行的特定代码/脚本。

    宏的作用:因为宏能被软件执行、不需要人工来操作了,从而能实现“自动、批量”的业务处理,极大提高工作效率。

    二、“宏”不是Excel也不是Office专有

    要知道,宏不是Excel特有的,Office的其他组件如PPT、Word、Outlook等也都有宏。不光Office,不少软件也带有宏功能。例如印象中PS可以将一堆图片进行批量的裁剪或添加水印等处理,这可以视为一种宏。甚至连文本编辑器EditPlus都带有宏录制功能。还有些软件就专门实现宏功能的,类似“鼠标键盘录制回放器”那样将键盘操作记录下来再重新回放,比较知名的如:按键精灵、AutoHotkey等。

    三、“宏”长什么样

    如第2部分所述,很多软件都带有宏,不同软件的宏也不一样。下面这段是AutoHotkey的脚本:

    1. #z::Run http://www.autohotkey.com
    2. ::/note::
    3. IfWinExist 无标题 - 记事本
    4. WinActivate
    5. else
    6. Run Notepad
    7. return

    而Office里的宏称为VBA(Visual Basic for Application)。不同组件(Excel/PPT/Word等)中的VBA语法一样,但所支持的对象、方法会有所不同。具体代码见后文示例。

    四、VBA:Excel中的宏

    终于讲到Excel的宏了。VBA基本上就是VB(不知道VB是啥?点此)的简化版,如果有VB功底,学VBA就不费劲了。

    但毕竟VBA还是属于“开发”类工作,没有任何编程经验的人(码农)能不能学会VBA呢?答案是肯定的!只要有人带进门加以点拨,再肯下些功夫,一定可以写出一些提高工作效率的VBA工具。我在新浪工作期间,曾经有个实习生能修改我写的VBA工具,学中文的,女生。

    五、在哪里编写VBA:Excel VBE开发环境

    下面我们来制作一个带宏的Excel文档。详细步骤:

    1.新建一个工作薄,文件->另存为,“文件名”输入“宏测试”,在“文件类型”中选择“Excel 启用宏的工作薄(*.xlsm)”,点击保存。

    2.按Alt+F11组合键,调出VBE窗口。右键点击“VBAProject”->插入->模块。然后,在左边的窗口中出现“模块1”。

    3.双击“模块1”,在右侧的空白区录入以下代码(此代码用于在屏幕上显示一个文字提示框),完成VBA宏的编辑。见下图:

    Sub VBATest()

    MsgBox "这是我的第1个VBA程序。"

    End Sub

    注:为了使用更多关于宏的功能,最好将Excel中的“开发工具”选项卡调出来。Excel2007和2010显示“开发工具”选项卡的设置方法分别是:

    Excel2007:

    点击Excel左上角的Office按钮,点击弹出的菜单底部的“Excel选项”按钮,在“常用”项里勾上“在功能区显示开发工具选项卡”,确定即可。

    Excel2010:

    点文件->选项,在Excel选项对方框里找到“自定义功能区”,在右侧勾上“开发工具”,确定。

    经过以上设置后,就能在Excel主窗口上看到“开发工具”选项卡了,点开里面有诸多关于宏开发的功能。例如点击最左边的“Visual Basic”按钮也能进入VBE开发界面,跟按Alt+F11的效果一样。

    六、如何运行VBA宏

    至此,我们已经成功的编写了一个VBA宏,是不是很想看看这个宏执行的结果呀?接下来探讨如何运行宏、让宏正常工作了。通常有以下几个办法:

    1.从开发环境中直接运行。将光标置于Sub/End sub之间,按菜单上的绿三角按钮,或F5键。

    2.通过形状按钮调用。在工作表,点“插入”->形状,插入一下圆角矩形,输入“调用宏”并简单设置格式:

    右键点击“调用宏”这个形状,在弹出的菜单中选择“指定宏”,在“指定宏”对话框中选择刚才编写的宏(名称是VBATest),确定。

    在工作表任一单元格点击一下(好取消按钮的选中状态),这时鼠标移到按钮上就变成了小手的形状,点击后出现本宏运行的结果:

    3.快捷键调用。可以为宏设置一个快捷键,设置正确后直接按快捷键来运行宏。方法是:

    在“开发工具”选项卡,点“宏”按钮,选中“VBATest”,点击右侧的“选项”按钮,设置一个快捷键,确定。

    注意:此处设置的快捷键优先级高,如果跟软件原来的快捷键冲突,会覆盖原来的。

    七、为工程设置密码保护

    我们编写好的宏,为了防止被人任意修改,可以设置密码。通过后才可以进到代码编辑界面进行修改。具体操作方法:在左上角的列表树上右键点击“VBAProject...”,在弹击的菜单中选择“VBAProject属性”打开对话框,选择“保护”选项卡,勾选“查看时锁定工程”,并设置查看工程属性的密码,单击“确定”。如下图:

    展开全文
  • 不知道大家有没有遇到过这样的需求,就是根据单元格填充颜色对其数据进行求和处理。今天我在这里和大家分享五种按颜色求和小技巧。 1、查找法 查找法主要利用颜色格式查找出全部满足条件的单元格,然后使用Excel...
  • VBA字典技术整理

    2021-02-04 23:22:52
    这段时间颇有点邯郸学步的感觉,由于把大量的时间和精力投入到python中,之前学的vba到想用的时候,居然忘了。作为非程序员,编程向来当成"核导弹"来用,一次编写出来,能用,好,很难再有机会写第二遍代码了,因为...
  • Excel VBA高级编程 -根据日期查找数据

    千次阅读 2020-08-11 22:43:20
    打印出货单的时候,经常会需要从数据库中查询一段时间内的所有数据 本工作表使用VBA实现了如下功能: 1、实时统计重复项 2、重复项数据自动求和 附上代码 Sub lqxs() Dim Cnn As Object, SQL$, shnm$, arr...
  • 本系列一直强调要善用各种工具,作为本系列的最后一节,那么这次就用一例子说明如何让Python结合Vba,直接在Excel中动态获取各种处理条件,输出结果。日后也会不定期分享 pandas 的处理案例,但不一定非要与 Excel.....
  • Excel VBA编程教程(基础一)

    千次阅读 多人点赞 2020-07-10 19:27:39
    VBA介绍 Visual Basic for Applications(VBA)是 VisualBasic 的一种宏语言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展 Windows 的应用程序功能,特别是Microsoft ...
  • VBA-从一而终For循环

    2021-01-12 14:31:24
    今天,我们来学习下VBA中出镜率不亚于IF语句的,FOR循环语句。掌握了这两种语句,可以搞定90%的基本功能。组合起来使用,更是其乐无穷!接下来,我们将学习For循环语句的两种基本结构。主要分为:①For ....Next循环...
  • 上一篇我们已经用VBA实现SQL检索,并实现相同项求和的功能。那么如何根据日期范围筛选我们需要的数据呢?今天我们看看另外一个SQL查询结构: SQL = "select 字段1 from [原始数据$] where 出库时间 between #开始...
  • 学习资源:《Excel VBA从入门到进阶》第72集 by兰色幻想这节课来详细讲解Select语句。Select 字段 from 表 where 条件例:从sheet1中筛选全部数据。* 表示全部字符,无条件可以省略where。Select * from [sheet1$]...
  • python 使用pandas计算累积求和的方法使用pandas下的cumsum函数cumsum:计算轴向元素累积加和,返回由中间结果组成的数组.重点就是返回值是"由中间结果组成的数组"import numpy as np'''arr是一个2*2*3三维矩阵,索引...
  • EXCEL.VBA应用 非隐藏单元格求和

    千次阅读 2006-01-02 16:22:00
    有时候,我们会对一些数据进行隐藏(如筛选)后进行求和等运算,但在现成的公式却无法找到可利用的,所以只能依靠VBA来实现。创建自己的工作表函数,请参考:...
  • excel vba复制黏贴 Using VBA to program Excel isn't as popular as it once was. However, there are still plenty of programmers who prefer it when working with Excel. If you are one of those people, this...
  • 不熟悉VBA的可以直接下载使用:下载打包的宏文件熟悉VBA的可以拷贝我的代码文件自行粘贴或修改以进一步使用:'时间:2018/7/13周四 '作者:Neil ' Sub 表合并() Dim arr(200) As Long #用于统计表数 Dim str_...
  • 今天讲讲数据透视表,因为理解上花了一点时间,内容会比较少。 为了测试,先新建了一张这样的表 为了看看VBA中新建透视表的代码,框住上面的表格,插入了一张透视表,录制后的内容及代码如下: Sub 宏1()...
  • 本系列一直强调要善用各种工具,作为本系列的最后一节,那么这次就用一例子说明如何让Python结合Vba,直接在Excel中动态获取各种处理条件,输出结果。日后也会不定期分享 pandas 的处理案例,但不一定非要与 Excel ...
  • 你的位置:问答吧-> excel-> 问题详情[分享] 让数据透视表中数字字段为默认求和!...我认为有2个方法,一个是用VBA的方法,用代码解决!另一个是用基本操作的方法!先说用代码的方法:Sub 新建透视表()D...
  • VBA编程技巧大全

    2013-08-05 09:03:19
    技巧153 调用工作表函数求和 381 技巧154 查找最大、最小值 381 技巧155 不重复值的录入 383 技巧156 获得当月的最后一天 385 技巧157 四舍五入运算 386 157-1 极小值修正法 386 157-2 调用工作表函数法 387 技巧158...
  • 中文版Excel.2007高级VBA编程宝典 2/2

    热门讨论 2012-04-06 16:41:38
    中文版Excel.2007高级VBA编程宝典 2/2 完整清晰版 PDF ,有目录。共 270MB,分为 2 个分卷 中文版Excel 2007 高级VBA编程 宝典 OFFICE2007 中文版Excel 2007高级VBA编程宝典 原价:99.99元 作者:(美)沃肯巴赫...
  • 带你用pandas玩转各种数据处理“Python替代Excel Vba”系列(二):pandas分组统计与操作Excel“Python替代Excel Vba”系列(三):pandas处理不规范数据“Python替代Excel Vba”系列(四):课程表分析与动态可视化...
  • [VBA][Error1004]Sheet.cells.value引起的应用程序定义或对象定义错误问题描述 问题描述 将数据处理结果写入到结果Sheet时,最初使用Sheet.cells().value = date,突然弹出 很莫名其妙, 写入前30几条记录时并不会...
  • 来吧!带你玩转 Excel VBA

    千次阅读 2013-08-15 10:03:06
    带你玩转 Excel VBA(含CD光盘1张)(双色)(附带近500个VBA思考练习题,Exceltip.net出品) 罗刚君  杨嘉恺 编著 ISBN 978-7-121-20627-6 2013年7月出版 定价:85.00元 648页 16开 编辑推荐...
  • [Excel VBA]状态栏如何显示文字 ?

    千次阅读 2016-02-06 12:27:10
    译者注,参数代码如下所示,为了让显示时间更长些,把 i 的最大值设成 10000 Sub Sample2() Dim i As Long For i = 1 To 10000 Application.StatusBar = i & " times is processing" Next i Application....
  • # Excel VBA编程常用语句300句 * 本文转自:**http://blog.sina.com.cn/codelee** 博主:**代码农夫** 感谢大佬总结并分享出来~ ************** # * VBA 语句集 * * (第 1 辑) * ************** ***************...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 633
精华内容 253
关键字:

vba时间求和