问题描述:Excel数据更新繁琐

虽然市面上各类报表工具,可视化工具种类繁多,比如Tableau,Power BI,FineBI 等等,但是Excel 依旧是日常数据工作中的主力,我们依旧使用Excel 来制作各类数据报表,绘制各种图表,制作各类报告,尤其是日报,周报,月报这类内容基本固定的格式化的报表。

但是,数据的更新,往往比较繁琐,需要不停的将数据从数据库中导出,然后复制粘贴至Excel中,非常的不方便~

问题解决:使用Excel VBA 自动的提取mysql库中的数据

第一步:安装mysql的ODBC连接工具

链接地址:Download Connector/ODBC

请特别注意版本问题,比如公司使用的是 mysql 5.7

Excel 64位,下载:mysql-connector-odbc-5.1.13-winx64

Excel 32位,下载:mysql-connector-odbc-5.1.13-win32

第二步:新建一个启用宏的Excel,文件后缀为xlsm

第三步:进入“开发工具”,插入“按钮”

第四步:右键选中按钮,进入“指定宏”,然后“新建”,进入VBA的编辑页面

第五步:编写代码

Sub 刷新数据()Dim conn As ADODB.ConnectionDim rs As ADODB.RecordsetDim strSQL As StringDim cell_text As StringDim iDim f_arrDim KKApplication.Calculation = xlManual '关闭自动计算功能,如果数据体量很大,数据表很多,关闭自动计算,可以有效的提升更新数据的速度Set conn = New ADODB.Connectionconn.ConnectionString = "Driver={MySQL ODBC 5.1 Driver};Server=你的host;DB=库名;UID=用户名;PWD=密码;Port=3306;OPTION=3;allowMultiQueries=true"  '建立与数据库的链接conn.Openf_arr = Array("清单")  '需要更新的sheet名称,如果是多个sheet则依次填写For i = 0 To UBound(f_arr)  '循序更新Sheets(f_arr(i)).SelectRange("A1:z300000").ClearContents '当前sheet中的数据Set rs = New ADODB.RecordsetstrSQL = "select * from test_table;" '需要提取的数据的select 语句rs.Open strSQL, conn  '打开链接,执行语句'通过循环,在第一列填写表头For KK = 0 To rs.Fields.Count - 1Cells(1, KK + 1).Value = rs.Fields(KK).NameNextRange("A2").CopyFromRecordset rs  '从A2开始,将查询的结果填写至数据表中rs.Close: Set rs = Nothing '关闭刚刚的查询Nextconn.Close: Set conn = Nothing '关闭链接Application.Calculation = xlAutomatic '打开自动计算功能,结束的时候一定要打开自动计算,否则数据不会自动更新
End Sub

第六步:测试效果

原始数据为空的:

点击刷新数据按钮后,数据自动更新:

第七步:异常情况处理,如果出现如下异常

请先“结束宏”,然后,按照下述操作按照控件,即可:

最终,通过这个功能,可以实现一键将多个数据源的数据,更新至同一张Excel表上,然后,以这个数据为数据源,配合Excel公式,图表,形成一份完整的报表。

后续再更新该报表时,每天只需要点一下更新数据按钮即可实现全量数据的更新,原来每天需要耗费半小时,甚至几个小时的时间,现在可以缩减至分钟级别!

觉得有用的话,赞个吧,谢谢!

excel怎么启用宏_#数据同步#Excel + mysql 制作自动化报表相关推荐

  1. excel怎么启用宏_如何用Excel制作一个高逼格的项目管理模板

    在工作中我们经常用到项目管理,尤其是公司里的PM们(ProgramManager),从专业应用角度讲我们可以使用Project等软件进行项目管理,但这类软件一般需要经过专业培训才能上手,并且需要额外收 ...

  2. excel怎么启用宏_怎么使用Excel制作条形码?操作如此简单

    条形码与我们生活息息相关,几乎每一件物品上都有条形码.那么条形码怎么制作呢?今天我们将使用Microsoft Excel制作条形码,一起来看一下具体操作流程吧. 使用Microsoft Excel制作 ...

  3. excel怎么启用宏_轻便免费的Excel合并工具,支持wps和office全系统

    Excel合并工具绿色程序版是一款由吾爱网友ermituofo分享制作的Excel合并软件,软件支持wps和office全系统,很多用户发表格给其他用户之后自己要使用合并处理就很麻烦,有了这个工具,就 ...

  4. excel怎么启用宏_用VBA让EXCEL变成股票查看软件

    通过简单的VBA编写,我们可以让EXCEL变成股票查看软件,可以查看股票涨跌情况.如果录入了自己的持股信息,还可以查看自己的收益情况.也许有人会说有股票软件为什么还要用EXCEL来查看,这我就不解释了 ...

  5. excel怎么启用宏_天水市便桥阿姨买擀面皮月入过万!房子、车子都有了,Excel揭秘其中的奥妙........

    那一年在市五中上学时.... 我是农村孩子,上学需要住校:在五中便桥那租的房子,不管是早上还是周末赖得做饭是会吃那位阿姨的擀面皮:味道自然是不用说.....主要有一天跟阿姨聊起来,她也是农村人说房子卖 ...

  6. php数据的导出到excel,php 数据的导出到excel表格-怎么将php数据导出excel

    怎么使用php把表格中的数据导入到excel中 下面写的一个PHP导出数据到CSV问价的函数,你到时候直接调用了 /** * 导出CSV * @param string $fileName文件名字 * ...

  7. excel 复制 格式不变_ 如何复制Excel表格保持格式及列宽不变

    excel 复制 格式不变_ 如何复制Excel表格保持格式及列宽不变 == excel 粘贴的时候,经常格式就乱了,我们想要保持原来的样式. 有的之后粘贴后,右下角有个 图标 可以选择 保留原格式. ...

  8. Table阿里云mysql_数据同步-从MySQL到Tablestore-阿里云开发者社区

    数据同步-从MySQL到Tablestore DataX是阿里集团广泛使用的离线数据导出工具, 本文将详细介绍如何从MySQL导出全量数据到Tablestore(OTS)中. 一.导出步骤 DataX ...

  9. excel怎么启用宏_EXCEL制作的小升初毕业生登记表,全自动填充,包括照片

    先看看打印效果,高大上吧,若喜欢往下看-- 把县局下发的毕业生登记表.xlsx存到硬盘的某个文件中,例如我保存在初招文件夹中,在这个文件夹内再新建一个文件夹,重命名为"照片".照片 ...

最新文章

  1. 用java实现给图片增加图片水印或者文字水印(也支持视频图像帧添加水印)
  2. 40 个 SpringBoot 常用注解
  3. 没有数学何来计算机:论计算机起源的数学思想
  4. centos安装mysql wsl_在 Windows Linux 子系统中安装 CentOS
  5. 对网页是否为当前展示标签页、是否最小化、以及是否后台运行进行监听
  6. 苹果iPad视觉设计分析
  7. ios mdm更新应用_因使用MDM下架的家长控制应用OurPact重返App Store
  8. fst java性能_高性能序列化框架FST
  9. python写入指定路径的文件_python 从shell读取指定文件以及写入指定文件
  10. 《受欢迎的奶牛》和强连通分支Tarjan算法
  11. TensorFlow by Google神经网络深度学习的 Hello World Machine Learning Foundations: Ep #1 - What is ML?
  12. 快递公司type字典
  13. 搜狗输入法 linux 源码,1.下载搜狗输入法for linux源码包:
  14. 彩球滑梯java_玩过这些手机游戏的人都老了 那些曾经风靡一时的手机游戏大盘点(二)...
  15. Angular快速上手
  16. shields 徽标_纽约公共图书馆的新徽标
  17. office2007在ppt中插入文件对象(可以单击打开)
  18. Application.DoEvents();
  19. 转Draren总结的ollydbg v1.09d 中文版使用说明
  20. SLM328美格4G模组SDK开发笔记

热门文章

  1. WEB网站常见受攻击方式及解决办法
  2. 【微信小程序】计算器案例
  3. html隐藏显示文字代码,以下代码实现一键隐显示文字、隐藏提示/ 显示提示、隐藏文字 应该怎么写?...
  4. 【杂谈】关于2022年个人随笔
  5. js逆向 万博体育登录
  6. [Win32驱动10] 派遣函数与读写方式
  7. 入坑大法_input不可以前端编辑但是可以后台传值
  8. 小米游戏本8代 风扇噪音大解决办法
  9. C/C++编程学习 - 第2周 ⑤ 等差数列末项计算
  10. html数字跳动加载,【AE】加载动画和数字跳动